# What changed in alloy

> 43 changes in alloy 2 from its official release notes, upgrade guides and advisories: 5 breaking, 4 security, 19 new APIs and options. Each one cited. Sources checked 2026-11-12. HTML: https://unstale.sh/cargo/alloy/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## alloy 2

### Breaking changes

- Rejects legacy transactions and receipts tagged with 0x00. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Address filters now default to intersection. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Removes Hash implementations for filters. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Propagates key parse errors from the deserializer. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Serializes absent transaction fields as null. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)

### Security

- Prevents the dummy crypto backend from poisoning signer recovery. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Rejects BIP-32 indices that overflow the harden bit. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Rejects invalid EIP-658 status values. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Bounds sealed block RLP decoding. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)

### New APIs and options

- Adds support for feature-gated account extensions in genesis. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Re-exports EIP-8141 types. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds EIP-8282 builder execution requests to rpc-types-beacon. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds RpcError::error_code. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds execution witness encoding to rpc-types-debug. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds REST-SSZ wire types to engine. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds a standalone EIP-8141 transaction. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds Amsterdam payload errors. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds support for blobless sidecar encoding. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds block_opt for optional block setting. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds Bogota engine API methods. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds provider support for CCIP Read (ERC-3668). (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds streams for chunked event queries. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Adds EIP-8282 builder system contract variants. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Exposes request metadata and header helpers. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Bogota payload sidecar fields were added to rpc-types-engine. (2.4.1) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.1)
- Bogota payload types were added to rpc-types-engine. (2.4.1) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.1)
- FOCIL response types were added to rpc-types-engine. (2.4.1) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.1)
- A slot_number field was added to the genesis header for EIP-7843. (2.4.1) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.1)

### Performance

- Frames JSON incrementally instead of re-parsing the buffer in the IPC transport. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)

### Behavior and default changes

- The provider calls eth_getBlockAccessList. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Allows longer Geth dev-mode startup. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Adds lenient deserialization for JSON-RPC parameters. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- ENS resolution follows CCIP Read redirects. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Migrates ENS resolution to the Universal Resolver. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)

### Fixes and other changes

- Trace decoding now handles explain gas. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Ignores the bloom cache when comparing FilterSet values. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Strips the 0x prefix when reporting InvalidLength. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Trace decoding now handles regularGasUsed. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Ignores the deserialization cache when comparing transactions. (2.5.0) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.5.0)
- Resolves block tags in chunked event queries. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Stops chunked event queries after fallback failure. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Avoids stack overflow when decoding V2 blobs. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
- Drops tokio/time from the wasm build. (2.4.2) — [release notes](https://github.com/alloy-rs/alloy/releases/tag/v2.4.2)
