Taquito v25.0.0: Ushuaia (U025) protocol support

@taquito/taquito@25.0.0 is now on npm under the latest tag. This is the v25 line’s stable release, adding support for the Ushuaia (U025) protocol ahead of mainnet activation (governance period 176), plus two bug fixes reported by the Temple Wallet team.

npm install @taquito/taquito@25.0.0

Ushuaia (U025) support

If you forge locally or encode Michelson, this is the release you want for U025:

  • The protocol PsUshuai9QapM5TGj1JpuVGkdxz5GykdnEvS6Rh8SUVrARvZLCY is registered in @taquito/taquito and @taquito/michel-codec.
  • DefaultProtocol moves from PtTALLiNt (024) to PsUshuai9 (025). Local forging and Michelson encoding now default to U025 semantics.
  • @taquito/taquito-rpc constants types gain the new U025 fields: DAL parameters (attestation_lag, number_of_shards, slot_size, …), cache_stake_info_cycles, cache_swrr_selected_distribution_cycles, and smart_rollup_canonical_rollup_address. These are additive on read; older protocols are unaffected.
  • USHUAIANET (chain id NetXpX8WSZkAZZA) is wired through the network mapping so you can target it directly.

Heads up on protocol ordering: in @taquito/michel-codec, proto 025 now maps to PsUshuai9 and ProtoALpha shifts to 026. If you pinned operations to a protocol by hash, or relied on ProtoALpha being level 025, re-check those references.

Bug fixes

Both of these were reported by the Temple Wallet team — thanks for the detailed reports and reproductions.

  • Encrypted key decryption across realms (#3428) — encrypted-key decryption failed in cross-realm runtimes (jsdom, SSR, browser extensions) after the 24.3.0 move to @noble/hashes v2. PBKDF2 salts are now normalized to plain Uint8Array, which fixes both @taquito/signer encrypted private keys (including p2esk) and @taquito/sapling encrypted spending keys.
  • Batch estimate gas rebalancing (#3429) — estimate.batch no longer throws a false gas_exhausted.operation when a batch mixes cheap operations with one gas-heavy operation. The estimator rebalances auto-patched gas (never your explicit limits) and re-simulates until estimates converge. A new BatchGasLimitExceededError is thrown for batches that genuinely exceed the per-block gas limit.

Beacon SDK fork → 4.8.4-ecad

The bundled @ecadlabs/beacon-* fork moves to 4.8.4-ecad, continuing the relay-hardening work from the v24.3.0 line.

One behavior change to be aware of if you use @taquito/beacon-wallet: disconnect() now calls the SDK’s client.disconnect() instead of client.destroy(). Disconnect now notifies the connected wallet peer, clears the active account, and tears down transports, but the BeaconWallet instance stays usable — you can reconnect with a new permission request without re-instantiating. Previously destroy() wiped all beacon:* localStorage state and left the instance unusable.

We plan to switch to octez.connect in a future release, shifting the maintenance burden on this piece of software to the team at Trilitech.

Project status

Taquito is currently unfunded and maintained by ECAD Labs on a best-effort basis. Protocol-tracking releases like this one remain a priority.

Links

If something looks wrong against U025 — estimation, forging, or constants reads — please open an issue with the operation and network details.

4 Likes