Skip to content

Releases: MetaMask/snaps

0.20.0

Choose a tag to compare

@github-actions github-actions released this 25 Aug 08:39
3d07a7f

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-controllers

Added

  • BREAKING: Add Transaction Insight API (#642)
    • This feature required changes to the RPC request handling functionality, hence the breaking change
  • Register missing actions (#659)
    • All APIs accessed outside the SnapController are now registered as actions in the messaging system

Changed

  • BREAKING: Simplify manifest format for permission caveats (#705)
  • Reduce TypeScript compilation target for snap-controllers (#708)
  • Move all internal types from @metamask/snap-types to @metamask/snap-utils (#695)

Removed

  • BREAKING: Removed ExternalResourceController (#701)

examples

Changed

  • No changes this release.

@metamask/execution-environments

Added

  • BREAKING: Add Transaction Insight API (#642)
    • Part of this change made changes to the execution environments to support multiple request handlers
    • It also changed the exports of @metamask/execution-environments

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Changed

  • No changes this release.

@metamask/snaps-webpack-plugin

Changed

  • No changes this release.

@metamask/rpc-methods

Added

  • BREAKING: Add Transaction Insight API (#642)
  • Add snap_getBip44Entropy RPC method and deprecate snap_getBip44Entropy_* (#690)

Changed

  • BREAKING: Simplify manifest format for permission caveats (#705)

@metamask/snap-types

Added

  • BREAKING: Add Transaction Insight API (#642)

Removed

  • BREAKING: Move all internal types from @metamask/snap-types to @metamask/snap-utils (#695)
    • Previously accessible types can now be accessed by importing @metamask/snap-utils

@metamask/snap-utils

Added

  • BREAKING: Add Transaction Insight API (#642)
  • Add internal types from @metamask/snap-types (#695)

Changed

  • BREAKING: Simplify manifest format for permission caveats (#705)
  • Reduce TypeScript compilation target for snap-controllers (#708)

0.19.1

Choose a tag to compare

@github-actions github-actions released this 19 Aug 16:40
73c2193

@metamask/snaps-cli

Fixed

  • Fixed 0.19.0 not being able to run (#697)

@metamask/snap-controllers

Changed

  • No changes this release.

examples

Added

  • Generate source maps from modified code (#615)

@metamask/execution-environments

Changed

  • No changes this release.

@metamask/snaps-browserify-plugin

Added

  • Generate source maps from modified code (#615)

@metamask/rollup-plugin-snaps

Added

  • Generate source maps from modified code (#615)

@metamask/snaps-webpack-plugin

Added

  • Generate source maps from modified code (#615)

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-utils

Added

  • Generate source maps from modified code (#615)

0.19.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 11:11
0e22a6b

@metamask/snaps-cli

Added

  • Add 'Access-Control-Allow-Origin': * to serve (#638)

Changed

  • BREAKING: Replace RegEx-based bundle processing and comment stripping with an AST-based solution (#583)

@metamask/snap-controllers

Fixed

  • Fixed update snap approval missing metadata (#673)
  • Fixed executors sending malformed JSON-RPC notifications (#639)

examples

Changed

  • No changes this release.

@metamask/execution-environments

Fixed

  • Fixed network teardown so that snaps can't be escape by late returning promises (#661)

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Changed

  • No changes this release.

@metamask/snaps-webpack-plugin

Changed

  • No changes this release.

@metamask/rpc-methods

Added

  • BREAKING: Add snap_getBip32Entropy method (#683)
  • Add new validation and limit for storage (#621)

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-utils

Changed

  • Move eval functionality to utils package (#666)
  • Move manifest handling functionality to utils (#652)
  • Move JSON schemas and controller utils to utils package (#623)

Fixed

  • Fixed missing AbortSignal in default endowments (#682)

0.18.1

Choose a tag to compare

@github-actions github-actions released this 18 Jul 11:47
f83cb88

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-controllers

Changed

  • No changes this release.

examples

Changed

  • No changes this release.

@metamask/execution-environments

Fixed

  • Fix error serialization issues (#637)

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Changed

  • No changes this release.

@metamask/snaps-webpack-plugin

Changed

  • No changes this release.

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-utils

Changed

  • No changes this release.

0.18.0

Choose a tag to compare

@github-actions github-actions released this 14 Jul 15:11
2bca8b5

@metamask/snaps-cli

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)
  • Update template files (#632)

@metamask/snap-controllers

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)
  • BREAKING: Add browser entrypoint for execution services (#629)
    • Node.js execution services are now omitted in browser environments

examples

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/execution-environments

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

Fixed

  • Fix crypto and SubtleCrypto endowments (#631)

@metamask/snaps-browserify-plugin

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/rollup-plugin-snaps

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/snaps-webpack-plugin

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/rpc-methods

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/snap-types

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

@metamask/snap-utils

Changed

  • Reduce TypeScript compilation target to ES2017 (#628)

0.17.0

Choose a tag to compare

@github-actions github-actions released this 13 Jul 16:14
503fc8e

@metamask/snaps-cli

Added

  • Add a TypeScript template for mm-snap init (#546)
  • Add serving to mm-snap watch (#507)

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

Fixed

  • Fix segfault when using mm-snap watch (#556)

@metamask/snap-controllers

Added

  • Add snap blocklist functionality (#597)
  • Add Node.js worker_threads execution environment (#587)
  • Add Node.js child_process execution environment (#523)
  • Added network endowment teardown (#514)

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)
  • BREAKING: Remove ExecutionService actions from constructor arguments (#486)
  • BREAKING: Emit appropriate snap objects for SnapController events (#608)
  • BREAKING: Replace getRpcMessageHandler action with handleRpcRequest (#497, #557)
  • Monitor outbound snap requests to pause request timeout (#593)
  • Change Update Snap requestData (#614)

Removed

  • Remove WebWorker implementation (#591)

examples

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

@metamask/execution-environments

Added

  • Add Node.js child_process execution environment (#523)
  • Add Node.js worker_threads execution environment (#587)
  • Added network endowment teardown (#514)

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)
  • Monitor outbound snap requests to pause request timeout (#593)

Removed

  • Remove WebWorker implementation (#591)

@metamask/snaps-browserify-plugin

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

@metamask/rollup-plugin-snaps

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

@metamask/snaps-webpack-plugin

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

@metamask/rpc-methods

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)
  • BREAKING: Replace getRpcMessageHandler action with handleRpcRequest (#497, #557)

@metamask/snap-types

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

Removed

  • Remove ErrorMessageEvent and ExecutionServiceMessenger types (#486)
    • These types are now available via @metamask/snap-controllers

@metamask/snap-utils

Changed

  • BREAKING: Bump minimum Node version to 16 (#601)

0.16.0

Choose a tag to compare

@github-actions github-actions released this 14 Jun 22:10
e9dbe49

@metamask/snaps-cli

Changed

  • BREAKING: Snaps are now required to export onRpcRequest to receive RPC requests (#481, #533, #538, #541, #544)
    • The type of the function is available in @metamask/snap-types as OnRpcRequestHandler.

Fixed

  • Fix importing local files in TypeScript Snaps (#527)
  • Fix build command when the CLI is installed globally (#542)

@metamask/snap-controllers

Added

  • BREAKING: Encrypt Snap state by default (#369)
    • Breaks existing installed snaps that use snap_manageState. All such Snaps must be reinstalled.

Changed

  • BREAKING: Snaps are now required to export onRpcRequest to receive RPC requests (#481, #533, #538)
    • The type of the function is available in @metamask/snap-types as OnRpcRequestHandler.
  • Snaps can no longer run timers outside of pending RPC requests (#490)

Fixed

  • Allow version matching with prerelease versions (#508)
  • Fix issue with iframe error reporting (#501)
  • Fix an issue with file paths with leading ./ in npm snap manifests (#537)

examples

Added

  • Add Browserify Snap example (#478)
  • Add CLI as dependency to examples (#528)

Changed

  • BREAKING: Update examples to use CommonJS exported onRpcRequest and named parameters (#481, #533, #538, #541)
  • Update TypeScript example to use OnRpcRequestHandler (#531, #533, #538)
  • Update TypeScript example to use multiple files (#527)

@metamask/execution-environments

Changed

  • BREAKING: Snaps are now required to export onRpcRequest to receive RPC requests (#481, #533, #538, #541)
  • Snaps can no longer run timers outside of pending RPC requests (#490)

Removed

  • BREAKING: Remove wallet.registerRpcMessageHandler support #481

Fixed

  • Fix issue with iframe error reporting (#501)

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Changed

  • No changes this release.

@metamask/snaps-webpack-plugin

Changed

  • No changes this release.

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-types

Added

Changed

  • BREAKING: Change SnapRpcHandler type to reflect new function signature (#534, #533, #481)

Removed

  • BREAKING: Remove wallet.registerRpcMessageHandler #481

@metamask/snap-utils

Changed

  • No changes this release.

0.15.0

Choose a tag to compare

@github-actions github-actions released this 23 May 08:54
b29ffc4

@metamask/snaps-cli

Added

  • Add support for building TypeScript Snaps (#443)

Fixed

  • Fix an issue where comment stripping would break for large files (#468)

@metamask/snap-controllers

Fixed

  • Fix an issue with detecting iframe execution environment load (#464)

@metamask/snap-examples

Added

  • Add Rollup Snap example (#472)
  • Add Webpack Snap example (#462)
  • Add TypeScript Snap example (#443)

@metamask/execution-environments

Fixed

  • Added missing properties to WebAssembly global (#459)
  • Fix interval handle leak (#485)
  • Fix timer handle leak (#483)

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Changed

  • No changes this release.

@metamask/snaps-webpack-plugin

Fixed

  • Fix some typing issues (#462)

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-types

Added

  • Add type for wallet global (#443)

@metamask/snap-utils

Fixed

  • Fix an issue where comment stripping would break for large files (#468)

0.14.0

Choose a tag to compare

@github-actions github-actions released this 14 May 18:51
ec92d4d

@metamask/snaps-cli

Changed

  • BREAKING: Increase TypeScript compilation target to ES2020 (#449)
    • This should not be breaking for consumers on any non-deprecated browser or Node.js version.

@metamask/snap-controllers

Changed

  • BREAKING: Increase TypeScript compilation target to ES2020 (#449)
    • This should not be breaking for consumers on any non-deprecated browser or Node.js version.

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/execution-environments

Changed

  • BREAKING: Increase TypeScript compilation target to ES2020 (#449)
    • This should not be breaking for consumers on any non-deprecated browser or Node.js version.

@metamask/snaps-browserify-plugin

Fixed

  • Actually publish package contents (#449)
    • Package contents were omitted from the previous version due to a build failure.

@metamask/rollup-plugin-snaps

Fixed

  • Actually publish package contents (#449)
    • Package contents were omitted from the previous version due to a build failure.

@metamask/snaps-webpack-plugin

Fixed

  • Actually publish package contents (#449)
    • Package contents were omitted from the previous version due to a build failure.

@metamask/rpc-methods

Changed

  • BREAKING: Increase TypeScript compilation target to ES2020 (#449)
    • This should not be breaking for consumers on any non-deprecated browser or Node.js version.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-utils

Changed

  • BREAKING: Increase TypeScript compilation target to ES2020 (#449)
    • This should not be breaking for consumers on any non-deprecated browser or Node.js version.

0.13.0

Choose a tag to compare

@github-actions github-actions released this 13 May 08:02
5b22ab9

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-controllers

Added

  • Add long-running endowment permission (#386)
  • Add network-access endowment from controllers (#439)

Changed

  • BREAKING: Rename SnapController constructor argument (#435)

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/execution-environments

Changed

  • BREAKING: Change execution-environment build output (#424)

@metamask/snaps-browserify-plugin

Changed

  • No changes this release.

@metamask/rollup-plugin-snaps

Added

  • Initial release (#431)

@metamask/snaps-webpack-plugin

Changed

  • No changes this release.

@metamask/rpc-methods

Added

  • BREAKING: Add in-app notifications (#419)

Changed

  • BREAKING: Bump @metamask/key-tree to 4.0.0 (#446)

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-utils

Changed

  • No changes this release.