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
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
704dda5
Add ibc-callbacks contract
chipshort Feb 9, 2024
83e08ba
Fix gas limit type
chipshort Feb 9, 2024
e56e52c
Add callback entrypoint to cosmwasm-std
chipshort Feb 14, 2024
4ad16bb
Fix imports
chipshort Feb 14, 2024
578e633
Fix doctest
chipshort Feb 15, 2024
bc0b4dc
Add ibc_callbacks wasm to testdata
chipshort Feb 16, 2024
ea64ce4
Add callback entrypoint function to vm
chipshort Feb 16, 2024
a018d7e
Add source callback test
chipshort Feb 19, 2024
62a0884
Fix import
chipshort Feb 19, 2024
387812e
Omit src_callback and dst_callback of None
chipshort Feb 21, 2024
24f90b5
Update ibc-callbacks schema and add to circleci
chipshort Feb 22, 2024
7070a1a
Remove redundant clone
chipshort Feb 22, 2024
37ecc15
Add integration test stub
chipshort Feb 23, 2024
ebd684b
Add ibc destination chain callback
chipshort Apr 2, 2024
1039bda
Update ibc-callbacks lock file
chipshort Apr 2, 2024
d131c1c
Fix circleci contract_ibc_callbacks
chipshort Apr 2, 2024
eee39cb
Fix clippy lints
chipshort Apr 4, 2024
efa7d62
Update ibc-callbacks schemas
chipshort Apr 4, 2024
a052b4e
Update ibc-callbacks
chipshort Apr 4, 2024
ccd4bb8
Fix destination callback
chipshort Apr 5, 2024
4dc36f2
Update schemas
chipshort Apr 5, 2024
6cbe854
Make callback type configurable for ibc-callbacks contract
chipshort Apr 8, 2024
3942f43
Fix IbcCallbackData destination field name
chipshort Apr 8, 2024
f703a74
Apply review feedback
chipshort Apr 16, 2024
56a8fba
Update ibc-callbacks lockfile
chipshort Apr 16, 2024
e6471d8
Fix destination chain types
chipshort Apr 16, 2024
366e87f
Fix link
chipshort Apr 16, 2024
6ce3476
Update ibc-callbacks contract
chipshort Apr 16, 2024
79598a9
Simplify doc comment
chipshort Apr 18, 2024
f085538
Correct docs
chipshort Apr 18, 2024
2f619f9
Rename IbcCallbackData to IbcCallbackRequest
chipshort Apr 18, 2024
ff80f94
Make source chain callbacks extendable
chipshort Apr 18, 2024
a37ab64
Adjust source chain callback type
chipshort Apr 19, 2024
57d5174
Fix doc links
chipshort Apr 29, 2024
0abe2a4
Rename ibc callbacks entrypoints and types
chipshort May 10, 2024
c8216e7
Reduce nesting
chipshort May 10, 2024
9f049b2
Remove IbcFullAcknowledgement
chipshort May 10, 2024
64fa6c3
Use enum for ibc-callbacks ExecuteMsg
chipshort May 10, 2024
ee75e95
Update packages/vm/README.md
chipshort May 10, 2024
2426bb9
Update ibc_callbacks.wasm for tests
chipshort May 10, 2024
abf5c76
Add changelog entries
chipshort May 21, 2024
31d8cf3
Improve docs
chipshort May 21, 2024
4423fdc
Update schemas
chipshort May 21, 2024
9a3573c
Fix ibc-callbacks lock file
chipshort May 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
31 changes: 31 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ workflows:
- contract_empty
# - contract_floaty # This contract needs nightly Rust to compile
- contract_hackatom
- contract_ibc_callbacks
- contract_ibc_reflect
- contract_ibc_reflect_send
- contract_queue
Expand Down Expand Up @@ -653,6 +654,36 @@ jobs:
- target/wasm32-unknown-unknown/release/deps
key: cargocache-v2-contract_hackatom-rust:1.73-{{ checksum "Cargo.lock" }}

contract_ibc_callbacks:
docker:
- image: rust:1.73
environment:
RUST_BACKTRACE: 1
working_directory: ~/cosmwasm/contracts/ibc-callbacks
steps:
- checkout:
path: ~/cosmwasm
- run:
name: Version information
command: rustc --version; cargo --version; rustup --version
- restore_cache:
keys:
- cargocache-v2-contract_ibc_callbacks-rust:1.73-{{ checksum "Cargo.lock" }}
# TODO: Enable this once 2.1 has been released to crates.io
- check_contract:
min_version: "2.1"
skip_cosmwasm_check: true
- save_cache:
paths:
- /usr/local/cargo/registry
- target/debug/.fingerprint
- target/debug/build
- target/debug/deps
- target/wasm32-unknown-unknown/release/.fingerprint
- target/wasm32-unknown-unknown/release/build
- target/wasm32-unknown-unknown/release/deps
key: cargocache-v2-contract_ibc_callbacks-rust:1.73-{{ checksum "Cargo.lock" }}

contract_ibc_reflect:
docker:
- image: rust:1.73
Expand Down
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,13 @@ and this project adheres to
`bls12_381_pairing_equality`, `bls12_381_hash_to_g1`, and
`bls12_381_hash_to_g2` to enable BLS12-381 curve operations, such as verifying
pairing equalities ([#2106])
- cosmwasm-std: Add IBC Callbacks support, including two new entrypoints
`ibc_source_callback` and `ibc_destination_callback`, as well as the
`IbcCallbackRequest` type. ([#2025])
- cosmwasm-vm: Add support for the two new IBC Callbacks entrypoints. ([#2025])

[#1983]: https://github.com/CosmWasm/cosmwasm/pull/1983
[#2025]: https://github.com/CosmWasm/cosmwasm/pull/2025
[#2057]: https://github.com/CosmWasm/cosmwasm/pull/2057
[#2058]: https://github.com/CosmWasm/cosmwasm/pull/2058
[#2068]: https://github.com/CosmWasm/cosmwasm/pull/2068
Expand Down
6 changes: 6 additions & 0 deletions contracts/ibc-callbacks/.cargo/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[alias]
wasm = "build --release --lib --target wasm32-unknown-unknown"
wasm-debug = "build --lib --target wasm32-unknown-unknown"
unit-test = "test --lib"
integration-test = "test --test integration"
schema = "run --bin schema"