Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CCIP: Foundry example repo that shows how to transfer non ccip supported tokens using arbitry messaging #63

Merged
merged 1 commit into from
May 23, 2024

Conversation

aelmanaa
Copy link
Contributor

@aelmanaa aelmanaa commented May 23, 2024


Below is a summarization created by an LLM (gpt-4-turbo-2024-04-09). Be mindful of hallucinations and verify accuracy.

Why

The changes introduce a new submodule for token transfer using arbitrary messaging in the CCIP example repo, enhancing the project's capabilities to handle non-CCIP supported tokens across different blockchain networks. Additionally, the changes include necessary configurations and workflows to ensure the correct setup and testing environment for this new feature.

What

  • .gitmodules
    • Added submodules for forge-std, chainlink-local, and ccip in the ccip/token-transfer-using-arbitrary-messaging directory.
  • test.yml
    • Added a new GitHub Actions workflow for testing the project.
  • README.md
    • Updated documentation to explain the new token transfer method using arbitrary messaging.
  • foundry.toml
    • Configured Foundry settings including library paths and remappings for the new submodule.
  • lib/ccip
    • Added ccip library submodule.
  • lib/chainlink-local
    • Added chainlink-local library submodule.
  • lib/forge-std
    • Added forge-std library submodule.
  • lib/openzeppelin-contracts
    • Added openzeppelin-contracts library submodule.
  • BurnAndMint.s.sol, BurnAndRelease.s.sol, Deploy.s.sol, LockAndMint.s.sol
    • Added new scripts for deploying contracts and testing different token transfer scenarios.
  • addresses.json
    • Added a new JSON file to store contract addresses used in scripts.
  • Bridge.sol
    • Implemented a new bridge contract to handle cross-chain token transfers.
  • Configuration.sol
    • Implemented a new configuration contract to manage settings for cross-chain operations.
  • IBridge.sol, IBurnMintERC20.sol, IConfiguration.sol, ILockReleaseTokenPool.sol, IPool.sol
    • Added new interfaces to define standard functionalities for the contracts.
  • BurnMintTokenPool.sol, LockReleaseTokenPool.sol, Pool.sol
    • Added new contracts for managing token pools that support different cross-chain transfer methods.
  • Bridge.t.sol, BridgeWithSimulator.t.sol, BridgeWithSimulatorFork.t.sol, Configuration.t.sol
    • Added new test suites to cover the functionality of the bridge and configuration contracts.
  • ICustom.sol, MockBurnMintERC20.sol, MockERC20.sol
    • Added mock contracts and an interface for testing purposes.

@aelmanaa aelmanaa force-pushed the ccip/token-transfer-messaging branch from c9fbab0 to 57c143c Compare May 23, 2024 15:37
@aelmanaa aelmanaa closed this May 23, 2024
@aelmanaa aelmanaa reopened this May 23, 2024
@aelmanaa aelmanaa force-pushed the ccip/token-transfer-messaging branch from 57c143c to 8f4529e Compare May 23, 2024 16:21
@aelmanaa aelmanaa changed the title Example: token transfer using arbitrary messaging CCIP: Foundry example repo that shows how to transfer non ccip supported tokens using arbitry messaging May 23, 2024
@aelmanaa aelmanaa closed this May 23, 2024
@aelmanaa aelmanaa reopened this May 23, 2024
@aelmanaa aelmanaa requested a review from andrejrakic May 23, 2024 16:30
Copy link
Contributor

@andrejrakic andrejrakic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@aelmanaa aelmanaa merged commit 90360b2 into main May 23, 2024
1 check passed
@aelmanaa aelmanaa deleted the ccip/token-transfer-messaging branch May 23, 2024 16:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants