Skip to content

Commit

Permalink
linkcheck script fix (#2196)
Browse files Browse the repository at this point in the history
* test

* link fix

* exclude ccip directory from internal link checking

* fix internal links

* use dev server

* parallel jobs

* Trigger Vercel deployment

* update urls

* fix ignored files

---------

Co-authored-by: Amine E. <aelmanaa@users.noreply.github.com>
Co-authored-by: aelmanaa <aelmanaa@gmail.com>
  • Loading branch information
3 people authored Dec 10, 2024
1 parent 14bbcb5 commit 4e4f1cb
Show file tree
Hide file tree
Showing 12 changed files with 137 additions and 49 deletions.
90 changes: 76 additions & 14 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,89 @@ name: Test
on: [push, pull_request]

jobs:
test:
name: Test
# Job 1: Check Solidity Compilation and Solhint
solidity:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./
steps:
- name: Checkout Repo
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
uses: actions/checkout@v4

- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm i
run: npm ci

- name: Check Solidity Compilation
run: npm run sol:compile

- name: Check Solidity Solhint
run: npm run lint-solc
- name: Check Eslint

# Job 2: Check ESLint
eslint:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4

- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm ci

- name: Check ESLint
run: npm run lint
- name: Build
run: npm run build
# TODO: fix css files throwing 404 errors
- name: Check internal links

# Job 3: Check Internal Links
linkcheck-internal:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4

- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm ci

- name: Check Internal Links
run: npm run linkcheck-internal
- name: Check types
run: npm run typecheck

# Job 4: Check Types
typecheck:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4

- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm ci

- name: Check Types
run: npm run typecheck
4 changes: 2 additions & 2 deletions src/components/QuickLinks/data/productChainLinks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -101,12 +101,12 @@ export const productChainLinks: ProductChainLinks = {
logo: automationLogo,
chains: {
arbitrum: "/chainlink-automation/overview/supported-networks#arbitrum",
avalanche: "/chainlink-automation/overview/supported-networks#avalanche-mainnet",
avalanche: "/chainlink-automation/overview/supported-networks#avalanche",
base: "/chainlink-automation/overview/supported-networks#base",
"bnb-chain": "/chainlink-automation/overview/supported-networks#bnb-chain",
ethereum: "/chainlink-automation/overview/supported-networks#ethereum",
fantom: "/chainlink-automation/overview/supported-networks#fantom",
"gnosis-chain": "/chainlink-automation/overview/supported-networks#gnosis-chain-xdai",
"gnosis-chain": "/chainlink-automation/overview/supported-networks#gnosis",
optimism: "/chainlink-automation/overview/supported-networks#optimism",
polygon: "/chainlink-automation/overview/supported-networks#polygon",
},
Expand Down
6 changes: 4 additions & 2 deletions src/content/ccip/api-reference/v1.5.1/client.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,9 @@ struct EVM2AnyMessage {
| feeToken | address | Address of feeToken. address(0) means you will send msg.value. |
| extraArgs | bytes | Populate this with \_argsToBytes(EVMExtraArgsV2). |

### EVMExtraArgsV1
### EVMExtraArgs

#### EVMExtraArgsV1

```solidity
bytes4 public constant EVM_EXTRA_ARGS_V1_TAG = 0x97a657c9;
Expand All @@ -89,7 +91,7 @@ struct EVMExtraArgsV1 {
}
```

### EVMExtraArgsV2
#### EVMExtraArgsV2

```solidity
bytes4 public constant EVM_EXTRA_ARGS_V2_TAG = 0x181dcf10;
Expand Down
2 changes: 1 addition & 1 deletion src/content/ccip/architecture.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ Chainlink CCIP token transfers benefit from rate limits for additional security.

You can find the complete list of lanes and their rate limits on the [CCIP Directory](/ccip/directory) page.

The rate limits are enforced at both the source and destination blockchains for maximum security. If these rate limits are reached, descriptive errors with detailed information are generated and returned to the sender. This enables CCIP users to gracefully handle these errors within their dApps to preserve the end-user experience. A comprehensive list of errors and their descriptions is available on the [errors API reference](/ccip/api-reference/v1.5.1/errors#ratelimiter) page.
The rate limits are enforced at both the source and destination blockchains for maximum security. If these rate limits are reached, descriptive errors with detailed information are generated and returned to the sender. This enables CCIP users to gracefully handle these errors within their dApps to preserve the end-user experience. A comprehensive list of errors and their descriptions is available on the [errors API reference](/ccip/api-reference/v1.5.1/errors#rate-limiter-errors) page.

### Token pool rate limit

Expand Down
14 changes: 8 additions & 6 deletions src/content/ccip/concepts/cross-chain-tokens.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,7 @@ The **Token Pool contract** is responsible for executing the cross-chain token t
- **BurnMintTokenPool**: Handles the burning, or minting of tokens depending whether it is the source or destination blockchain.
- **LockReleaseTokenPool**: Handles the locking or releasing of tokens depending on whether it is the source or destination blockchain.

For more information on the token pool contracts and their functionalities, refer to the [Requirement for Token Pools](#requirement-for-token-pools) section.
For more information on the token pool contracts and their functionalities, refer to the [Requirement for Token Pools](#requirements-for-token-pools) section.

### Registration

Expand Down Expand Up @@ -548,13 +548,15 @@ The configuration of token pools includes adding new blockchains, setting remote
- **Usage**:
- To add a new blockchain, the pool owner provides the remote chain selector, pool address, token address, and rate limiter configurations.
- To remove a blockchain, the `allowed` flag is set to `false`, and the chain is removed from the list of supported chains.
1. [`setRemotePool`](/ccip/api-reference/v1.5.1/token-pool#setremotepool):
1. [`addRemotePool`](/ccip/api-reference/v1.5.1/token-pool#addremotepool):

- **Purpose**: Set the remote pool's address to link the current token pool to a corresponding pool on a remote blockchain.
- **Purpose**: Adds a new remote pool address for a specific blockchain, enabling support for multiple pools per chain.
- **Details**:
- This function is used to establish the connection between token pools on different blockchains.
- It validates the provided chain selector and updates the remote pool address for the selected chain.
- **Usage**: This function sets or updates the remote pool address for a specific blockchain.
- Allows adding multiple pools for a single chain selector, which is crucial during pool upgrades
- Maintains support for in-flight messages from existing pools while adding new ones
- Validates chain selector support and prevents duplicate pool additions
- Each pool address is hashed and stored for efficient lookup
- **Usage**: This function is particularly useful during pool upgrades, allowing seamless transitions between pool versions while maintaining transaction support.

1. [`setChainRateLimiterConfig`](/ccip/api-reference/v1.5.1/token-pool#setchainratelimiterconfig):

Expand Down
Loading

0 comments on commit 4e4f1cb

Please sign in to comment.