unstale

npm / viem

viem

What changed in viem 2, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.

2 breaking1 security5 new APIs and options2 behavior and defaults5 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.0 on npm

viem 215 changes

Breaking changes 2

  • Renamed the experimental native multisig APIs to configurable accounts, following TIP-1107.

    2.57.5release notes

  • Now builds the manager from a Store instead of a custom get/set/remove source.

    2.57.5release notes

Security 1

  • Preserves relay-filled validBefore and validAfter bounds so sponsored Tempo transactions retain a valid fee-payer signature.

    2.57.7release notes

New APIs and options 5

  • Added the ousd token address to Addresses in viem/tempo.

    2.57.6release notes

  • Tempo actions now provide typed TempoExecutionError errors, with per-module subclasses carrying decoded arguments, fetched onchain details, and resolution hints.

    2.57.6release notes

  • Added an action for saving authorizations signed elsewhere.

    2.57.5release notes

  • Added the QMS Testnet chain.

    2.57.5release notes

  • Added a Tempo plugin that saves key authorizations signed with Actions.accessKey.signAuthorization and attaches them to the access key's next transaction, including configurable account authorizations at quorum.

    2.57.5release notes

Behavior and default changes 2

  • Updated the RPC and block explorer URLs from arc.network to arc.io.

    2.57.5release notes

  • Updated the Tempo mainnet and testnet Earn factory addresses to the latest releases.

    2.57.5release notes

Fixes and other changes 5

  • The transport timeout now applies while reading the response body and when the request is given an abort signal.

    2.57.5release notes

  • No longer drops the first parameter when a space follows an opening parenthesis; the same fix applies to toFunctionSelector, toEventSelector, and toSignature.

    2.57.5release notes

  • Calling unsubscribe on webSocket and ipc transports after reconnect now uses the current subscription id, preventing subscription leaks.

    2.57.5release notes

  • Concurrent waits no longer resolve using the first call's options or leave a later wait for the same id hanging.

    2.57.5release notes

  • Now detects replacement transactions and avoids reporting a repriced transaction as replaced when RPC address casing differs.

    2.57.5release notes