Skip to content

Releases: alloy-rs/alloy

v2.0.0

13 Apr 11:48
v2.0.0
395521c

Choose a tag to compare

This new major release includes several breaking changes as preparation for the Glamsterdam hardfork.

Notable breaking changes are:

  • network transaction-builder traits were reshaped: TransactionBuilder was split, network-specific methods moved to NetworkTransactionBuilder, and Network bounds tightened around TransactionRequest / TxEnvelope (#3344, #3723).
  • Blob transaction APIs changed: TransactionBuilder7594 was folded into TransactionBuilder4844, blob-sidecar methods were renamed/specialized, the default TxEip4844Variant generic changed, and PooledTransaction now uses the EIP-7594 sidecar type (#3600, #3328, #3468).
  • AnyTransactionReceipt is now a dedicated struct instead of a type alias, so code that relied on alias semantics or direct wrapped-type usage needs updating (#3153).
  • ChainConfig is now non-exhaustive, and Amsterdam support adds new header/config fields plus new BlockHeader requirements; exhaustive struct literals, pattern matches, and custom header impls may need changes (#3566, #3871).
  • Provider builder / filler APIs changed: .network() now replaces the filler stack, and GasFiller is no longer a unit struct, so .filler(GasFiller) becomes .filler(GasFiller::default()) or custom estimator wiring (#3686, #3849).
  • AnyNetwork no longer silently signs or re-encodes unknown transaction types; those paths now fail fast (#3794).
  • muxTracer now keys mux configs / frames by GethDebugTracerType instead of GethDebugBuiltInTracerType, which breaks existing tracer map code (#2442).
  • Pubsub / RPC surface types gained new variants and fields, including transactionReceipts subscriptions and newer header / transaction fields, so exhaustive enum matches and struct literals may need .. / wildcards (#3410, #3707, #3871).

What's Changed

  • fix(signer-gcp): use rustls instead of native-tls for gcloud-sdk by @zerosnacks in #3844
  • chore: release 1.8.3 by @zerosnacks in #3848
  • fix(provider): skip caching missing transaction lookups by @lmorett1 in #3826
  • fix(provider): fallback to get_block when get_header RPCs unsupported by @prestwich in #3850
  • feat: add network field to NodeInfo by @stevencartavia in #3851
  • refactor(pubsub): remove duplicate dispatch logic in reconnect() by @anim001k in #3760
  • docs(provider): clarify feature requirements for anvil helpers by @lmorett1 in #3858
  • fix(pubsub): recover request-path backend drops by @mattsse in #3846
  • feat(rpc-types-debug): add header helpers to ExecutionWitness by @mattsse in #3862
  • chore: added feature rlp to eip7928 by @Rimeeeeee in #3865
  • chore(deps): bump taiki-e/install-action from 2.69.7 to 2.74.0 by @dependabot[bot] in #3867
  • chore(deps): bump crate-ci/typos from 1.44.0 to 1.45.0 by @dependabot[bot] in #3868
  • feat(provider): add more-tuple-impls feature for multicall by @hardcore-sushi in #3861
  • fix(provider): match multicall tuple impls with alloy-core by @DaniPopes in #3869
  • revert: "revert: "chore: bump ethereum_ssz to 0.10 and tree_hash to 0.12"" by @mattsse in #3840
  • fix(network): fail fast on unknown AnyNetwork signing and 2718 encoding by @Shresth79 in #3794
  • feat(alloy-provider): add methods for creating custom gas estimator for GasFiller by @StackOverflowExcept1on in #3849
  • fix: Optimism network incompatible with ProviderBuilder::new constructor by @stevencartavia in #3686
  • feat(mux-tracer): Support JS tracer in MUX tracer. by @kustrun in #2442
  • feat: parse data field on error for eth_simulateV1 if present in response by @antonydenyer in #3570
  • Revert "Revert "feat(rpc-types-eth): add optional timestamp field to Transaction"" by @mattsse in #3639
  • refactor(network): unify EIP-4844 tx builder trait by @mablr in #3600
  • feat(rpc-types-trace): add depth-first iterator for CallFrame by @TanayK07 in #3768
  • feat(network): generic TransactionResponse to TransactionRequest conversion by @mablr in #3723
  • feat(ens): use Universal Resolver for forward name resolution by @Dhaiwat10 in #3866
  • feat(transport): add ThrottleLayer burst configuration by @Shresth79 in #3854
  • feat(consensus): change default tx env type by @lean-apple in #3328
  • fix(provider): error all callers on batch len mismatch by @Shresth79 in #3827
  • feat: add amsterdam fields by @mattsse in #3871
  • chore(dep): bump jsonwebtoken v10.3.0 fix cve by @duyquang6 in #3754
  • feat: non-exhaustive ChainConfig by @mattsse in #3566
  • reapply: "revert: remove transactionReceipts subscription kind" by @mattsse in #3410
  • feat(rpc-types-eth): add max_used_gas to SimCallResult by @gakonst in #3707
  • fix(provider): fall back to RPC on get_logs cache deserialization failure by @neowangreal in #3859
  • feat(provider): Add comprehensive Tenderly RPC API methods by @codeesura in #3120
  • feat: update PooledTransaction to use EIP-7594 sidecar by @stevencartavia in #3468
  • chore: make _non_exhaustive pub by @mattsse in #3873
  • feat(rpc-types-engine): add hidden setters to ExecutionPayload by @mattsse in #3875
  • refactor(network): extract NetworkTransactionBuilder from TransactionBuilder by @lean-apple in #3344
  • serde: support NonZero quantity types by @legion2002 in #3876
  • feat(rpc-types-anvil): add client_semver to Metadata by @ndavd in #3877
  • feat: Make AnyTransactionReceipt a dedicated type by @0xChaddB in #3153
  • chore: allow unused ignored advisories by @mattsse in #3883

New Contributors

Full Changelog: v1.8.2...v2.0.0

v1.8.3

27 Mar 08:42
v1.8.3
3bcda29

Choose a tag to compare

What's Changed

  • fix(signer-gcp): use rustls instead of native-tls for gcloud-sdk by @zerosnacks in #3844

Full Changelog: v1.8.2...v1.8.3

v1.8.2

26 Mar 09:47
v1.8.2
c36b7b2

Choose a tag to compare

What's Changed

  • revert: "fix(serde): validate JsonStorageKey length during deserialization" by @mattsse in #3842
  • fix(serde): fix off-by-one in JsonStorageKey length check by @mattsse in #3843

Full Changelog: v1.8.1...v1.8.2

v1.8.1

25 Mar 15:07
e90f33e

Choose a tag to compare

What's Changed

  • revert: "chore: bump ethereum_ssz to 0.10 and tree_hash to 0.12" by @mattsse in #3839

Full Changelog: v1.8.0...v1.8.1

v1.8.0

25 Mar 09:45
v1.8.0
929312b

Choose a tag to compare

What's Changed

  • chore(deps): bump taiki-e/install-action from 2.68.16 to 2.68.25 by @dependabot[bot] in #3788
  • chore(rpc): clippy happy with outer match by @jsvisa in #3793
  • fix(serde): validate JsonStorageKey length during deserialization by @jsvisa in #3792
  • feat(rpc-types-eth): add parent beacon root to BlockOverrides by @jsvisa in #3798
  • chore(eips): add doc to let check happy by @jsvisa in #3797
  • fix(provider): use pending nonce in CachedNonceManager init by @neowangreal in #3802
  • fix(flashblocks): correct receipts type in FlashBlock metadata by @0xSojol in #3795
  • fix(eips): eip 7594 replace unoptimized iter by @Syzygy106 in #3804
  • fix(rpc-types-debug): enable serde_with alloc for no_std by @Shresth79 in #3811
  • chore(deps): bump taiki-e/install-action from 2.68.25 to 2.68.34 by @dependabot[bot] in #3814
  • chore(deps): bump Swatinem/rust-cache from 2.8.2 to 2.9.1 by @dependabot[bot] in #3813
  • fix(provider): detect EIP-7594 blob sidecars in BlobGasFiller by @Shresth79 in #3815
  • fix(consensus): delegate is_create() for Extended::Other instead of hardcoding false by @neowangreal in #3796
  • fix(rpc-client): return error instead of panic on unexpected batch response by @neowangreal in #3807
  • fix(transport): return clear error when no transports available by @neowangreal in #3806
  • chore: add id attributes to issue templates by @decofe in #3822
  • fix(build): bump gcloud-sdk 0.27.4 -> 0.29.0 for reqwest 0.13 compatibility by @decofe in #3823
  • fix(node-bindings): use graceful shutdown for anvil by @mattsse in #3824
  • fix: better arbitrary impl for header by @klkvr in #3829
  • chore(deps): bump taiki-e/install-action from 2.68.34 to 2.69.7 by @dependabot[bot] in #3830
  • feat(provider): add watch_headers to Provider trait by @mattsse in #3800
  • fix(rpc-client): detect is_local in connect_with_config by @mattsse in #3837

New Contributors

Full Changelog: v1.7.4...v1.8.0

v1.7.4

09 Mar 08:17
v1.7.4
4e6ff5a

Choose a tag to compare

What's Changed

  • fix: resolve infinite recursion in Sealable::hash_slow for Header by @MozirDmitriy in #3709
  • fix(ci): catch background process failures in install_test_binaries.sh by @vanityKoa in #3718
  • fix(consensus): use unchecked recovery in recover_unchecked_with_buf default impl by @vanityKoa in #3719
  • fix(rpc-types): off-by-one in TransactionConditional has_exceeded checks by @vanityKoa in #3721
  • test: remove flaky test_erc20_token_polygon test by @gakonst in #3727
  • feat(ws): auto-extract basic auth from URL in WsConnect by @mattsse in #3728
  • feat: impl From<Recovered> for TransactionRequest by @mattsse in #3731
  • fix: correct Debug trait name for JwtSecret by @VolodymyrBg in #3736
  • chore(deps): bump taiki-e/install-action from 2.68.0 to 2.68.8 by @dependabot[bot] in #3737
  • fix: correct Debug trait name for PendingBlock by @Mapogundal in #3738
  • refactor(node-bindings): remove redundant bounds checks in extract_value by @Perekup1 in #3735
  • fix(rpc-types-eth): matches_block always returns true for AtBlockHash… by @neowangreal in #3734
  • fix(rpc-types-mev): add Copy derive to FunctionSelector by @GarmashAlex in #3725
  • fix(rpc-types-trace): skip serializing None fields in TraceFilter by @vanityKoa in #3739
  • chore: bump ethereum_ssz to 0.10 and tree_hash to 0.12 by @cakevm in #3742
  • feat: add reth_get_block_execution_outcome to RethProviderExt by @stevencartavia in #3751
  • refactor(provider): reuse helper functions in block_and_aggregate / try_block_and_aggregate by @vanityKoa in #3752
  • transport: deduplicate DualTransport constructor logic by @anim001k in #3746
  • chore: bump deps by @stevencartavia in #3712
  • fix(eips): use post-EIP-2028 non-zero byte calldata cost (16) by @decofe in #3755
  • refactor(node-bindings): remove redundant TempDir::close calls by @anim001k in #3756
  • docs(rpc-types-eth): fix incorrect error code in SimulateError by @vanityKoa in #3762
  • feat(eips): allow custom system contracts in EIP-7910 by @johnletey in #3765
  • chore(deps): bump taiki-e/install-action from 2.68.8 to 2.68.16 by @dependabot[bot] in #3766
  • feat(network): signature flow generic over Network by @mablr in #3724
  • fix(ci): add alloy-consensus-any to no_std check by @vanityKoa in #3772
  • refactor(rpc-types-eth): centralize SimulateError codes by @Mapogundal in #3769
  • feat: Add support for chunked queries by @stevencartavia in #3747
  • fix(pubsub): remove duplicate log on subscription deserialization failure by @vanityKoa in #3773
  • fix(node-bindings): implicitly enable IPC when setting ipc_path by @neowangreal in #3764
  • feat(transport): parse retry backoff hint from RPC error messages by @mattsse in #3780
  • feat(consensus): add Block::from_transactions constructor by @stevencartavia in #3784
  • feat(alloy): support no_std for the meta crate by @mattsse in #3786
  • chore(deps): bump crate-ci/typos from 1.43.5 to 1.44.0 by @dependabot[bot] in #3767

New Contributors

Full Changelog: v1.7.3...v1.7.4

v1.7.3

18 Feb 00:16
v1.7.3
c5d4b19

Choose a tag to compare

What's Changed

  • perf(engine): remove serde(flatten) from execution payload types by @gakonst in #3713

Full Changelog: v1.7.1...v1.7.3

v1.7.1

17 Feb 18:36
bd50799

Choose a tag to compare

What's Changed

Full Changelog: v1.7.0...v1.7.1

v1.7.0

17 Feb 10:48
v1.7.0
972f8e4

Choose a tag to compare

What's Changed

  • feat(provider): add engine_getBlobsV1/V2 to EngineApi trait by @vanityKoa in #3670
  • chore(deps): bump taiki-e/install-action from 2.67.13 to 2.67.27 by @dependabot[bot] in #3672
  • chore(deps): bump crate-ci/typos from 1.42.2 to 1.43.4 by @dependabot[bot] in #3671
  • ci: use install-action for zepter by @snazzysam933 in #3674
  • docs: fix incomplete return condition in next_block_excess_blob_gas by @Bilogweb3 in #3679
  • feat: add trait impls for Cow to support Recovered<Cow<'_, T>> by @gakonst in #3689
  • feat(rpc-types-beacon): add proposer duties, state validators, and fork types by @gakonst in #3688
  • chore: bump MSRV to 1.91 by @gakonst in #3691
  • chore: remove jsonrpsee dependencies by @gakonst in #3690
  • feat(provider): add get_storage_values for batch storage slot retrieval by @gakonst in #3692
  • chore(deps): bump taiki-e/install-action from 2.67.27 to 2.68.0 by @dependabot[bot] in #3702
  • chore(deps): bump crate-ci/typos from 1.43.4 to 1.43.5 by @dependabot[bot] in #3701
  • feat(rpc-types-eth): add TransactionRequest::create() builder method by @mattsse in #3704
  • feat(consensus): add EthereumReceipt type ported from reth by @stevencartavia in #3683
  • fix: actually retry failed block fetches instead of skipping them by @vanityKoa in #3698

New Contributors

Full Changelog: v1.6.3...v1.7.0

v1.6.3

09 Feb 15:34
v1.6.3
b125eff

Choose a tag to compare

What's Changed

  • fix(transport): eagerly format itertools to prevent double-format panic by @gakonst in #3668

Full Changelog: v1.6.2...v1.6.3