Skip to content

Releases: MetaMask/accounts

118.0.0

Choose a tag to compare

@github-actions github-actions released this 09 Jul 11:20
7ecc424

@metamask/account-api 1.1.0

Added

  • Add PrivateKeyAccount<Account> type helper (#590)

Changed

  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)
  • Bump @metamask/keyring-api from ^23.1.0 to ^23.5.0 (#562, #569, #583, #587)

@metamask/eth-snap-keyring 23.0.1

Fixed

  • Fix deadlock in SnapKeyring.createAccounts (v2) (#591)
    • We do not need to call saveState here, we expect this call to be wrapped in a :withKeyringV2 transaction call.

117.0.0

Choose a tag to compare

@github-actions github-actions released this 06 Jul 23:47
3566113

@metamask/hw-wallet-sdk 0.10.0

Added

  • Add KEYRING_ERROR_MAPPINGS with DeviceStateOnlyV4Supported for keyring-level typed data version validation (#575)

Fixed

  • Add shared user-rejection detection helpers so hardware wallet libraries can classify cancellation-like errors consistently (#576)
    • Provider-style 4001 codes are distinguished from this SDK's ConnectionClosed error code.

@metamask/keyring-api 23.5.0

Added

  • Add resolveAccountAddress to KeyringSnapRpc (v2) (#585)
    • Add snap.resolveAccountAddress boolean flag to KeyringCapabilities to declare support for this method.

Changed

  • Bump @metamask/superstruct from ^3.1.0 to ^3.3.0 (#580)

@metamask/eth-ledger-bridge-keyring 12.3.0

Changed

  • Throw HardwareWalletError with DeviceStateOnlyV4Supported when signTypedData is called with a non-V4 version (#575)
  • Bump @metamask/hw-wallet-sdk from ^0.8.0 to ^0.10.0 (#576, #587)
  • Bump @metamask/keyring-api from ^23.3.0 to ^23.5.0 (#583, #587)

@metamask/eth-trezor-keyring 10.1.1

Changed

  • Bump @metamask/keyring-api from ^23.1.0 to ^23.5.0 (#562, #569, #583, #587)
  • Bump @metamask/keyring-sdk from ^2.1.1 to ^2.2.0 (#562)
  • Bump @metamask/hw-wallet-sdk from ^0.8.0 to ^0.10.0 (#576, #587)

Fixed

  • Surface Trezor user cancellation and rejection errors as UserCancelled/UserRejected instead of ErrorCode.Unknown, fixing uninformative "Unknown error" messages when users reject signing (#576)

@metamask/keyring-internal-snap-client 10.0.5

Changed

  • Bump @metamask/keyring-api from ^23.4.0 to ^23.5.0 (#587)
  • Bump @metamask/keyring-snap-client from ^9.1.0 to ^9.2.0 (#587)

@metamask/eth-snap-keyring 23.0.0

Changed

  • BREAKING: SnapKeyring (v2) no longer inherits SnapKeyringV1 (#584)
    • Use .v1 getter to access a v1 instance instead.
    • .v1 will yield undefined if the Snap declares v2 capabilities in its endowment:keyring.
  • Bump @metamask/superstruct from ^3.1.0 to ^3.3.0 (#580)
  • Bump @metamask/keyring-internal-snap-client from ^10.0.4 to ^10.0.5 (#587)
  • Bump @metamask/keyring-snap-sdk from ^9.1.0 to ^9.2.0 (#587)

@metamask/keyring-snap-client 9.2.0

Added

  • Add resolveAccountAddress to v2 KeyringClient (#585)

Changed

  • Bump @metamask/superstruct from ^3.1.0 to ^3.3.0 (#580)
  • Bump @metamask/keyring-api from ^23.4.0 to ^23.5.0 (#587)

@metamask/keyring-snap-sdk 9.2.0

Added

  • Add keyring_resolveAccountAddress dispatch to v2 handleKeyringRequest (#585)

Changed

  • Bump @metamask/superstruct from ^3.1.0 to ^3.3.0 (#580)

116.0.0

Choose a tag to compare

@github-actions github-actions released this 02 Jul 10:03
7638ceb

@metamask/keyring-api 23.4.0

Added

  • Add KeyringRpc and KeyringSnapRpc RPC interfaces to v1 (#582)
    • KeyringRpc covers the standard account-management and request-handling methods.
    • KeyringSnapRpc extends KeyringRpc with optional snap-specific methods: listAccountAssets, listAccountTransactions, getAccountBalances, and setSelectedAccounts.
  • Add KeyringSnapRpc, KeyringSnapRpcMethod, isKeyringSnapRpcMethod, and related request/response structs to keyring v2 (./v2) (#582)
    • KeyringSnapRpc extends KeyringRpc (v2) with four optional snap-specific methods: setSelectedAccounts, getAccountTransactions, getAccountAssets, and getAccountBalances.
    • KeyringSnapRpcMethod spreads all base KeyringRpcMethod values and adds the four snap-specific method names.
  • Add optional snap capability field to KeyringCapabilities (v2) (#582)
    • Flags: snap.assets.metadata (keyring_getAccountAssets), snap.assets.balances (keyring_getAccountBalances), snap.transactions (keyring_getAccountTransactions), snap.selectedAccounts (keyring_setSelectedAccounts).

@metamask/keyring-internal-snap-client 10.0.4

Changed

  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)
  • Bump @metamask/keyring-api from ^23.1.0 to ^23.4.0 (#562, #569, #583)
  • Bump @metamask/keyring-snap-client from ^9.0.2 to ^9.1.0 (#583)

@metamask/eth-snap-keyring 22.4.0

Added

  • Populate v2 SnapKeyring capabilities from the Snap manifest (endowment:keyring) on deserialize (#581)
  • Guard v2 SnapKeyring operations until deserialize has run (throws "SnapKeyring has not been initialized") (#581)

Changed

  • Bump @metamask/snaps-utils from ^12.1.3 to ^12.2.1 (#581)
  • Bump @metamask/keyring-internal-snap-client from ^10.0.3 to ^10.0.4 (#583)
  • Bump @metamask/keyring-snap-sdk from ^9.0.2 to ^9.1.0 (#583)

@metamask/keyring-snap-client 9.1.0

Added

  • Implements KeyringSnapRpc (v2) in KeyringClient (v2) (#582)
    • Exposes all core v2 keyring methods plus optional snap-specific ones: setSelectedAccounts, getAccountTransactions, getAccountAssets, and getAccountBalances.

Changed

  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)
  • Bump @metamask/keyring-api from ^23.1.0 to ^23.4.0 (#562, #569, #583)

@metamask/keyring-snap-sdk 9.1.0

Added

  • Supports new KeyringSnapRpc (v2) in handleKeyringRequest (v2) (#582)
    • Handles the four snap-specific methods (keyring_setSelectedAccounts, keyring_getAccountTransactions, keyring_getAccountAssets, keyring_getAccountBalances) in addition to all core v2 methods.
    • Includes backwards-compatible dispatch for the deprecated v1 method names keyring_listAccountTransactions and keyring_listAccountAssets, forwarding them to getAccountTransactions and getAccountAssets respectively.

Changed

  • Update v1 handleKeyringRequest to accept KeyringSnapRpc instead of Keyring (#582)

115.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 09:09
eacfb38

@metamask/eth-ledger-bridge-keyring 12.2.0

Added

  • Add LedgerDmkBridge and LedgerDmkTransportMiddleware for Ledger Device Management Kit (DMK) support (#473)
    • New LedgerDmkBridge class implementing the LedgerBridge interface via Ledger's DMK.
    • New LedgerDmkTransportMiddleware managing sessions, device discovery, and Ethereum signer lifecycle.
    • DMK error translation utilities (translateDmkError, isDeviceExchangeError) mapping to TransportStatusError.
    • Custom EthGetAppConfigurationCommand for retrieving Ethereum app config via DMK.
    • Session state monitoring with onSessionStateChange observable and isDeviceConnected getter.
    • Add EIP-7702 authorization signing to the Ledger keyring (#564)
    • Not yet functional: both iframe and mobile bridges throw until DMK support lands.
    • Fixes hex v parsing ('1b') for personal_sign and typed data.

Changed

  • Bump @metamask/keyring-api from ^23.1.0 to ^23.3.0 (#562, #569)
  • Bump @metamask/keyring-sdk from ^2.1.1 to ^2.2.0 (#562)

114.0.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 12:02
788df79

@metamask/eth-snap-keyring 22.3.0

Added

  • Add static type for v2 SnapKeyring (#570)

113.0.0

Choose a tag to compare

@github-actions github-actions released this 10 Jun 10:34
aed086a

@metamask/keyring-api 23.3.0

Added

  • Add TransactionType.TokenDisapprove for token disapproval transactions (#568)
  • Add optional TransactionDetails.typeLabel (#568)
    • This can be used to display a custom label regarding the transaction type.

112.0.0

Choose a tag to compare

@github-actions github-actions released this 29 May 10:27
5af1a21

@metamask/keyring-api 23.2.0

Added

  • Add Stellar method signAuthEntry to XlmMethod (#548)
  • Add EthBytesStrictStruct (#555)

Changed

  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)

@metamask/keyring-sdk 2.2.0

Added

  • Add EthKeyringV1Adapter and typed errors for adapting v2 ETH keyrings to legacy ETH keyring signing flows (#555)

Changed

  • Bump @metamask/keyring-api from ^23.1.0 to ^23.2.0 (#562)

@metamask/eth-snap-keyring 22.2.0

Added

  • Add SnapKeyringV1Adapter to adapt Snap v2 keyrings to legacy v1 keyring operations (#557)
    • This adapter mostly exposes EVM signing operations through EthKeyringV1Adapter.
    • This adapter also implements removeAccount the way it was implemented by the legacy Snap keyring (compatible with the KeyringController account removal flow).

Changed

  • Normalize KeyringAccount's address with :accountCreated and setAccounts (#556)
  • Bump @metamask/keyring-sdk from ^2.1.1 to ^2.2.0 (#562)
  • Bump @metamask/keyring-snap-sdk from ^9.0.1 to ^9.0.2 (#562)

@metamask/keyring-snap-sdk 9.0.2

Changed

  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)

Fixed

  • Use KeyringRpc instead of Keyring (v2) in handleKeyringRequest (#561)
    • Snaps do not need to implement the full Keyring (v2) interface, this one is meant to be used in the "client-world".
    • KeyringRpc is a subset of Keyring which only exposes the method that can be used through onKeyringRequest (keyring_* requests).

111.0.0

Choose a tag to compare

@github-actions github-actions released this 26 May 19:15
60b84f8

@metamask/eth-money-keyring 3.0.0

Added

  • Add MoneyKeyring v2 wrapper (#554)

Changed

  • BREAKING: Remove signTransaction pass-through; Money accounts do not sign transactions (#521)
    • Unexport EvmSigner type and rename to MoneySigner; the type was incorrectly exported and didn't represent a full EVM signer.
  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)

110.0.0

Choose a tag to compare

@github-actions github-actions released this 13 May 20:34
11fdb49

@metamask/eth-ledger-bridge-keyring 12.1.0

Added

  • Expose device-management pass-throughs on the V2 LedgerKeyring wrapper: hdPath (getter), bridge (getter), getDeviceId, setDeviceId, setHdPath, getFirstPage, getNextPage, getPreviousPage, forgetDevice, isUnlocked, attemptMakeApp, getAppNameAndVersion. forgetDevice additionally clears the V2 account registry to keep it in sync with the inner keyring. (#551)

@metamask/eth-qr-keyring 2.1.0

Added

  • Expose device-management pass-throughs on the V2 QrKeyring wrapper: getName, getMode, getFirstPage, getNextPage, getPreviousPage, forgetDevice. forgetDevice additionally clears the V2 account registry to keep it in sync with the inner keyring. (#551)

Changed

  • Bump @metamask/keyring-sdk from ^2.0.2 to ^2.1.1 (#544, #546)
  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)

@metamask/eth-trezor-keyring 10.1.0

Added

  • Expose device-management pass-throughs on the V2 TrezorKeyring wrapper (inherited by the V2 OneKeyKeyring): getModel, hdPath (getter), bridge (getter), setHdPath, getFirstPage, getNextPage, getPreviousPage, forgetDevice, isUnlocked. forgetDevice additionally clears the V2 account registry to keep it in sync with the inner keyring. (#551)

Changed

  • Bump @metamask/keyring-sdk from ^2.0.2 to ^2.1.1 (#544, #546)
  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)

109.0.0

Choose a tag to compare

@github-actions github-actions released this 13 May 16:57
929a3b2

@metamask/eth-snap-keyring 22.1.0

Added

  • Add isSnapKeyring (v2) helper (#549)

Changed

  • Bump @metamask/keyring-sdk from ^2.0.2 to ^2.1.1 (#544, #546)
  • Bump @metamask/keyring-utils from ^3.2.0 to ^3.3.1 (#544, #546)