diff --git a/.changelog/unreleased/breaking-changes/145-compatible-connection-events.md b/.changelog/v0.22.0/breaking-changes/145-compatible-connection-events.md similarity index 100% rename from .changelog/unreleased/breaking-changes/145-compatible-connection-events.md rename to .changelog/v0.22.0/breaking-changes/145-compatible-connection-events.md diff --git a/.changelog/unreleased/breaking-changes/146-compatible-channel-events.md b/.changelog/v0.22.0/breaking-changes/146-compatible-channel-events.md similarity index 100% rename from .changelog/unreleased/breaking-changes/146-compatible-channel-events.md rename to .changelog/v0.22.0/breaking-changes/146-compatible-channel-events.md diff --git a/.changelog/unreleased/breaking-changes/156-connection-crossing-hellos b/.changelog/v0.22.0/breaking-changes/156-connection-crossing-hellos.md similarity index 100% rename from .changelog/unreleased/breaking-changes/156-connection-crossing-hellos rename to .changelog/v0.22.0/breaking-changes/156-connection-crossing-hellos.md diff --git a/.changelog/unreleased/breaking-changes/157-channel-crossing-hellos.md b/.changelog/v0.22.0/breaking-changes/157-channel-crossing-hellos.md similarity index 100% rename from .changelog/unreleased/breaking-changes/157-channel-crossing-hellos.md rename to .changelog/v0.22.0/breaking-changes/157-channel-crossing-hellos.md diff --git a/.changelog/unreleased/breaking-changes/162-validate-self-client.md b/.changelog/v0.22.0/breaking-changes/162-validate-self-client.md similarity index 100% rename from .changelog/unreleased/breaking-changes/162-validate-self-client.md rename to .changelog/v0.22.0/breaking-changes/162-validate-self-client.md diff --git a/.changelog/unreleased/breaking-changes/166-channel-proof-verification.md b/.changelog/v0.22.0/breaking-changes/166-channel-proof-verification.md similarity index 100% rename from .changelog/unreleased/breaking-changes/166-channel-proof-verification.md rename to .changelog/v0.22.0/breaking-changes/166-channel-proof-verification.md diff --git a/.changelog/unreleased/breaking-changes/206-change-clienttype-string.md b/.changelog/v0.22.0/breaking-changes/206-change-clienttype-string.md similarity index 100% rename from .changelog/unreleased/breaking-changes/206-change-clienttype-string.md rename to .changelog/v0.22.0/breaking-changes/206-change-clienttype-string.md diff --git a/.changelog/unreleased/bug-fixes/168-consensus-height.md b/.changelog/v0.22.0/bug-fixes/168-consensus-height.md similarity index 100% rename from .changelog/unreleased/bug-fixes/168-consensus-height.md rename to .changelog/v0.22.0/bug-fixes/168-consensus-height.md diff --git a/.changelog/unreleased/bug-fixes/211-allow-one-letter-chain-ids.md b/.changelog/v0.22.0/bug-fixes/211-allow-one-letter-chain-ids.md similarity index 100% rename from .changelog/unreleased/bug-fixes/211-allow-one-letter-chain-ids.md rename to .changelog/v0.22.0/bug-fixes/211-allow-one-letter-chain-ids.md diff --git a/.changelog/unreleased/bug-fixes/219-counterparty-unwrap.md b/.changelog/v0.22.0/bug-fixes/219-counterparty-unwrap.md similarity index 100% rename from .changelog/unreleased/bug-fixes/219-counterparty-unwrap.md rename to .changelog/v0.22.0/bug-fixes/219-counterparty-unwrap.md diff --git a/.changelog/unreleased/features/231-add-getter-function.md b/.changelog/v0.22.0/features/231-add-getter-function.md similarity index 100% rename from .changelog/unreleased/features/231-add-getter-function.md rename to .changelog/v0.22.0/features/231-add-getter-function.md diff --git a/.changelog/unreleased/improvements/165-refactor-connection-proofs b/.changelog/v0.22.0/improvements/165-refactor-connection-proofs similarity index 100% rename from .changelog/unreleased/improvements/165-refactor-connection-proofs rename to .changelog/v0.22.0/improvements/165-refactor-connection-proofs diff --git a/.changelog/v0.22.0/summary.md b/.changelog/v0.22.0/summary.md new file mode 100644 index 000000000..de369b2e0 --- /dev/null +++ b/.changelog/v0.22.0/summary.md @@ -0,0 +1 @@ +This release includes major improvements in making the library compatible with ibc-go v5.0.1. This includes making ibc events compatible and removing the crossing-hellos logic from the connection and channel handshakes. diff --git a/CHANGELOG.md b/CHANGELOG.md index 85311cd3b..0d53c701f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,46 @@ # CHANGELOG +## v0.22.0 + +*November 9, 2022* + +This release includes major improvements in making the library compatible with ibc-go v5.0.1. This includes making ibc events compatible and removing the crossing-hellos logic from the connection and channel handshakes. + +### BREAKING CHANGES + +- Make connection events compatible with ibc-go + ([#145](https://github.com/cosmos/ibc-rs/issues/145)) +- Makes channel/packet events compatible with ibc-go + ([#146](https://github.com/cosmos/ibc-rs/issues/146)) +- Remove crossing hellos logic from connection handshake. Breaking changes in + connection message types. + ([#156](https://github.com/cosmos/ibc-rs/issues/156)). +- Remove crossing hellos logic from channel handshake + ([#157](https://github.com/cosmos/ibc-rs/issues/157)) +- call `validate_self_client` in `conn_open_try` and `conn_open_ack`, + and provide a tendermint implementation for `validate_self_client` + ([#162](https://github.com/cosmos/ibc-rs/issues/162)) +- Refactor channel handlers. Proof calls were inlined, and our handshake + variable naming convention was applied + ([#166](https://github.com/cosmos/ibc-rs/issues/166)) +- Change `ClientType` to contain a `String` instead of `&'static str` + ([#206](https://github.com/cosmos/ibc-rs/issues/206)) + +### BUG FIXES + +- Connection consensus state proof verification now properly uses `consensus_height` + ([#168](https://github.com/cosmos/ibc-rs/issues/168)). +- Allow one-letter chain names in `ChainId::is_epoch_format` + ([#211](https://github.com/cosmos/ibc-rs/issues/211)) +- Don't panic on user input in channel proof verification + ([#219](https://github.com/cosmos/ibc-rs/issues/219)) + +### FEATURES + +- Add getter functions to SendPacket, ReceivePacket, WriteAcknowledgement, + AcknowledgePacket, TimeoutPacket to get the elements of the structure + ([#231](https://github.com/cosmos/ibc-rs/issues/231)) + ## v0.21.1 *October 27, 2022* diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d521035bb..0b84859ed 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -222,16 +222,18 @@ Our release process is as follows: 1. Running `unclog build -u` and copy pasting the output at the top of the `CHANGELOG.md` file, making sure to update the header with the new version. - 1. Running `unclog release --editor --version vX.Y.Z` to create a summary of all of the changes + 2. Running `unclog release --editor --version vX.Y.Z` to create a summary of all of the changes in this release. + 1. Your text editor will open. Write the release summary, and close the editor. + 2. Add this same summary to `CHANGELOG.md` as well. 3. Committing the updated `CHANGELOG.md` file and `.changelog` directory to the repo. 2. Push this to a branch `release/vX.Y.Z` according to the version number of the anticipated release (e.g. `release/v0.18.0`) and open a **draft PR**. 3. Bump all relevant versions in the codebase to the new version and push these changes to the release PR. This includes: - 1. All `Cargo.toml` files (making sure dependencies' versions are updated + 1. `crates/ibc/Cargo.toml` file (making sure dependencies' versions are updated too). - 2. All crates' `lib.rs` files documentation references' `html_root_url` + 2. `crates/ibc/lib.rs` file documentation references' `html_root_url` parameters must point to the new version. 4. In the `crates/ibc/` directory, run `cargo doc --all-features --open` locally to double-check that all the diff --git a/crates/ibc/Cargo.toml b/crates/ibc/Cargo.toml index b45fc0d39..9c3b19a54 100644 --- a/crates/ibc/Cargo.toml +++ b/crates/ibc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ibc" -version = "0.21.1" +version = "0.22.0" edition = "2021" license = "Apache-2.0" readme = "README.md" diff --git a/crates/ibc/src/lib.rs b/crates/ibc/src/lib.rs index 56c5ef398..49d4f014c 100644 --- a/crates/ibc/src/lib.rs +++ b/crates/ibc/src/lib.rs @@ -13,7 +13,7 @@ rust_2018_idioms )] #![forbid(unsafe_code)] -#![doc(html_root_url = "https://docs.rs/ibc/0.21.1")] +#![doc(html_root_url = "https://docs.rs/ibc/0.22.0")] //! This library implements the InterBlockchain Communication (IBC) protocol in Rust. IBC is //! a distributed protocol that enables communication between distinct sovereign blockchains.