Skip to content

Commit

Permalink
Release Hermes v1.9.0 (informalsystems#4014)
Browse files Browse the repository at this point in the history
* Create v1.9.0 section in CHANGELOG.md

* create .changelog for v1.9.0

* Update versions in repository

* Fix typos

* Update Cargo.lock

* Fix test-stable

* Update msrv

* Update MSRV in README

* Update CHANGELOG.md

Co-authored-by: Romain Ruetschi <[email protected]>
Signed-off-by: Luca Joss <[email protected]>

* Reordered changelog sections to be Breaking Changes, Features, Improvements and then Bug Fixes

---------

Signed-off-by: Luca Joss <[email protected]>
Co-authored-by: Romain Ruetschi <[email protected]>
  • Loading branch information
ljoss17 and romac authored Jun 3, 2024
1 parent b448aa6 commit a026d66
Show file tree
Hide file tree
Showing 34 changed files with 293 additions and 197 deletions.
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
- Remove the `telemetry` and `rest-server` feature flags, ensuring Hermes is always built with telemetry and REST support.
Both servers can still be disabled in the configuration file, by setting `telemtry.enabled = false` and `rest.enabled = false`, respectively.
Both servers can still be disabled in the configuration file, by setting `telemetry.enabled = false` and `rest.enabled = false`, respectively.
([\#3878](https://github.com/informalsystems/hermes/pull/3878))
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
- Improve reliabily of event source in `pull` mode by proceeding to next block even if Hermes cannot parse the current block.
- Improve reliability of event source in `pull` mode by proceeding to next block even if Hermes cannot parse the current block.
Add new configuration option to `event_source` setting: `max_retries` defines how many times Hermes should attempt to pull a block over RPC.
```toml
event_source = { mode = 'pull', interval = '1s', max_retries = 4 }
Expand Down
11 changes: 11 additions & 0 deletions .changelog/v1.9.0/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
*May 30th, 2024*

This v1.9.0 release introduces new features and improvements to Hermes.

**Major Features**:

1. Channel Upgrade Compatibility: Hermes now supports channel upgrade events introduced in ibc-go v8, ensuring smoother transitions and enhanced functionality.

3. Dynamic Gas Fees Compatibility: Hermes is now compatible with Skip's feemarket for dynamic gas fees, in addition to Osmosis' implementation, providing more flexibility in gas fee management.

Additionally, this release includes various bug fixes enhancing the stability and performance of Hermes. These fixes address issues with channel and connection creation on unsupported ibc-go versions, event extraction, health-check messages, and more.
75 changes: 75 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,80 @@
# CHANGELOG

## v1.9.0

*May 30th, 2024*

This v1.9.0 release introduces new features and improvements to Hermes.

**Major Features**:

1. **Channel Upgrades:** Hermes now handles [channel upgrade](https://www.ibcprotocol.dev/blog/introducing-ibc-channel-upgradability) events introduced in ibc-go v8, helping chains opting-in to new functionality on existing channels.
2. **Dynamic Gas Fees Compatibility:** Hermes is now compatible with Skip's `x/feemarket` module for dynamic gas fees, in addition to Osmosis' implementation, providing more flexibility in gas fee management.

Additionally, this release includes various bug fixes enhancing the stability and performance of Hermes. These fixes address issues with channel and connection creation on older ibc-go versions, event extraction, health-check messages, and more.

### BREAKING CHANGES

- [Telemetry & Metrics](telemetry)
- Remove the `telemetry` and `rest-server` feature flags, ensuring Hermes is always built with telemetry and REST support.
Both servers can still be disabled in the configuration file, by setting `telemetry.enabled = false` and `rest.enabled = false`, respectively.
([\#3878](https://github.com/informalsystems/hermes/pull/3878))

### FEATURES

- [Relayer Library](relayer)
- Add support for upgrading channels, as per the [ICS 004 specification](https://github.com/cosmos/ibc/blob/main/spec/core/ics-004-channel-and-packet-semantics/UPGRADES.md) ([#3228](https://github.com/informalsystems/hermes/issues/2547))
This feature allows chains to upgrade an existing channel to take advantage of new features without having to create a new channel, thus preserving all existing packet state processed on the channel. For example, a channel could now be upgraded to enable the [ICS 029 fee middleware](https://ibc.cosmos.network/main/middleware/ics29-fee/overview), allowing relayer operators on that channel to receive fees each time they relay an incentivized packet.
- Improve reliability of event source in `pull` mode by proceeding to next block even if Hermes cannot parse the current block.
Add new configuration option to `event_source` setting: `max_retries` defines how many times Hermes should attempt to pull a block over RPC.
```toml
event_source = { mode = 'pull', interval = '1s', max_retries = 4 }
```
([\#3894](https://github.com/informalsystems/hermes/issues/3894))

### IMPROVEMENTS

- [Integration Test Framework](tools/test-framework)
- Update the version of Juno running the integration tests in the CI from `v17.1.1`
to `v21.0.0` ([\#3959](https://github.com/informalsystems/hermes/issues/3959))
- Update the version of Migaloo Chain running the
integration tests in the CI from `v3.0.2` to `v4.1.3`
([\#3960](https://github.com/informalsystems/hermes/issues/3960))
- Update the version of `wasmd` running the
integration tests in the CI from `v0.30.0` to `v0.50.0`
([\#3961](https://github.com/informalsystems/hermes/issues/3961))
- Update the version of ibc-go simapp running the
integration tests in the CI from `v8.2.0` to `v8.3.1`
([\#4009](https://github.com/informalsystems/hermes/issues/4009))
- [Relayer Library](relayer)
- Update to tendermint-rs v0.35.0
([\#3895](https://github.com/informalsystems/hermes/issues/3895))
- Use `packet_ack_hex` event attribute instead of deprecated `packet_ack` attribute to decode `WriteAck` event
([\#3921](https://github.com/informalsystems/hermes/issues/3921))
- Update to tendermint-rs v0.36.0
([\#3966](https://github.com/informalsystems/hermes/issues/3966))
- Add support for dynamic gas fee for chains using Skip's [`x/feemarket`](https://github.com/skip-mev/feemarket) module, while keeping compatibility with Osmosis' bespoke implementation
([\#4000](https://github.com/informalsystems/hermes/issues/4000))
- [Relayer CLI](relayer-cli)
- Use RPC (pull) event source instead of WebSocket (push) when generating configuration with `hermes config auto`
([\#3913](https://github.com/informalsystems/hermes/issues/3913))

### BUG FIXES

- [Relayer Library](relayer)
- Fix creation of channels and connection on chains
using an unsupported version of ibc-go, eg. Sei
([\#3817](https://github.com/informalsystems/hermes/issues/3817))
- Fix a bug where Hermes would only ever extract the first emitted ICS 031 CrossChain Query event, which would cause it to miss the other CCQ events.
([\#3954](https://github.com/informalsystems/hermes/issues/3954))
- [Relayer CLI](relayer-cli)
- Fixed `minimum-gas-prices` health-check messages and make it more verbose and legible
([\#3893](https://github.com/informalsystems/hermes/issues/3893))
- Set `compat_mode` for pull mode in `hermes listen` command
([\#3910](https://github.com/informalsystems/hermes/issues/3910))
- Fixed the trusted height consensus state query when submitting the double vote evidence
([\#3999](https://github.com/informalsystems/hermes/issues/3999))

## v1.8.3

*May 28th, 2024*
Expand Down
Loading

0 comments on commit a026d66

Please sign in to comment.