Skip to content

638.0.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 10:32
17e48a4

@metamask/assets-controllers 83.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/core-backend from ^2.0.0 to ^3.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

Fixed

  • Downgrade multiformats to ^9.9.0 to avoid ESM-only dependency (#6920)

@metamask/bridge-controller 55.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/assets-controllers from ^82.0.0 to ^83.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/bridge-status-controller 55.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/bridge-controller from ^54.0.0 to ^55.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/core-backend 3.0.0

Added

  • Add forceReconnection() method to BackendWebSocketService for controlled subscription state cleanup (#6861)
    • Performs a controlled disconnect-then-reconnect sequence with exponential backoff
    • Useful for recovering from subscription/unsubscription issues and cleaning up orphaned subscriptions
    • Add BackendWebSocketService:forceReconnection messenger action
  • Add stable connection timer to prevent rapid reconnection loops (#6861)
    • Connection must stay stable for 10 seconds before resetting reconnect attempts
    • Prevents issues when server accepts connection then immediately closes it

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Update AccountActivityService to use new forceReconnection() method instead of manually calling disconnect/connect (#6861)
  • BREAKING: Update allowed actions for AccountActivityService messenger: remove BackendWebSocketService:disconnect, add BackendWebSocketService:forceReconnection (#6861)
  • Improve reconnection scheduling in BackendWebSocketService to be idempotent (#6861)
    • Prevents duplicate reconnection timers and inflated attempt counters
    • Scheduler checks if reconnect is already scheduled before creating new timer
  • Improve error handling in BackendWebSocketService.connect() (#6861)
    • Always schedule reconnect on connection failure (exponential backoff prevents aggressive retries)
    • Remove redundant schedule calls from error paths
  • Update BackendWebSocketService.disconnect() to reset reconnect attempts counter (#6861)
  • Update BackendWebSocketService.disconnect() return type from Promise<void> to void (#6861)
  • Improve logging throughout BackendWebSocketService for better debugging (#6861)

Fixed

  • Fix potential race condition in BackendWebSocketService.connect() that could bypass exponential backoff when reconnect is already scheduled (#6861)
  • Fix memory leak from orphaned timers when multiple reconnects are scheduled (#6861)
  • Fix issue where reconnect attempts counter could grow unnecessarily with duplicate scheduled reconnects (#6861)