Skip to content

Commit 4e4f1cb

Browse files
khadniaelmanaa
andauthored
linkcheck script fix (#2196)
* 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>
1 parent 14bbcb5 commit 4e4f1cb

File tree

12 files changed

+137
-49
lines changed

12 files changed

+137
-49
lines changed

.github/workflows/test.yml

Lines changed: 76 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,89 @@ name: Test
22
on: [push, pull_request]
33

44
jobs:
5-
test:
6-
name: Test
5+
# Job 1: Check Solidity Compilation and Solhint
6+
solidity:
77
runs-on: ubuntu-latest
8-
defaults:
9-
run:
10-
working-directory: ./
118
steps:
129
- name: Checkout Repo
13-
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
10+
uses: actions/checkout@v4
11+
12+
- name: Cache NPM dependencies
13+
uses: actions/cache@v3
14+
with:
15+
path: ~/.npm
16+
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
17+
restore-keys: |
18+
${{ runner.os }}-node-
19+
1420
- name: Install Dependencies
15-
run: npm i
21+
run: npm ci
22+
1623
- name: Check Solidity Compilation
1724
run: npm run sol:compile
25+
1826
- name: Check Solidity Solhint
1927
run: npm run lint-solc
20-
- name: Check Eslint
28+
29+
# Job 2: Check ESLint
30+
eslint:
31+
runs-on: ubuntu-latest
32+
steps:
33+
- name: Checkout Repo
34+
uses: actions/checkout@v4
35+
36+
- name: Cache NPM dependencies
37+
uses: actions/cache@v3
38+
with:
39+
path: ~/.npm
40+
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
41+
restore-keys: |
42+
${{ runner.os }}-node-
43+
44+
- name: Install Dependencies
45+
run: npm ci
46+
47+
- name: Check ESLint
2148
run: npm run lint
22-
- name: Build
23-
run: npm run build
24-
# TODO: fix css files throwing 404 errors
25-
- name: Check internal links
49+
50+
# Job 3: Check Internal Links
51+
linkcheck-internal:
52+
runs-on: ubuntu-latest
53+
steps:
54+
- name: Checkout Repo
55+
uses: actions/checkout@v4
56+
57+
- name: Cache NPM dependencies
58+
uses: actions/cache@v3
59+
with:
60+
path: ~/.npm
61+
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
62+
restore-keys: |
63+
${{ runner.os }}-node-
64+
65+
- name: Install Dependencies
66+
run: npm ci
67+
68+
- name: Check Internal Links
2669
run: npm run linkcheck-internal
27-
- name: Check types
28-
run: npm run typecheck
70+
71+
# Job 4: Check Types
72+
typecheck:
73+
runs-on: ubuntu-latest
74+
steps:
75+
- name: Checkout Repo
76+
uses: actions/checkout@v4
77+
78+
- name: Cache NPM dependencies
79+
uses: actions/cache@v3
80+
with:
81+
path: ~/.npm
82+
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
83+
restore-keys: |
84+
${{ runner.os }}-node-
85+
86+
- name: Install Dependencies
87+
run: npm ci
88+
89+
- name: Check Types
90+
run: npm run typecheck

src/components/QuickLinks/data/productChainLinks.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,12 +101,12 @@ export const productChainLinks: ProductChainLinks = {
101101
logo: automationLogo,
102102
chains: {
103103
arbitrum: "/chainlink-automation/overview/supported-networks#arbitrum",
104-
avalanche: "/chainlink-automation/overview/supported-networks#avalanche-mainnet",
104+
avalanche: "/chainlink-automation/overview/supported-networks#avalanche",
105105
base: "/chainlink-automation/overview/supported-networks#base",
106106
"bnb-chain": "/chainlink-automation/overview/supported-networks#bnb-chain",
107107
ethereum: "/chainlink-automation/overview/supported-networks#ethereum",
108108
fantom: "/chainlink-automation/overview/supported-networks#fantom",
109-
"gnosis-chain": "/chainlink-automation/overview/supported-networks#gnosis-chain-xdai",
109+
"gnosis-chain": "/chainlink-automation/overview/supported-networks#gnosis",
110110
optimism: "/chainlink-automation/overview/supported-networks#optimism",
111111
polygon: "/chainlink-automation/overview/supported-networks#polygon",
112112
},

src/content/ccip/api-reference/v1.5.1/client.mdx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,9 @@ struct EVM2AnyMessage {
7979
| feeToken | address | Address of feeToken. address(0) means you will send msg.value. |
8080
| extraArgs | bytes | Populate this with \_argsToBytes(EVMExtraArgsV2). |
8181

82-
### EVMExtraArgsV1
82+
### EVMExtraArgs
83+
84+
#### EVMExtraArgsV1
8385

8486
```solidity
8587
bytes4 public constant EVM_EXTRA_ARGS_V1_TAG = 0x97a657c9;
@@ -89,7 +91,7 @@ struct EVMExtraArgsV1 {
8991
}
9092
```
9193

92-
### EVMExtraArgsV2
94+
#### EVMExtraArgsV2
9395

9496
```solidity
9597
bytes4 public constant EVM_EXTRA_ARGS_V2_TAG = 0x181dcf10;

src/content/ccip/architecture.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ Chainlink CCIP token transfers benefit from rate limits for additional security.
181181

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

184-
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.
184+
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.
185185

186186
### Token pool rate limit
187187

src/content/ccip/concepts/cross-chain-tokens.mdx

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,7 @@ The **Token Pool contract** is responsible for executing the cross-chain token t
450450
- **BurnMintTokenPool**: Handles the burning, or minting of tokens depending whether it is the source or destination blockchain.
451451
- **LockReleaseTokenPool**: Handles the locking or releasing of tokens depending on whether it is the source or destination blockchain.
452452

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

455455
### Registration
456456

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

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

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

0 commit comments

Comments
 (0)