Skip to content

v2.1.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 06:36
· 49 commits to main since this release
Immutable release. Only release title and notes can be modified.
9c284de

Minor Changes

  • #728 c5ef96f Thanks @gulshngill! - Drop support for Node.js 20 (EOL since April 2026). The minimum supported version is now Node.js 22: engines.node is >=22.0.0, CI tests on Node 22 and 24, and nansen doctor reports Node 20 as below the required version.

  • #584 435ae1a Thanks @ygd58! - nansen wallet list now prints the standard JSON envelope on stdout, {"success":true,"data":{"wallets":[...],"defaultWallet":...}}, so nansen wallet list | jq . works and --pretty, --table, --format csv and --fields apply to it like any other command. It previously printed a readable summary with no data envelope, which agents could not parse. The output is the same in a terminal and in a pipe; use --pretty for readable JSON or --table for a table. With no wallets it returns an empty wallets list instead of a hint.

  • #727 9404c13 Thanks @hulk-linus! - nansen wallet show <name> now prints the standard JSON envelope on stdout, {"success":true,"data":{"name":...,"provider":...,"evm":...,"solana":...,"createdAt":...,"isDefault":...}}, so nansen wallet show main | jq . works and --pretty, --table, --format csv and --fields apply to it. Privy wallets also include privyWalletIds. The redacted default of nansen wallet export <name> does the same, returning {"name":...,"redacted":true,"evm":{"address":...},"solana":{"address":...}} with no key fields. Both previously printed a readable summary that agents could not parse. wallet export --reveal and --file are unchanged.

Patch Changes

  • #724 1f2fc6e Thanks @hulk-linus! - Use the resolved gas limit when signing local EVM swaps, including quotes with both gas and gasLimit fields.

  • #731 f4cf188 Thanks @hulk-linus! - Reject symlinks, hard links, and replaced files when reading saved authentication and trading quotes. Validate authentication lock descriptors before use. Claim bridge quotes before signing and block reuse if a post-broadcast execution marker cannot be saved. Authentication reads now require user-owned paths without group or other write permissions on POSIX; repair permissions before retrying an unsafe saved-key read.

  • #729 7b54c0e Thanks @gulshngill! - Solana-source bridge routes that are too large to fit in a transaction without address lookup tables (for example a token swap ahead of the bridge deposit) now compile and sign. The CLI fetches the route's lookup tables, checks that each one is active and on-chain, and uses them to compress accounts. Routes that already fit are compiled as before.

  • #733 353629a Thanks @kome12! - trade execute: accept a capitalised chain name. trade quote --chain Base stores the chain exactly as you typed it, but the RPC registry is keyed lowercase, so the quote could be created and then never executed ("No RPC URL configured for chain: Base"). The chain is now normalised once when the quote is loaded, which also fixes quotes already on disk.