Skip to content

Commit 58332d3

Browse files
aelmanaakhadni
andauthored
* rel2 update * rel2 update * rel2 update * fix * OoO * fix * nit * nit * update page * update page * update page * update page * update * update * update * update * update * update * update * Fund amounts & nit changes --------- Co-authored-by: Karim <98668332+khadni@users.noreply.github.com>
1 parent b6e1b93 commit 58332d3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+886
-549
lines changed

hardhat.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ const config: HardhatUserConfig = {
2121
{ version: "0.8.16" },
2222
{ version: "0.8.19" },
2323
{ version: "0.8.20" },
24+
{ version: "0.8.24" },
2425
],
2526
},
2627
}

package-lock.json

Lines changed: 54 additions & 27 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
"@astrojs/sitemap": "^3.1.5",
4040
"@chainlink/components": "^0.4.18",
4141
"@chainlink/contracts": "1.2.0",
42-
"@chainlink/contracts-ccip": "1.4.0",
42+
"@chainlink/contracts-ccip": "1.5.0-beta.0",
4343
"@chainlink/design-system": "^0.2.8",
4444
"@chainlink/local": "^0.2.1",
4545
"@chainlink/solana-sdk": "^0.2.2",

public/changelog.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,15 @@
11
[
2+
{
3+
"category": "release",
4+
"changes": [],
5+
"date": "2024-10-04",
6+
"description": "Chainlink CCIP 1.5 is now available on testnet, introducing several new features and enhancements.\n\n**Risk Management Network Coverage:**\nCertain CCIP integrations may not initially include the Risk Management Network (RMN). Blockchains can be integrated with CCIP in a phased approach, starting with the deployment of the Committing and Executing Decentralized Oracle Networks (DONs), followed by the addition of the Risk Management Network in a subsequent update. During a phased deployment, the relevant Commit Stores are configured in the Risk Management contract to always be considered blessed until the Risk Management Network has been deployed for that blockchain. Please refer to the [Supported Networks](/ccip/supported-networks) documentation to identify which integrations utilize a phased approach, and review the [CCIP Service Responsibility](/ccip/service-responsibility) for more information.\n\n**New Version of `EVMExtraArgs`:**\nChainlink CCIP 1.5 introduces a new version of `EVMExtraArgs`, allowing users to set the `allowOutOfOrderExecution` parameter. This feature enables developers to control the execution order of their messages on the destination blockchain. The `allowOutOfOrderExecution` parameter is part of [`EVMExtraArgsV2`](/ccip/api-reference/client#evmextraargsv2) and is available only on lanes where the **Out of Order Execution** property is set to **Optional** or **Required**. Please consult the [Supported Networks page](/ccip/supported-networks) to determine if your target lane supports this feature.",
7+
"relatedNetworks": [],
8+
"relatedTokens": [],
9+
"title": "Chainlink CCIP 1.5 - Testnet",
10+
"topic": "ccip",
11+
"urls": []
12+
},
213
{
314
"category": "integration",
415
"changes": [],

public/samples/CCIP/Acknowledger.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -122,7 +122,10 @@ contract Acknowledger is CCIPReceiver, OwnerIsCreator {
122122
tokenAmounts: new Client.EVMTokenAmount[](0), // Empty array aas no tokens are transferred
123123
extraArgs: Client._argsToBytes(
124124
// Additional arguments, setting gas limit
125-
Client.EVMExtraArgsV1({gasLimit: 200_000})
125+
Client.EVMExtraArgsV2({
126+
gasLimit: 200_000,
127+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
128+
})
126129
),
127130
// Set the feeToken to a feeTokenAddress, indicating specific asset will be used for fees
128131
feeToken: address(s_linkToken)

public/samples/CCIP/MessageTracker.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -258,7 +258,10 @@ contract MessageTracker is CCIPReceiver, OwnerIsCreator {
258258
tokenAmounts: new Client.EVMTokenAmount[](0), // Empty array as no tokens are transferred
259259
extraArgs: Client._argsToBytes(
260260
// Additional arguments, setting gas limit
261-
Client.EVMExtraArgsV1({gasLimit: 300_000})
261+
Client.EVMExtraArgsV2({
262+
gasLimit: 300_000,
263+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
264+
})
262265
),
263266
// Set the feeToken to a feeTokenAddress, indicating specific asset will be used for fees
264267
feeToken: _feeTokenAddress

public/samples/CCIP/Messenger.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -261,7 +261,10 @@ contract Messenger is CCIPReceiver, OwnerIsCreator {
261261
tokenAmounts: new Client.EVMTokenAmount[](0), // Empty array as no tokens are transferred
262262
extraArgs: Client._argsToBytes(
263263
// Additional arguments, setting gas limit
264-
Client.EVMExtraArgsV1({gasLimit: 200_000})
264+
Client.EVMExtraArgsV2({
265+
gasLimit: 200_000, // Gas limit for the callback on the destination chain
266+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
267+
})
265268
),
266269
// Set the feeToken to a feeTokenAddress, indicating specific asset will be used for fees
267270
feeToken: _feeTokenAddress

public/samples/CCIP/ProgrammableDefensiveTokenTransfers.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -494,7 +494,10 @@ contract ProgrammableDefensiveTokenTransfers is CCIPReceiver, OwnerIsCreator {
494494
tokenAmounts: tokenAmounts, // The amount and type of token being transferred
495495
extraArgs: Client._argsToBytes(
496496
// Additional arguments, setting gas limit
497-
Client.EVMExtraArgsV1({gasLimit: 400_000})
497+
Client.EVMExtraArgsV2({
498+
gasLimit: 400_000, // Gas limit for the callback on the destination chain
499+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
500+
})
498501
),
499502
// Set the feeToken to a feeTokenAddress, indicating specific asset will be used for fees
500503
feeToken: _feeTokenAddress

public/samples/CCIP/ProgrammableTokenTransfers.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -342,7 +342,10 @@ contract ProgrammableTokenTransfers is CCIPReceiver, OwnerIsCreator {
342342
tokenAmounts: tokenAmounts, // The amount and type of token being transferred
343343
extraArgs: Client._argsToBytes(
344344
// Additional arguments, setting gas limit
345-
Client.EVMExtraArgsV1({gasLimit: 200_000})
345+
Client.EVMExtraArgsV2({
346+
gasLimit: 200_000, // Gas limit for the callback on the destination chain
347+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
348+
})
346349
),
347350
// Set the feeToken to a feeTokenAddress, indicating specific asset will be used for fees
348351
feeToken: _feeTokenAddress

public/samples/CCIP/ProgrammableTokenTransfersLowGasLimit.sol

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// SPDX-License-Identifier: MIT
2-
pragma solidity 0.8.19;
2+
pragma solidity 0.8.24;
33

44
import {IRouterClient} from "@chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol";
55
import {OwnerIsCreator} from "@chainlink/contracts-ccip/src/v0.8/shared/access/OwnerIsCreator.sol";
@@ -157,7 +157,10 @@ contract ProgrammableTokenTransfersLowGasLimit is CCIPReceiver, OwnerIsCreator {
157157
tokenAmounts: tokenAmounts, // The amount and type of token being transferred
158158
extraArgs: Client._argsToBytes(
159159
// gasLimit set to 20_000 on purpose to force the execution to fail on the destination chain
160-
Client.EVMExtraArgsV1({gasLimit: 20_000})
160+
Client.EVMExtraArgsV2({
161+
gasLimit: 20_000, // Gas limit for the callback on the destination chain
162+
allowOutOfOrderExecution: true // Allows the message to be executed out of order relative to other messages from the same sender
163+
})
161164
),
162165
// Set the feeToken to a LINK token address
163166
feeToken: address(s_linkToken)

0 commit comments

Comments
 (0)