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

IBC Callbacks #2025

Merged
merged 44 commits into from May 21, 2024
Merged

IBC Callbacks #2025

merged 44 commits into from May 21, 2024

Conversation

chipshort
Copy link
Collaborator

@chipshort chipshort commented Feb 9, 2024

closes #1938

Implements the following:

  • ibc-callbacks contract: a new contract that keeps track of the callbacks that were called and provides a query to get the data that was passed to the callbacks. This is used in wasmd for an e2e test.
  • 2 new entrypoints: ibc_source_chain_callback and ibc_destination_chain_callback, as well as the corresponding message types
  • IbcCallbackRequest type (and types it contains): Allows constructing the json format for the memo field with strong typing

@chipshort chipshort force-pushed the ibc-callbacks branch 2 times, most recently from 2aed858 to 3b18e9e Compare February 9, 2024 14:44
Copy link
Member

@webmaster128 webmaster128 left a comment

Choose a reason for hiding this comment

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

Cool stuff! Very incomplete but some first thoughts. Thanks for the nice documentation, very helpful.

contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
@chipshort chipshort force-pushed the ibc-callbacks branch 2 times, most recently from 83c2b6a to ee37d1e Compare February 21, 2024 15:29
@chipshort chipshort force-pushed the ibc-callbacks branch 6 times, most recently from 15eab52 to 5a7f6b6 Compare April 8, 2024 15:02
@chipshort chipshort changed the title [WIP] IBC Callbacks IBC Callbacks Apr 8, 2024
@chipshort chipshort marked this pull request as ready for review April 8, 2024 15:13
Copy link
Member

@aumetra aumetra left a comment

Choose a reason for hiding this comment

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

LGTM! (from my point of view with more limited understanding)

Copy link
Member

@webmaster128 webmaster128 left a comment

Choose a reason for hiding this comment

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

🙌 Great job, clean and straight forward

contracts/ibc-callbacks/README.md Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Show resolved Hide resolved
packages/vm/src/calls.rs Show resolved Hide resolved
@chipshort chipshort force-pushed the ibc-callbacks branch 3 times, most recently from 97ea02f to 35d1592 Compare April 16, 2024 12:30
Copy link
Contributor

@srdtrk srdtrk left a comment

Choose a reason for hiding this comment

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

Thank you for this amazing work. Left some of my thoughts. Always feel free to ping me.

packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Show resolved Hide resolved
packages/std/src/lib.rs Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
Copy link
Member

@webmaster128 webmaster128 left a comment

Choose a reason for hiding this comment

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

🥳🥳🥳

contracts/ibc-callbacks/src/msg.rs Outdated Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Show resolved Hide resolved
contracts/ibc-callbacks/src/contract.rs Outdated Show resolved Hide resolved
packages/std/src/exports.rs Outdated Show resolved Hide resolved
packages/std/src/exports.rs Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/ibc/callbacks.rs Outdated Show resolved Hide resolved
packages/std/src/lib.rs Show resolved Hide resolved
packages/vm/README.md Outdated Show resolved Hide resolved
packages/vm/src/calls.rs Outdated Show resolved Hide resolved
Copy link
Member

@webmaster128 webmaster128 left a comment

Choose a reason for hiding this comment

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

Looks very good. Just CHANGELOG entry and sync with main, then I think this is good to go

packages/std/src/exports.rs Show resolved Hide resolved
@chipshort chipshort merged commit fa20c53 into main May 21, 2024
30 of 31 checks passed
@chipshort chipshort deleted the ibc-callbacks branch May 21, 2024 16:38
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.

Implement IBC's ADR-8
4 participants