Skip to content

Releases: MetaMask/core

1007.0.0

29 May 16:41
fa1ced1

Choose a tag to compare

@metamask/bridge-controller 73.2.0

Added

  • Add gasIncluded and gasIncluded7702 to BatchSellTradesResponseSchema (#8775)
  • Add optional has_sufficient_gas_for_quote property to QuotesReceived event and getQuotesReceivedProperties utility to allow clients to pass whether the user has sufficient gas to submit the quote (#8895)

Changed

  • Bump @metamask/assets-controller from ^8.0.2 to ^8.1.0 (#8919)

Fixed

  • Fix EVM token exchange-rate lookups when asset ID address casing differs from marketData keys, restoring Batch Sell network fee fiat values (#8928)

@metamask/bridge-status-controller 72.0.0

Added

  • BREAKING: Implement submitBatchSell method to submit BatchSell transactions to the TransactionController via STX or 7702. This requires clients to add BridgeControllerGetStateAction as an allowed action (#8775)
  • Wire up post-submission BatchSell history (#8775)
    • Create a history item for each STX trade in a batch, with the same batchId (key by txMeta.id)
    • Create a history item for each trade submitted through a 7702 batch (key by quoteId). These won't have a reference to the batchId, and will only include quote and fee data
    • Create a history item for the 7702 batch's delegation tx (key by txMeta.id). BatchSell delegation transactions include a list of quoteIds to associate the corresponding BatchSell trades with the delegation tx
    • Expose getBatchSellHistoryItemsForTxHash util that returns history items matching either a delegation tx hash or an STX hash
    • Expose isBatchSellHistoryItem util that returns whether a history item is a BatchSell operation

Changed

  • Update controller and submit strategies to support an array of quotes instead of a single one (#8775)
  • Refactor tx submission into strategies to reduce quote-specific branching in the controller, and to de-duplicate shared logic between submitTx and submitIntent. Each strategy yields payloads that the controller uses to update history, poll, and publish metrics (#8257)
  • Bump @metamask/bridge-controller from ^73.0.1 to ^73.2.0 (#8915, #8935)
  • Refactor batch transaction utils to handle multiple quote requests within a batch (for BatchSell integration) (#8886)

Fixed

  • Use txFee from the bridge-api whenever it's provided (#8805)
  • Save swap failure/completion time to txHistory to populate actual_time_minutes event property (#8805)

@metamask/transaction-pay-controller 22.8.0

Added

  • Add getPaymentOverrideData callback to TransactionPayControllerOptions, when paymentOverride is defined on a transaction, this callback is invoked the resulting transactions are injected into the relay quote steps (#8870)
  • Add Server pay strategy that routes quote, submit, and status requests through the MetaMask intents API (#8894)

Changed

  • Bump @metamask/assets-controllers from ^108.1.0 to ^108.2.0 (#8911)
  • Bump @metamask/assets-controller from ^8.0.1 to ^8.1.0 (#8912, #8919)
  • Bump @metamask/bridge-status-controller from ^71.2.0 to ^72.0.0 (#8912, #8935)
  • Bump @metamask/bridge-controller from ^73.0.1 to ^73.2.0 (#8915, #8935)

1006.0.0

29 May 08:40
8071c73

Choose a tag to compare

@metamask/ai-controllers 0.7.0

Changed

  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)

Fixed

  • RelatedAsset.name and RelatedAsset.sourceAssetId are now optional in both the superstruct schema and TypeScript type, so a relatedAsset missing either field no longer causes fetchMarketOverview to throw API_INVALID_RESPONSE. (#8920)

1005.0.0

28 May 10:08
cad7c25

Choose a tag to compare

@metamask/assets-controller 8.1.0

Changed

  • AssetsController now re-evaluates the isEnabled callback when handling data-source active chain updates, instead of snapshotting its return value at construction (#8914)
  • AssetsController no longer skips constructor initialization when isEnabled returns false at construction time, so the controller can handle active chain updates after isEnabled later becomes true (#8914)

1004.0.0

27 May 18:03
fa26197

Choose a tag to compare

@metamask/bridge-controller 73.1.0

Added

  • Expose gasless batch loading state through selectBatchSellTrades's isLoading value (#8913)

Changed

  • Bump @metamask/assets-controller from ^8.0.0 to ^8.0.2 (#8874, #8912)
  • Bump @metamask/assets-controllers from ^108.1.0 to ^108.2.0 (#8911)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)
  • Bump @metamask/profile-sync-controller from ^28.1.0 to ^28.1.1 (#8912)

1003.0.0

27 May 15:38
256a0dd

Choose a tag to compare

@metamask/account-tree-controller 7.5.0

Added

  • Add group naming support for KeyringType (v2) (#8885)
  • Add KeyringType (v2) in Snap matching rule (#8885)

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)
  • Bump @metamask/multichain-account-service from ^10.0.0 to ^10.0.1 (#8912)
  • Bump @metamask/profile-sync-controller from ^28.1.0 to ^28.1.1 (#8912)

@metamask/accounts-controller 38.1.2

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/assets-controller 8.0.2

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/assets-controllers from ^108.1.0 to ^108.2.0 (#8911)
  • Bump @metamask/account-tree-controller from ^7.4.0 to ^7.5.0 (#8912)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)
  • Bump @metamask/core-backend from ^6.3.0 to ^6.3.1 (#8912)

@metamask/bridge-status-controller 71.2.1

Changed

  • Bump @metamask/bridge-controller from ^72.0.4 to ^73.0.1 (#8850, #8866)
  • Remove unnecessary type assertions for bridge quotes (#8805)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)
  • Bump @metamask/profile-sync-controller from ^28.1.0 to ^28.1.1 (#8912)

@metamask/claims-controller 0.5.2

Changed

  • Bump @metamask/controller-utils from ^12.0.0 to ^12.1.0 (#8774)
  • Bump @metamask/profile-sync-controller from ^28.0.2 to ^28.1.1 (#8783, #8912)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/config-registry-controller 0.3.2

Changed

  • Bump @metamask/controller-utils from ^12.0.0 to ^12.1.0 (#8774)
  • Bump @metamask/profile-sync-controller from ^28.0.2 to ^28.1.1 (#8783, #8912)
  • Bump @metamask/polling-controller from ^16.0.5 to ^16.0.6 (#8834)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/core-backend 6.3.1

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)
  • Bump @metamask/profile-sync-controller from ^28.1.0 to ^28.1.1 (#8912)

@metamask/delegation-controller 3.0.1

Changed

  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^26.0.0 (#8634, #8665, #8722, #8912)

@metamask/keyring-controller 26.0.0

Changed

  • BREAKING: Change KeyringSelectorV2 type selectors for withKeyringV2 and withKeyringV2Unsafe to use KeyringType (v2 variant) (#8901)
    • Use values such as KeyringType.Hd instead of legacy KeyringTypes.hd.
  • Deprecate KeyringTypes (#8907)
    • Use KeyringTypes from @metamask/keyring-api/v2 if your keyring has a v2 builder.

@metamask/money-account-controller 0.3.1

Changed

  • Bump @metamask/accounts-controller from ^38.0.0 to ^38.1.2 (#8755, #8774, #8912)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/money-account-upgrade-controller 2.0.3

Changed

  • Bump @metamask/delegation-core from ^2.0.0 to ^2.2.1 (#8823)
  • Bump @metamask/delegation-deployments from ^1.3.0 to ^1.4.0 (#8823)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/delegation-controller from ^3.0.0 to ^3.0.1 (#8912)

@metamask/multichain-account-service 10.0.1

Changed

  • Bump @metamask/snap-account-service from ^0.1.0 to ^0.2.1 (#8844, #8912)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/accounts-controller from ^38.1.1 to ^38.1.2 (#8912)

@metamask/notification-services-controller 24.1.2

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)
  • Bump @metamask/profile-sync-controller from ^28.1.0 to ^28.1.1 (#8912)

@metamask/profile-metrics-controller 3.1.5

Changed

  • Bump @metamask/accounts-controller from ^38.1.0 to ^38.1.2 (#8774, #8912)
  • Bump @metamask/controller-utils from ^12.0.0 to ^12.1.0 (#8774)
  • Bump @metamask/profile-sync-controller from ^28.0.2 to ^28.1.1 (#8783, #8912)
  • Bump @metamask/transaction-controller from ^65.3.0 to ^66.0.0 (#8796, #8848)
  • Bump @metamask/polling-controller from ^16.0.5 to ^16.0.6 (#8834)
  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/profile-sync-controller 28.1.1

Changed

  • Bump @metamask/keyring-controller from ^25.5.0 to ^26.0.0 (#8912)

@metamask/seedless-onboarding-controller 10.0.0

Added

  • Add runMigrations method to run pending data migrations for legacy secrets (#7284)
  • Add setMigrationVersion method to set migration version directly for new users (#7284)
  • Add SeedlessOnboardingMigrationVersion enum for tracking migration versions (#7284)
  • Add migrationVersion to controller state to track applied migrations (#7284)
  • Add itemId, dataType, createdAt, and storageVersion storage-level properties to SecretMetadata (#7284)
  • Add SecretMetadata.compare static method for comparing metadata with PrimarySrp prioritization and TIMEUUID-based sorting (#7284)
  • Add SecretMetadata.compareByTimestamp static method for comparing metadata by timestamp (#7284)
  • Add SecretMetadata.matchesType static method for checking if metadata matches a given type (#7284)
  • Re-export EncAccountDataType from @metamask/toprf-secure-backup (#7284)
  • Add third generic type parameter EncryptionResult to SeedlessOnboardingController and SeedlessOnboardingControllerOptions, constrained by EncryptionResultConstraint and defaulting to DefaultEncryptionResult, so the vault encryptor matches the full Encryptor typing from @metamask/keyring-controller (#8411)

Changed

Read more

1002.0.0

27 May 13:55
003e932

Choose a tag to compare

@metamask/assets-controllers 108.2.0

Added

  • Add inEVM Mainnet (chain 2525) and ICB Network (chain 73115) to SPOT_PRICES_SUPPORT_INFO (#8887)

Changed

  • Bump @metamask/transaction-controller from ^65.3.0 to ^66.0.0 (#8796, #8848)
  • Bump @metamask/core-backend from ^6.2.2 to ^6.3.0 (#8813)
  • Bump @metamask/phishing-controller from ^17.1.2 to ^17.2.0 (#8819)
  • Bump @metamask/network-enablement-controller from ^5.1.1 to ^5.2.0 (#8834)
  • Bump @metamask/polling-controller from ^16.0.5 to ^16.0.6 (#8834)

Fixed

  • Fix incorrect hex key for Blast Mainnet in SPOT_PRICES_SUPPORT_INFO (0x13c310x13e31), which previously caused native-token price fetching to silently fail for that chain (#8887)
  • Fixed Forma (chain 984122) native token price resolution by requesting TIA as the zero-address native asset (erc20:0x0000000000000000000000000000000000000000) instead of a non-canonical SLIP-44 reference (#8873)

1001.0.0

27 May 13:22
2758e86

Choose a tag to compare

@metamask/wallet 1.0.0

Added

  • Initial release (#8838)

1000.0.0

22 May 10:12
b82e681

Choose a tag to compare

@metamask/perps-controller 6.3.0

Added

  • Add slippage controls so users can configure per-order slippage tolerance for market trades (#8871)
  • Track vip_tier and vip_discount properties on perps trading events for fee analytics (#8871)
  • Surface an in-app banner during an ongoing HyperLiquid outage so users see degraded trading status (#8871)
  • Expose subpath exports for ./constants, ./constants/*, ./types, and ./utils/* so consumers using legacy node module resolution can deep-import compiled entry points without losing tree-shaking (#8883)

Fixed

  • Prefer the currently selected EVM account when resolving the trading account so account switching is honored across providers (#8871)
  • Suppress User or API Wallet does not exist Sentry noise from unfunded wallets that have not interacted with HyperLiquid (#8871)
  • Approve the HyperLiquid builder fee when missing so order submission succeeds after fresh wallet setup (#8871)

999.0.0

21 May 17:06
b7c6b80

Choose a tag to compare

@metamask/analytics-controller 1.1.0

Added

  • Optional persisted event queue support in AnalyticsController, disabled by default. (#8797)
  • Add optional analytics context on trackEvent, identify, and trackView to forward platform-specific context to AnalyticsPlatformAdapter implementations (#8835)
  • Optional skipUUIDv4Check on AnalyticsPlatformAdapter to allow non-UUIDv4 analyticsId strings when constructing AnalyticsController (#8543)

Changed

  • Mark analyticsId as persisted (persist: true) in AnalyticsController state metadata so it is saved and restored with optedIn when using a persisted controller composition (#8542)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)

998.0.0

21 May 12:32
0573a8c

Choose a tag to compare

@metamask/transaction-pay-controller 22.7.0

Added

  • Add paymentOverride property (type PaymentOverride) to TransactionConfig and TransactionData, settable via setTransactionConfig (#8858)

Changed

  • Bump @metamask/assets-controller from ^8.0.0 to ^8.0.1 (#8874)