Skip to content

Commit

Permalink
The v0.2.2 release (#24)
Browse files Browse the repository at this point in the history
* feat: Add Mock Data Feeds contracts

* feat: Add MockOffchainAggregator contract that expose minAnswer and maxAnswer functions. Add functionality to MockV3Aggregator to change underlying aggregator

* chore: Forge install @chainlink/[email protected]

* feat: Add mock data feeds smoke test

* chore: List upcoming release in Changelog

* feat: Add unit tests for mock data feeds contracts

* feat: Add smoke test for mock data feeds using Hardhat

* feat: Add forking test example and prepare for beta release

* Support for CCIP v1.5 and preparing for 0.2.2-beta release (#19)

* feat: Add new changes to support CCIP v1.5 version

* forge: Update ccip

* chore: Add CCIP v1.5 config details to Register for all available testnet lanes. Prepare for 0.2.2-beta.0 release (#21)

* fix: Use the latest version of EVM2EVMOffRamp contract in the switchChainAndRouteMessage function of CCIPLocalSimulatorFork (#23)

* chore: Prepare repo for the 0.2.2 release

- Bump @chainlink/contracts-ccip to v1.5.0
- Delete DOCUMENTATION.md and related assets, and point to official documentation at README
- Update CHANGELOG
  • Loading branch information
andrejrakic authored Oct 15, 2024
1 parent d97d6e9 commit cd3bfb8
Show file tree
Hide file tree
Showing 35 changed files with 4,064 additions and 3,166 deletions.
194 changes: 187 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,174 @@
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
and this project adheres to
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.2.2] - 15 October 2024

### Dependencies

| Package | Version |
| ------------------------- | ------- |
| @chainlink/contracts-ccip | 1.5.0 |
| @chainlink/contracts | 1.1.1 |

### Services

- [x] Chainlink CCIP
- [x] Chainlink CCIP v1.5
- [x] Chainlink Data Feeds
- [ ] Chainlink Automation
- [ ] Chainlink VRF 2
- [ ] Chainlink VRF 2.5

### Added

- Support for Chainlink CCIP v1.5 (bumped `@chainlink/contracts-ccip` to
`1.5.0`)
- Added CCIP v1.5 config details to `Register.sol` for all available testnet
lanes
- Set EVM Version strictly to `paris` for all contracts
- Added `supportNewTokenViaOwner` and `supportNewTokenViaGetCCIPAdmin` functions
to `CCIPLocalSimulator.sol` instead of `supportNewToken` function
- Added `rmnProxyAddress`, `tokenAdminRegistryAddress` and
`registryModuleOwnerCustomAddress` to the `NetworkDetails` struct of the
`Register.sol` smart contract
- Added unit tests for new functions in the `CCIPLocalSimulator.sol` contract
- Added e2e test for new changes in the `CCIPLocalSimulatorFork.sol` contract.
There is a test with ERC-20 token with an `owner()` function implemented and
Burn & Mint Pool, and test with ERC-20 token with a `getCCIPAdmin()` function
implemented and Lock & Release Pool
- Genereted new docs artifacts

### Changed

- Bumped Solidity compiler version from 0.8.19 to 0.8.24
- The `getSupportedTokens()` function now only exists in the
`CCIPLocalSimulator.sol` contract, it has been removed from the CCIP's
`Router.sol` contract. Calling that function from the `Router.sol` contract in
the Forking mode will now revert
- Added `uint32[] memory tokenGasOverrides` as function parameter to the
`executeSingleMessage` function in the `CCIPLocalSimulatorFork.sol` contract
to reflect new changes in the CCIP's `EVM2EVMOffRamp.sol` smart contract
- Bumped pragma solidity version of `BasicTokenSender.sol`,
`CCIPReceiver_Unsafe.sol`, `ProgrammableTokenTransfers` and
`ProgrammableDefensiveTokenTransfers.sol` contracts from the `src/test` folder
from `0.8.19` to `0.8.24`

### Removed

- Removed `supportNewToken` function from `CCIPLocalSimulator.sol`
- Removed `CCIPLocalSimulatorV0.sol` and `MockEvm2EvmOffRamp.sol` contracts as
they have not being used for a while
- Removed `DOCUMENTATION.md` file since the official documentation is now
available at https://docs.chain.link/chainlink-local
- Removed `remix-001.png` and `remix-002.png` images from the `assets` folder,
because they are no longer needed

## [0.2.2-beta.1] - 10 October 2024

### Dependencies

| Package | Version |
| ------------------------- | ------------ |
| @chainlink/contracts-ccip | 1.5.0-beta.1 |
| @chainlink/contracts | 1.1.1 |

### Services

- [x] Chainlink CCIP
- [x] Chainlink CCIP v1.5
- [x] Chainlink Data Feeds
- [ ] Chainlink Automation
- [ ] Chainlink VRF 2
- [ ] Chainlink VRF 2.5

### Changed

- Bumped the version of `@chainlink/contracts-ccip` NPM package to
`1.5.0-beta.1` to test that release
- Fixed the bug in the `CCIPLocalSimulatorFork.sol` where the
`switchChainAndRouteMessage` function was used the outdated EVM2EVMOffRamp
contract
- Genereted new docs artifacts

## [0.2.2-beta.0] - 04 October 2024

### Dependencies

| Package | Version |
| ------------------------- | ------------ |
| @chainlink/contracts-ccip | 1.5.0-beta.0 |
| @chainlink/contracts | 1.1.1 |

### Services

- [x] Chainlink CCIP
- [x] Chainlink CCIP v1.5
- [x] Chainlink Data Feeds
- [ ] Chainlink Automation
- [ ] Chainlink VRF 2
- [ ] Chainlink VRF 2.5

### Added

- Added CCIP v1.5 config details to `Register.sol` for all available testnet
lanes

## [0.2.2-beta] - 12 September 2024

### Dependencies

| Package | Version |
| ------------------------- | ------------ |
| @chainlink/contracts-ccip | 1.5.0-beta.0 |
| @chainlink/contracts | 1.1.1 |

### Services

- [x] Chainlink CCIP
- [x] Chainlink CCIP v1.5
- [x] Chainlink Data Feeds
- [ ] Chainlink VRF 2
- [ ] Chainlink VRF 2.5

### Added

- Support for Chainlink CCIP v1.5 (bumped `@chainlink/contracts-ccip` to
`1.5.0-beta.0`)
- Set EVM Version strictly to `paris` for all contracts
- Added `supportNewTokenViaOwner` and `supportNewTokenViaGetCCIPAdmin` functions
to `CCIPLocalSimulator.sol` instead of `supportNewToken` function
- Added `rmnProxyAddress`, `tokenAdminRegistryAddress` and
`registryModuleOwnerCustomAddress` to the `NetworkDetails` struct of the
`Register.sol` smart contract
- Added unit tests for new functions in the `CCIPLocalSimulator.sol` contract
- Added e2e test for new changes in the `CCIPLocalSimulatorFork.sol` contract.
There is a test with ERC-20 token with an `owner()` function implemented and
Burn & Mint Pool, and test with ERC-20 token with a `getCCIPAdmin()` function
implemented and Lock & Release Pool

### Changed

- Bumped Solidity compiler version from 0.8.19 to 0.8.24
- The `getSupportedTokens()` function now only exists in the
`CCIPLocalSimulator.sol` contract, it has been removed from the CCIP's
`Router.sol` contract. Calling that function from the `Router.sol` contract in
the Forking mode will now revert
- Added `uint32[] memory tokenGasOverrides` as function parameter to the
`executeSingleMessage` function in the `CCIPLocalSimulatorFork.sol` contract
to reflect new changes in the CCIP's `EVM2EVMOffRamp.sol` smart contract
- Bumped pragma solidity version of `BasicTokenSender.sol`,
`CCIPReceiver_Unsafe.sol`, `ProgrammableTokenTransfers` and
`ProgrammableDefensiveTokenTransfers.sol` contracts from the `src/test` folder
from `0.8.19` to `0.8.24`

### Removed

- Removed `supportNewToken` function from `CCIPLocalSimulator.sol`
- Removed `CCIPLocalSimulatorV0.sol` and `MockEvm2EvmOffRamp.sol` contracts as
they have not being used for a while

## [0.2.1] - 5 July 2024

Expand All @@ -23,7 +190,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added

- Support for Chainlink Data Feeds by adding `MockV3Aggregator.sol` and `MockOffchainAggregator.sol` mock contracts
- Support for Chainlink Data Feeds by adding `MockV3Aggregator.sol` and
`MockOffchainAggregator.sol` mock contracts
- Showcase tests for testing in a forking actual networks environment

## [0.2.1-beta] - 26 June 2024
Expand All @@ -44,9 +212,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Fixed

- Bug in propose & confirm aggregator flow that could lead to aggregator being set to `address(0)`
- The `maxAnswer` variable in the `MockOffchainAggregator.sol` contract was set to an incorrect value
- Bug in the `MockOffchainAggregator.sol` contract where the `minAnswer` could've been set to the value greater than `maxAnswer`
- Bug in propose & confirm aggregator flow that could lead to aggregator being
set to `address(0)`
- The `maxAnswer` variable in the `MockOffchainAggregator.sol` contract was set
to an incorrect value
- Bug in the `MockOffchainAggregator.sol` contract where the `minAnswer`
could've been set to the value greater than `maxAnswer`

## [0.2.0-beta] - 24 June 2024

Expand Down Expand Up @@ -88,6 +259,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Initial release of the project

[0.1.0]: https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.1.0
[0.2.0-beta]: https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.0-beta
[0.2.1-beta]: https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.1-beta
[0.2.0-beta]:
https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.0-beta
[0.2.1-beta]:
https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.1-beta
[0.2.1]: https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.1
[0.2.2-beta]:
https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.2-beta
[0.2.2-beta.0]:
https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.2-beta.0
[0.2.2-beta.1]:
https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.2-beta.1
[0.2.2]: https://github.com/smartcontractkit/chainlink-local/releases/tag/v0.2.2
Loading

0 comments on commit cd3bfb8

Please sign in to comment.