8000 Releases · cometbft/tendermint-rs · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: cometbft/tendermint-rs

v0.40.4

05 May 09:38
v0.40.4
d8c361e
Compare
Choose a tag to compare

See the CHANGELOG for this release.

v0.40.3

08 Apr 18:12
v0.40.3
c702549
Compare
Choose a tag to compare

See the CHANGELOG for this release.

v0.40.2

03 Apr 08:56
v0.40.2
cb66416
Compare
Choose a tag to compare

April 3rd, 2025

BUG FIXES

  • [tendermint-rpc] Strip auth info from URL to avoid double Authorization header (#1494)

v0.40.1

24 Dec 23:59
6cc391c
Compare
Choose a tag to compare

0.40.1

December 24th, 2024

This is a bug fix release that address omissions in the v0.40.0 release.

BUG FIXES

  • tendermint: export abci::event::v0_37 to construct EventAttribute::V037 variants.
    (#1479, (#1480)
  • tendermint-light-client-js: bump serde-wasm-bindgen to v0.6.5 and js-sys to =v0.3.70 to
    ix compilation failure of wasm-bindgen-test. (#1481)

New Contributors

Full Changelog: v0.40.0...v0.40.1

v0.40.0

23 Oct 13:02
v0.40.0
2f94e7f
Compare
Choose a tag to compare

October 23rd, 2024

This release adds a new dialect for CometBFT v0.38.x, enabling the correct serialization of misbehavior Evidence. This improvement ensures compatibility with CometBFT v0.38.x, addressing specific issues in evidence handling for this version.

BREAKING CHANGES

  • [tendermint-rpc] Add new dialect for CometBFT v0.38.x
    (#1467)

BUG FIXES

  • [tendermint-rpc] Fix serialization of misbehaviour Evidence
    on CometBFT v0.38.x using the newly introduced dialect
    (#1467)

v0.39.0

06 Aug 10:28
v0.39.0
439abf5
Compare
Choose a tag to compare

August 6th, 2024

This release bundles the google.protobuf.Any Protobuf type in tendermint-proto and brings improvements to google.protobuf.Duration and google.protobuf.Timestamp.

FEATURES

  • [tendermint-proto] Add Any type under tendermint_proto::google::protobuf::Any (#1445)

IMPROVEMENTS

  • [tendermint-proto] Implement prost::Name for tendermint_proto::google::protobuf::{Duration, Timestamp} (#1452)
  • [tendermint-proto] Improve ProtoJSON serialization of tendermint_proto::google::protobuf::{Duration, Timestamp} (#1452)

v0.38.1

23 Jul 14:25
88d582e
Compare
Choose a tag to compare

July 23rd, 2024

This release enhances decoding of the AppHash type by trying to decode it as base64 if it fails to decode as hex.
This release also updates prost and prost-types to their latest version in the tendermint crate, something that was missed in the v0.38.0 release.

BREAKING CHANGES

  • [tendermint] Bump prost and prost-types to their latest versions in the tendermint crate. This was missed in #1444, which only updated the two dependencies in tendermint-rpc, leading to duplicate versions of both crates to be present in the dependency graph. (#1446)

IMPROVEMENTS

  • [tendermint-rpc] If AppHash fails to decode as hex, try to decode it as base64. (#1449)

v0.38.0

22 Jul 13:50
475a1f8
Compare
Choose a tag to compare

Important

tendermint-rs and CometBFT are versioned separately, and the version numbers seemingly matching at the moment is not intended.

July 15th, 2024

This release enhances /block_results response handling, relaxes Block validation, and adds support for the /genesis_chunked RPC endpoint.

BREAKING CHANGES

  • tendermint: relax validation rules on Block (#1435)
  • [tendermint-proto]: Update prost to v0.13 and tonic to v0.12 (#1444)

BUG

  • [tendermint-rpc] Deserialize an empty JSON object as None for the consensus_param_updates field in the /block_results response. (#1440)

FEATURES

  • [tendermint-rpc] Add support for the /genesis_chunked RPC endpoint (#1438)

v0.37.0

31 May 10:46
v0.37.0
94a5fc0
Compare
Choose a tag to compare

May 31st, 2024

This release restores the commit verification interfaces of PredicateVerifier from tendermint-rs 0.35.0 and lower, but retains the performance improvements made in version 0.36.0.

This version also brings a few new features to the HTTP RPC client, notably a way to specify the User-Agent to send along HTTP requests, as well as a way to override the underlying reqwest client.

Additionally, this release fixes a couple of issues with the serde-based deserialization of the FinalizeBlock and Event types.

BREAKING CHANGES

  • [tendermint-proto] Upgrade tonic to v0.11 (#1422)
  • [tendermint-light-client-verifier] Restores the commit verification interfaces of PredicateVerifier<P, C, V> from <= 0.35.0 (#1423)
    • verify_commit(&self. untrusted: &UntrustedBlockState<'_>) is restored, as in <= 0.35.0.
    • verify_commit(&self, untrusted: &UntrustedBlockState<'_>, trusted: &TrustedBlockState<'_>,) introduced in 0.36.0 is renamed to verify_commit_against_trusted.
      The performance improvements made in the 0.36.0 release are still intact.

FEATURES

  • [tendermint-rpc] Add a way to specify custom User-Agent for HttpClient (#1425)
  • [tendermint-rpc] Add a client() method on transport::http::Builder to override the underlying reqwest client (#1421)
  • [tendermint-rpc] Add a from_raw_parts() method on transport::http::HttpClient to allow supplying the underlying reqwest client (#1421)

BUG FIXES

  • [tendermint] Fix FinalizeBlock::validator_updates deserialization as nullable (#1428)
  • [tendermint-abci] Add serde default annotation for Event::type to match omitempty in the Go implementation (#1416)

v0.36.0

25 Apr 09:48
v0.36.0
1b219d2
Compare
Choose a tag to compare

This release brings substantial performance improvements to the voting power computation within the light client, improves the handling of misformed blocks (eg. with empty last_commit on non-first block) when decoding them from Protobuf or RPC responses, and adds missing serde derives on some Protobuf definitions.

This release also technically contains a breaking change in tendermint-proto, but this should not impact normal use of the library, as the ToPrimitive impl that was removed on BlockIdFlag trait did not provide any additional functionality.

BREAKING CHANGES

  • [tendermint-proto] Remove redundant impl of num_traits::ToPrimitive for BlockIDFlag (#1389)

  • [tendermint] Change EventAttribute's key and value fields from String to Vec<u8> for Tendermint v0.34, as enforced by the Protobuf schema for Tendermint v0.34. tendermint::abci::EventAttribute is now an enum, to account for version 0.34 and 0.37+, therefore the key, value and index fields now have to be retrieved through the key_str()/key_bytes, value_str()/value_bytes() and index() methods. (#1400).

  • [light-client-verifier] Rework VerificationPredicates and VotingPowerCalculator by introducing methods which check validators and signers overlap at once. The motivation of this is to avoid checking the same signature multiple times.

    Consider a validator is in old and new set. Previously their signature would be verified twice. Once by call to has_sufficient_validators_overlap method and second time by call to has_sufficient_signers_overlap method.

    With the new interface, has_sufficient_validators_and_signers_overlap is called and it can be implemented to remember which signatures have been verified.

    As a side effect of those changes, signatures are now verified in the order of validator’s power which may further reduce number of signatures which need to be verified.

    (#1410)

FEATURES

  • [tendermint-proto] Add missing serde derives on Protobuf definitions (#1389)
  • [tendermint] Add the following impls for ed25519-consensus:
    • From<ed25519_consensus::SigningKey for tendermint::PrivateKey
    • From<ed25519_consensus::SigningKey> for tendermint::SigningKey
    • From<ed25519_consensus::VerificationKey> for tendermint::PublicKey
    • From<ed25519_consensus::VerificationKey> for tendermint::VerificationKey
      (#1401)

IMPROVEMENTS

  • [tendermint] Allow misformed blocks (eg. with empty last_commit on non-first block) when decoding them from Protobuf or RPC responses (#1403)
  • [tendermint] Check index ≤ i32::MAX invariant when converting usize into ValidatorIndex. (#1411)
  • [light-client-verifier] Optimise validators lookup in ProvidedVotingPowerCalculator::voting_power_in method. (#1407)
  • [tendermint-light-client-verifier] Reuse buffer used to store sign_bytes to reduce number of allocations and deallocations. (#1413)
0