This release targets the mainnet network and the testnet network.
This release is backwards compatible with the previous v2.X.X releases.
What's Changed
What's changed
- blockchain: Always clear a reverted block from the validity store by @viquezclaudio in #3981
- Add
nimiq_utils::spawn_blockingabstraction by @jsdanielh in #3984 - ci: Update all GH Actions workflows to use the latest OS image by @jsdanielh in #3989
- Update dependencies to address RustSec advisories by @jsdanielh in #3991
- Trie: reject equal-length keys in
TrieNode::child_indexby @jsdanielh in #3990 - Replace async-trait with native async in the network traits by @jsdanielh in #3999
- build(deps): Bump nimiq-jsonrpc-* dependencies from 0.4.0 to 0.5.0 by @jsdanielh in #4003
- Move ValidatorRecord to network-interface by @ii-cruz in #3994
- Mempool: Stop executors even when unsubscribing fails by @nibhar in #4009
- network: Fail startup on listen errors and use random memory ports in tests by @jsdanielh in #4005
- web-client: auto-install the locked wasm-bindgen-cli in build.sh by @jsdanielh in #4000
- utils: Fix the interner drop race with a concurrent re-intern by @jsdanielh in #4027
- Update rustls-webpki and webpki-roots to distrust emSign intermediates by @jsdanielh in #4033
- Install the unit policy in tests that read it before any install by @ii-cruz in #4012
- Add
READMEs for each subcrate and improve cargo package metadata by @jsdanielh in #4035 - Tendermint: decide on late proposals that complete a cached precommit polka by @nibhar in #4034
- Partially revert "Include the license in every published crate" by @jsdanielh in #4036
- Update crypto-bigint and ctutils for constant-time fixes by @jsdanielh in #4041
- Publish own blocks only after a successful push by @jsdanielh in #4044
- network-libp2p: Fix connection pool limit accounting and tighten per-subnet limits by @jsdanielh in #4045
- MMR: Reject duplicate leaf positions in proof verification by @jsdanielh in #4046
- Fix unbounded growth of address subscriptions in the remote event dispatcher by @jsdanielh in #4047
- Block: decompress election voting keys only after authentication by @jsdanielh in #4048
- Trie: keep partial tries consistent during state sync by @jsdanielh in #4049
- Fix transaction verification cache bypassing signature checks on a proof-less hash hit by @jsdanielh in #4050
- History store: Keep oversized historic transactions out of the dup table by @jsdanielh in #4051
- Keep trie diffs until the next macro block after state sync by @jsdanielh in #4052
- Bound block-body gossip size and lazily decompress double vote proof signatures by @jsdanielh in #4053
- Update mainnet checkpoint to election block #64627200 by @jsdanielh in #4054
Dependencies
- Bump the minor-and-patch-cargo-updates group across 1 directory with 5 updates by @dependabot[bot] in #3977
- Replace clear_on_drop (unmaintained) with zeroize by @sisou in #3970
- Bump libp2p-quic from 0.13.0 to 0.13.1 by @dependabot[bot] in #3967
- build(deps): Bump nimiq-jsonrpc-* dependencies from 0.3.3 to 0.4.0 by @jsdanielh in #3978
- Bump docker/build-push-action from 7.3.0 to 7.4.0 in the minor-and-patch-actions-updates group across 1 directory by @dependabot[bot] in #3979
- Bump the minor-and-patch-cargo-updates group across 1 directory with 6 updates by @dependabot[bot] in #3987
- Bump source-map-js from 1.2.1 to 1.2.2 in /web-client/extras by @dependabot[bot] in #4002
- Bump brace-expansion from 1.1.11 to 1.1.21 in /web-client/extras by @dependabot[bot] in #3993
- Bump the minor-and-patch-cargo-updates group across 1 directory with 8 updates by @dependabot[bot] in #4011
- Update quinn-proto transitive dependency to latest by @sisou in #4018
- Bump ed25519-zebra from 4.2.0 to 5.0.0 and p256 from 0.13.2 to 0.14.0 by @jsdanielh in #4025
- Bump the minor-and-patch-cargo-updates group across 1 directory with 7 updates by @dependabot[bot] in #4028
- Bump vite from 8.3.0 to 8.3.5 in /web-client/extras by @dependabot[bot] in #4029
Full Changelog: v2.2.0...v2.3.0