Skip to content

Latest commit

 

History

History
359 lines (236 loc) · 21.2 KB

File metadata and controls

359 lines (236 loc) · 21.2 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Changed

  • Bump @metamask/controller-utils from ^11.19.0 to ^12.0.0 (#8344, #8755)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/network-controller from ^30.0.1 to ^31.0.0 (#8636, #8755)

Changed

  • Bump @metamask/base-controller from ^9.0.0 to ^9.0.1 (#8317)
  • Bump @metamask/network-controller from ^30.0.0 to ^30.0.1 (#8317)

Changed

  • Bump @metamask/network-controller from ^29.0.0 to ^30.0.0 (#7996)
  • Bump @metamask/controller-utils from ^11.18.0 to ^11.19.0 (#7995)

Changed

  • Bump @metamask/network-controller from ^28.0.0 to ^29.0.0 (#7642)

Changed

  • Upgrade @metamask/utils from ^11.8.1 to ^11.9.0 (#7511)
  • Move peer dependencies for controller and service packages to direct dependencies (#7209, #7258, #7534, #7583, #7604)
    • The dependencies moved are:
      • @metamask/network-controller (^28.0.0)
    • In clients, it is now possible for multiple versions of these packages to exist in the dependency tree.
      • For example, this scenario would be valid: a client relies on @metamask/controller-a 1.0.0 and @metamask/controller-b 1.0.0, and @metamask/controller-b depends on @metamask/controller-a 1.1.0.
    • Note, however, that the versions specified in the client's package.json always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication.
  • Bump @metamask/controller-utils from ^11.16.0 to ^11.18.0 (#7534, #7583)

Changed

  • Bump @metamask/controller-utils from ^11.15.0 to ^11.16.0 (#7202)
  • BREAKING: Bump @metamask/network-controller from ^25.0.0 to ^26.0.0 (#7202)

Changed

  • BREAKING: Use new Messenger from @metamask/messenger for StaticIntervalPollingController and BlockTrackerPollingController (#6444)
    • Previously, StaticIntervalPollingController and BlockTrackerPollingController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Bump @metamask/network-controller from ^24.0.0 to ^25.0.0 (#6962)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

Changed

Changed

  • BREAKING: Bump peer dependency @metamask/network-controller to ^24.0.0 (#5999)
  • Bump @metamask/base-controller to ^8.0.1 (#5722)
  • Bump @metamask/controller-utils to ^11.10.0 (#5935, #5583, #5765, #5812)

Changed

  • BREAKING: Bump peer dependency @metamask/network-controller to ^23.0.0 (#5507)
  • Bump @metamask/controller-utils to ^11.5.0 (#5439)
  • Bump @metamask/utils to ^11.2.0 (#5301)

Changed

  • Bump @metamask/base-controller from ^7.0.2 to ^8.0.0 (#5079), (#5135), (#5305)
  • Bump @metamask/controller-utils from ^11.4.4 to ^11.5.0 (#5135), (#5272)
  • Bump @metamask/utils from ^10.0.0 to ^11.1.0 (#5080), (#5223)

Removed

  • BREAKING: Remove BlockTrackerPollingControllerV1, StaticIntervalPollingControllerV1 (#5018)

Changed

  • Bump @metamask/controller-utils from ^11.4.2 to ^11.4.4 (#4915, #5012)

Fixed

  • Correct ESM-compatible build so that imports of the following packages that re-export other modules via export * are no longer corrupted: (#5011)
    • fast-json-stable-stringify

Changed

  • Bump @metamask/base-controller from ^7.0.1 to ^7.0.2 (#4862)
  • Bump @metamask/controller-utils from ^11.4.0 to ^11.4.2 (#4862, #4870)

Changed

  • BREAKING: Bump @metamask/network-controller peer dependency to ^22.0.0 (#4841)
  • Bump @metamask/controller-utils to ^11.4.0 (#4834)
  • Bump @metamask/utils to ^10.0.0 (#4831)

Changed

  • BREAKING: AbstractPollingController now accepts a generic type parameter PollingInput which is polymorphic, unlike the previous monomorphic required input of a network client id (#4752)
  • BREAKING: The AbstractPollingController method startPollingByNetworkClientId has been renamed to startPolling (#4752)
  • BREAKING: The AbstractPollingController method onPollingComplete now returns the entire input object of type PollingInput, instead of a network client id (#4752)

Fixed

  • Produce and export ESM-compatible TypeScript type declaration files in addition to CommonJS-compatible declaration files (#4648)
    • Previously, this package shipped with only one variant of type declaration files, and these files were only CommonJS-compatible, and the exports field in package.json linked to these files. This is an anti-pattern and was rightfully flagged by the "Are the Types Wrong?" tool as "masquerading as CJS". All of the ATTW checks now pass.
  • Remove chunk files (#4648).
    • Previously, the build tool we used to generate JavaScript files extracted common code to "chunk" files. While this was intended to make this package more tree-shakeable, it also made debugging more difficult for our development teams. These chunk files are no longer present.

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

Changed

  • Remove @metamask/network-controller dependency #4556
    • This was listed under peerDependencies already, so it was redundant as a dependency.
  • Upgrade TypeScript version to ~5.0.4 and set moduleResolution option to Node16 (#3645)
  • Bump @metamask/base-controller from ^6.0.0 to ^6.0.2 (#4517, #4544)
  • Bump @metamask/controller-utils from ^11.0.0 to ^11.0.2 (#4517, #4544)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#4516, #4529)

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)

Changed

  • BREAKING: Bump minimum Node version to 18.18 (#3611)
  • BREAKING: Bump dependency and peer dependency @metamask/network-controller to ^19.0.0 (#4352)
  • Bump @metamask/base-controller to ^6.0.0 (#4352)
  • Bump @metamask/controller-utils to ^11.0.0 (#4352)

Changed

  • BREAKING: Bump dependency and peer dependency @metamask/network-controller to ^18.1.3 (#4342)
  • Bump @metamask/controller-utils to ^10.0.0 (#4342)

Fixed

  • StaticIntervalPollingControllerOnly, StaticIntervalPollingController, and StaticIntervalPollingControllerV1 now properly stops polling when a stop is requested while _executePoll has not yet resolved for the current loop (#4230)

Changed

  • Bump TypeScript version to ~4.9.5 (#4084)
  • Bump @metamask/network-controller to ^18.1.0 (#4121)
  • Bump @metamask/controller-utils to ^9.1.0 (#4153, #4065)

Fixed

  • Fix types field in package.json (#4047)

Added

  • BREAKING: Add ESM build (#3998)
    • It's no longer possible to import files from ./dist directly.

Changed

  • BREAKING: Bump @metamask/base-controller to ^5.0.0 (#4039)
    • This version has a number of breaking changes. See the changelog for more.
  • BREAKING: Bump dependency and peer dependency on @metamask/network-controller to ^18.0.0 (#4039)
  • Bump @metamask/controller-utils to ^9.0.0 (#4039)

Changed

  • Bump @metamask/controller-utils to ^8.0.4 (#4007)
  • Bump @metamask/network-controller to ^17.2.1 (#4007)

Changed

  • BREAKING: Bump @metamask/network-controller peer dependency to ^17.2.0 (#3821)
  • Bump @metamask/utils to ^8.3.0 (#3769)
  • Bump @metamask/base-controller to ^4.1.1 (#3760, #3821)
  • Bump @metamask/controller-utils to ^8.0.2 (#3821)

Changed

  • BREAKING: Bump @metamask/network-controller dependency and peer dependency from ^17.0.0 to ^17.1.1 (#3695)
  • Bump @metamask/base-controller to ^4.0.1 (#3695)
  • Bump @metamask/controller-utils to ^8.0.1 (#3695, #3678)

Added

  • BlockTrackerPollingController, BlockTrackerPollingControllerV1 and BlockTrackerPollingControllerOnly have been added and can be used by subclasses to poll with a blockTracker using the same API as the StaticIntervalPollingController versions - the only exception is the requirement to implement the abstract method _getNetworkClientById on subclasses.

Changed

  • BREAKING: PollingController, PollingControllerV1 and PollingControllerOnly are all removed and replaced by StaticIntervalPollingController, StaticIntervalPollingControllerV1 and StaticIntervalPollingControllerOnly (#3636)

Changed

  • BREAKING: Bump @metamask/base-controller to ^4.0.0 (#2063)
    • This is breaking because the type of the messenger has backward-incompatible changes. See the changelog for this package for more.
  • Bump @metamask/controller-utils to ^6.0.0 (#2063)
  • Bump @metamask/network-controller to ^17.0.0 (#2063)

Changed

  • BREAKING: Bump dependency and peer dependency on @metamask/network-controller to ^16.0.0
  • Bump @metamask/utils from 8.1.0 to 8.2.0 (#1957)

Fixed

  • Export PollingControllerOnly (#1921)

Added

  • Add PollingControllerOnly to extend from an empty class. This will allow classes that previously are just classes that don't extend from BaseV1 or V2 to extend from this new PollingControllerOnly. (#1873)

Changed

  • BREAKING: _executePoll() is called immediately on start if no polling interval is already active for the networkClientId + options combination (#1874)
  • Bump dependency and peer dependency on @metamask/network-controller to ^15.1.0

Added

  • Add way to start and stop different polling sessions for the same network client ID by providing extra scoping data (#1776)
    • Add optional second argument to stopPollingByPollingToken (formerly stopPollingByNetworkClientId)
    • Add optional second argument to onPollingCompleteByNetworkClientId

Changed

  • BREAKING: Bump dependency and peer dependency on @metamask/network-controller to ^15.0.0
  • BREAKING: Polling controllers are expected to override _executePoll instead of executePoll (#1810)
  • BREAKING: Rename stopPollingByNetworkClientId to stopPollingByPollingToken (#1810)
  • Add dependency on fast-json-stable-stringify ^2.1.0

Added

  • Initial release