From edb9d7c095fd1c8c9837ef53d67ce1e2d9c155f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Laferri=C3=A8re?= Date: Wed, 14 Dec 2022 14:09:14 -0500 Subject: [PATCH] Release v0.25.0 (#300) * unclog release * bump version * changelog enhancement -> improvement --- .../12-misbehaviour-handling.md | 0 .../182-ics20-channel-reader-keeper.md | 0 .../240-validation-execution-contexts.md | 0 .../242-change-return-value.md | 0 .../245-rename-ics-context.md | 0 .../251-validation-execution-ics3.md | 0 .../breaking-changes/281-misbehaviour.md | 0 .../breaking-changes/294-tm-update-v0.28.0.md | 0 .../bug-fixes/174-fix-conn-open-cpty.md | 0 .../274-fix-conn-open-ack-conn-id.md | 0 .../164-refactor-error-system.md | 0 ...8-remove-connectionmsg-variant-box-wrap.md | 0 .../improvements/277-code-coverage.md | 0 .changelog/v0.25.0/summary.md | 5 +++ CHANGELOG.md | 45 +++++++++++++++++++ crates/ibc/Cargo.toml | 2 +- crates/ibc/src/lib.rs | 2 +- 17 files changed, 52 insertions(+), 2 deletions(-) rename .changelog/{unreleased => v0.25.0}/breaking-changes/12-misbehaviour-handling.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/182-ics20-channel-reader-keeper.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/240-validation-execution-contexts.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/242-change-return-value.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/245-rename-ics-context.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/251-validation-execution-ics3.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/281-misbehaviour.md (100%) rename .changelog/{unreleased => v0.25.0}/breaking-changes/294-tm-update-v0.28.0.md (100%) rename .changelog/{unreleased => v0.25.0}/bug-fixes/174-fix-conn-open-cpty.md (100%) rename .changelog/{unreleased => v0.25.0}/bug-fixes/274-fix-conn-open-ack-conn-id.md (100%) rename .changelog/{unreleased/enhancement => v0.25.0/improvements}/164-refactor-error-system.md (100%) rename .changelog/{unreleased/enhancement => v0.25.0/improvements}/258-remove-connectionmsg-variant-box-wrap.md (100%) rename .changelog/{unreleased => v0.25.0}/improvements/277-code-coverage.md (100%) create mode 100644 .changelog/v0.25.0/summary.md diff --git a/.changelog/unreleased/breaking-changes/12-misbehaviour-handling.md b/.changelog/v0.25.0/breaking-changes/12-misbehaviour-handling.md similarity index 100% rename from .changelog/unreleased/breaking-changes/12-misbehaviour-handling.md rename to .changelog/v0.25.0/breaking-changes/12-misbehaviour-handling.md diff --git a/.changelog/unreleased/breaking-changes/182-ics20-channel-reader-keeper.md b/.changelog/v0.25.0/breaking-changes/182-ics20-channel-reader-keeper.md similarity index 100% rename from .changelog/unreleased/breaking-changes/182-ics20-channel-reader-keeper.md rename to .changelog/v0.25.0/breaking-changes/182-ics20-channel-reader-keeper.md diff --git a/.changelog/unreleased/breaking-changes/240-validation-execution-contexts.md b/.changelog/v0.25.0/breaking-changes/240-validation-execution-contexts.md similarity index 100% rename from .changelog/unreleased/breaking-changes/240-validation-execution-contexts.md rename to .changelog/v0.25.0/breaking-changes/240-validation-execution-contexts.md diff --git a/.changelog/unreleased/breaking-changes/242-change-return-value.md b/.changelog/v0.25.0/breaking-changes/242-change-return-value.md similarity index 100% rename from .changelog/unreleased/breaking-changes/242-change-return-value.md rename to .changelog/v0.25.0/breaking-changes/242-change-return-value.md diff --git a/.changelog/unreleased/breaking-changes/245-rename-ics-context.md b/.changelog/v0.25.0/breaking-changes/245-rename-ics-context.md similarity index 100% rename from .changelog/unreleased/breaking-changes/245-rename-ics-context.md rename to .changelog/v0.25.0/breaking-changes/245-rename-ics-context.md diff --git a/.changelog/unreleased/breaking-changes/251-validation-execution-ics3.md b/.changelog/v0.25.0/breaking-changes/251-validation-execution-ics3.md similarity index 100% rename from .changelog/unreleased/breaking-changes/251-validation-execution-ics3.md rename to .changelog/v0.25.0/breaking-changes/251-validation-execution-ics3.md diff --git a/.changelog/unreleased/breaking-changes/281-misbehaviour.md b/.changelog/v0.25.0/breaking-changes/281-misbehaviour.md similarity index 100% rename from .changelog/unreleased/breaking-changes/281-misbehaviour.md rename to .changelog/v0.25.0/breaking-changes/281-misbehaviour.md diff --git a/.changelog/unreleased/breaking-changes/294-tm-update-v0.28.0.md b/.changelog/v0.25.0/breaking-changes/294-tm-update-v0.28.0.md similarity index 100% rename from .changelog/unreleased/breaking-changes/294-tm-update-v0.28.0.md rename to .changelog/v0.25.0/breaking-changes/294-tm-update-v0.28.0.md diff --git a/.changelog/unreleased/bug-fixes/174-fix-conn-open-cpty.md b/.changelog/v0.25.0/bug-fixes/174-fix-conn-open-cpty.md similarity index 100% rename from .changelog/unreleased/bug-fixes/174-fix-conn-open-cpty.md rename to .changelog/v0.25.0/bug-fixes/174-fix-conn-open-cpty.md diff --git a/.changelog/unreleased/bug-fixes/274-fix-conn-open-ack-conn-id.md b/.changelog/v0.25.0/bug-fixes/274-fix-conn-open-ack-conn-id.md similarity index 100% rename from .changelog/unreleased/bug-fixes/274-fix-conn-open-ack-conn-id.md rename to .changelog/v0.25.0/bug-fixes/274-fix-conn-open-ack-conn-id.md diff --git a/.changelog/unreleased/enhancement/164-refactor-error-system.md b/.changelog/v0.25.0/improvements/164-refactor-error-system.md similarity index 100% rename from .changelog/unreleased/enhancement/164-refactor-error-system.md rename to .changelog/v0.25.0/improvements/164-refactor-error-system.md diff --git a/.changelog/unreleased/enhancement/258-remove-connectionmsg-variant-box-wrap.md b/.changelog/v0.25.0/improvements/258-remove-connectionmsg-variant-box-wrap.md similarity index 100% rename from .changelog/unreleased/enhancement/258-remove-connectionmsg-variant-box-wrap.md rename to .changelog/v0.25.0/improvements/258-remove-connectionmsg-variant-box-wrap.md diff --git a/.changelog/unreleased/improvements/277-code-coverage.md b/.changelog/v0.25.0/improvements/277-code-coverage.md similarity index 100% rename from .changelog/unreleased/improvements/277-code-coverage.md rename to .changelog/v0.25.0/improvements/277-code-coverage.md diff --git a/.changelog/v0.25.0/summary.md b/.changelog/v0.25.0/summary.md new file mode 100644 index 000000000..afadc8c1d --- /dev/null +++ b/.changelog/v0.25.0/summary.md @@ -0,0 +1,5 @@ +This release updates the tendermint-rs dependency to v0.28.0 which includes important security improvements. Many other improvements have been made as well, including misbehaviour handling. + +A lot of work has also been put towards implementing ADR 5, which is currently unfinished and has been put behind the feature flag `val_exec_ctx`. + +The only consensus-breaking changes are the ones related to the fact that we now properly handle misbehaviour messages. diff --git a/CHANGELOG.md b/CHANGELOG.md index 987602025..7f66a5113 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,50 @@ # CHANGELOG +## v0.25.0 + +*December 14, 2022* + +This release updates the tendermint-rs dependency to v0.28.0 which includes important security improvements. Many other improvements have been made as well, including misbehaviour handling. + +A lot of work has also been put towards implementing ADR 5, which is currently unfinished and has been put behind the feature flag `val_exec_ctx`. + +The only consensus-breaking changes are the ones related to the fact that we now properly handle misbehaviour messages. + +### BREAKING CHANGES + +- Implement the IBC misbehaviour handler and misbehaviour handling logic for the Tendermint light client. + ([#12](https://github.com/cosmos/ibc-rs/issues/12)) +- `Ics20Context` no longer requires types implementing it to implement `ChannelReader` and `ChannelKeeper`, and instead depends on the `Ics20ChannelKeeper` + and `SendPacketReader` traits. Additionally, the `send_packet` handler now requires the calling context to implement `SendPacketReader` and returns + a `SendPacketResult`. + ([#182](https://github.com/cosmos/ibc-rs/issues/182)) +- Add `ValidationContext` and `ExecutionContext`, and implement for clients (ICS-2) + ([#240](https://github.com/cosmos/ibc-rs/issues/240)) +- Change `host_height`, `host_timestamp` return value to a `Result` in `ClientReader`, `ConnectionReader`, `ChannelReader` and `ValidationContext` + ([#242](https://github.com/cosmos/ibc-rs/issues/242)) +- Rename Ics* names to something more descriptive + ([#245](https://github.com/cosmos/ibc-rs/issues/245)) +- Implement `ValidationContext::validate` and `ExecutionContext::execute` for connections (ICS-3) + ([#251](https://github.com/cosmos/ibc-rs/issues/251)) +- Implement misbehaviour in `ExecutionContext` and `ValidationContext` + ([#281](https://github.com/cosmos/ibc-rs/issues/281)) +- Update `tendermint` dependencies to `v0.28.0`, which contain an important security fix. +([#294](https://github.com/cosmos/ibc-rs/issues/294)) + +### BUG FIXES + +- Set counterparty connection ID to None in `conn_open_init` ([#174](https://github.com/cosmos/ibc-rs/issues/174)) +- Verify the message's counterparty connection ID in `conn_open_ack` + instead of the store's ([#274](https://github.com/cosmos/ibc-rs/issues/274)) + +### IMPROVEMENTS + +- Remove `flex-error` and remove unused error variants([#164](https://github.com/cosmos/ibc-rs/issues/164)) +- ConnectionMsg::ConnectionOpen{Try, Ack} should not wrap a Box + ([#258](https://github.com/cosmos/ibc-rs/issues/258)) +- Track code coverage with `cargo-llvm-cov` + ([#277](https://github.com/cosmos/ibc-rs/issues/277)) + ## v0.24.0 *December 8, 2022* diff --git a/crates/ibc/Cargo.toml b/crates/ibc/Cargo.toml index 2f0a5420a..48ac91792 100644 --- a/crates/ibc/Cargo.toml +++ b/crates/ibc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ibc" -version = "0.24.0" +version = "0.25.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 1628021a1..1a9eb55b6 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.24.0")] +#![doc(html_root_url = "https://docs.rs/ibc/0.25.0")] //! This library implements the InterBlockchain Communication (IBC) protocol in Rust. IBC is //! a distributed protocol that enables communication between distinct sovereign blockchains.