Skip to content

Latest commit

 

History

History
289 lines (188 loc) · 18.1 KB

File metadata and controls

289 lines (188 loc) · 18.1 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/utils from ^11.9.0 to ^11.11.0 (#9074)
  • Bump @metamask/transaction-controller from ^66.0.0 to ^68.0.0 (#8999, #9021, #9027, #9066, #9089)

Added

  • Add token-approval-revocation execution permission type decoding (#8823)

Changed

  • Bump @metamask/transaction-controller from ^65.3.0 to ^66.0.0 (#8796, #8848)

Changed

  • Bump @metamask/network-controller from ^31.0.0 to ^32.0.0 (#8765, #8774)

Changed

  • Bump @metamask/transaction-controller from ^65.1.0 to ^65.3.0 (#8722, #8755)
  • Bump @metamask/network-controller from ^30.1.0 to ^31.0.0 (#8755)

Added

  • Add payee rule decoding for execution permissions, extracting allowed recipient addresses from AllowedTargetsEnforcer (native token) and AllowedCalldataEnforcer (ERC-20 token) caveats (#8668)
  • Add redeemer rule decoding for execution permissions, extracting addresses from RedeemerEnforcer caveats (#8537)
  • Add native-token-allowance and erc20-token-allowance execution permission type decoding (#8553)

Changed

  • Use decodeRedeemerTerms from @metamask/delegation-core instead of a local implementation (#8537)
  • Bump @metamask/delegation-core from ^0.2.0 to ^1.1.0 (#8537)
  • Bump @metamask/transaction-controller from ^64.2.0 to ^65.1.0 (#8482, #8585, #8613, #8691)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

Changed

  • BREAKING: Add status to PermissionInfoWithMetadata type, resolved from onchain data (#8445)
  • Bump @metamask/messenger from ^1.0.0 to ^1.1.1 (#8364, #8373)
  • Bump @metamask/transaction-controller from ^64.0.0 to ^64.2.0 (#8432, #8447)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)

Changed

  • Bump @metamask/transaction-controller from ^63.3.1 to ^64.0.0 (#8359)

Changed

  • BREAKING: Bump @metamask/snaps-controllers from ^17.2.0 to ^19.0.0 (#8319)
    • The controller now requires SnapController:hasSnap instead of SnapController:has.
  • Bump @metamask/snaps-sdk from ^10.3.0 to ^11.0.0 (#8319)
  • Bump @metamask/snaps-utils from ^11.7.0 to ^12.1.2 (#8319)

Added

  • Expose missing public GatorPermissionsController methods through its messenger (#8205)
    • The following actions are now available:
      • GatorPermissionsController:initialize
    • Corresponding action types (e.g. GatorPermissionsControllerInitializeAction) are available as well.

Changed

  • Bump @metamask/base-controller from ^9.0.0 to ^9.0.1 (#8317)
  • Bump @metamask/messenger from ^0.3.0 to ^1.0.0 (#8317)
  • Bump @metamask/transaction-controller from ^63.0.0 to ^63.3.1 (#8272, #8301, #8313, #8317)

Changed

  • Bump @metamask/transaction-controller from ^62.21.0 to ^63.0.0 (#8217, #8225)

Changed

  • Improves permission validation during decoding (#7844, #8127)
    • Validates ExactCalldataEnforcer and ValueLteEnforcer caveat terms
    • Validates that periodAmount is positive in erc20-token-periodic and native-token-periodic permission types
    • Validates that tokenAddress is a valid hex string in erc20-token-periodic and erc20-token-stream permission types
  • Bump @metamask/transaction-controller from ^62.17.0 to ^62.21.0 (#7996, #8005, #8031, #8104, #8140)

Changed

  • BREAKING: Refactor GatorPermissionsController: simplified config, permission storage, and public API (#7847)
    • Constructor now requires config, internal configuration is removed from controller state
    • New initialize() function performs a syncronisation process if required when the controller is first initialized
    • Replaces gatorPermissionsMapSerialized with grantedPermissions property in internal state, replaces related types, and utility functions
    • fetchAndUpdateGatorPermissions() no longer accepts parameters and resolves to void
    • getPendingRevocations / pendingRevocations getter replaced by isPendingRevocation(permissionContext); list on state.pendingRevocations
  • Bump @metamask/transaction-controller from ^62.11.0 to ^62.17.0, (#7775, #7802, #7832, #7854, #7872, #7897)

Fixed

  • Bump @metamask/transaction-controller from ^62.10.0 to ^62.11.0 to resolve mismatching WebSocketState enum export in @metamask/core-backend transient dependency (#7760)

Changed

  • Bump @metamask/transaction-controller from ^62.9.2 to ^62.10.0 (#7737)

Fixed

  • Correctly validate erc20-token-revocation terms when decoding permission. (#7729)

Changed

  • Calls to permissionsProvider_submitRevocation now include the hash of the transaction that revoked the permission if available. (#7503)
  • Bump @metamask/transaction-controller from ^62.9.1 to ^62.9.2 (#7642)

Fixed

  • Ensure revocation transaction is successful before marking stored permission as revoked (#7503)

Changed

  • Bump @metamask/snaps-controllers from ^14.0.1 to ^17.2.0 (#7550)
  • Bump @metamask/snaps-sdk from ^9.0.0 to ^10.3.0 (#7550)
  • Bump @metamask/snaps-utils from ^11.0.0 to ^11.7.0 (#7550)
  • Upgrade @metamask/utils from ^11.8.1 to ^11.9.0 (#7511)
  • Bump @metamask/transaction-controller from ^62.5.0 to ^62.9.1 (#7430, #7494, #7596, #7602, #7604)
  • BREAKING: Gator Permissions Controller and Gator Permission Decoder core types have been updated to comply with 7715 spec revisions (#7613)
    • Bump @metamask/7715-permission-type from ^0.4.0 to ^0.5.0

Added

  • Export DELEGATION_FRAMEWORK_VERSION constant to indicate the supported Delegation Framework version (#7195)

Changed

  • BREAKING: Permission decoding now rejects TimestampEnforcer caveats with zero timestampBeforeThreshold values (#7195)
  • PermissionResponseSanitized now includes rules property for stronger typing support (#7195)
  • Permission decoding now resolves erc20-token-revocation permission type (#7299)
  • Differentiate erc20-token-revocation permissions from other in controller state (#7318)
  • Bump @metamask/transaction-controller from ^62.3.1 to ^62.5.0 (#7289, #7325)

Added

  • Refresh gator permissions map after revocation state change (#7235)
  • New submitDirectRevocation method for already-disabled delegations that don't require an on-chain transaction (#7244)

Changed

  • Move peer dependencies for controller and service packages to direct dependencies (#7209, #7220, #7236, #7257)
    • The dependencies moved are:
      • @metamask/snaps-controllers (^14.0.1)
      • @metamask/transaction-controller (^62.3.1)
    • 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.

Changed

  • BREAKING: Bump @metamask/transaction-controller from ^61.1.0 to ^62.0.0 (#7202)

Fixed

  • Does not add a pending revocation if user cancels the transaction (#7157)
  • BREAKING The GatorPermissionsController messenger must allow TransactionController:transactionApproved and TransactionController:transactionRejected events (#7157)

Added

  • BREAKING: Expose list of pending revocations in state (#7055)
    • Add pendingRevocations property to state
    • Add pendingRevocations getter to controller, which accesses the same property in state
  • BREAKING: The GatorPermissionsController messenger must allow TransactionController:transactionConfirmed, TransactionController:transactionFailed, and TransactionController:transactionDropped events (#6713)
  • Add submitRevocation and addPendingRevocation methods to GatorPermissionsController (#6713)
    • These are also available as actions (GatorPermissionsController:submitRevocation and GatorPermissionsController:addPendingRevocation)

Changed

  • BREAKING: Add @metamask/transaction-controller as peer dependency (#7058)

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6461)
    • Previously, GatorPermissionsController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Metadata property anonymous renamed to includeInDebugSnapshot (#6461)
  • 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)

Changed

  • Bump @metamask/utils from ^11.8.0 to ^11.8.1 (#6708)
  • Bump @metamask/base-controller from ^8.4.0 to ^8.4.1 (#6807)

Added

  • Add two new controller state metadata properties: includeInStateLogs and usedInUi (#6552)
  • Add method to decode permission from signTypedData (#6556)

Changed

  • Bump @metamask/utils from ^11.4.2 to ^11.8.0 (#6588)
  • Bump @metamask/base-controller from ^8.3.0 to ^8.4.0 (#6632)
  • Function decodePermissionFromPermissionContextForOrigin is now synchronous (#6656)

Fixed

  • Fix incorrect default Gator Permissions SnapId (#6546)

Added

  • Initial release (#6033)