Skip to content

Releases: MetaMask/snaps

0.6.3

21 Dec 00:59
54803e6
Compare
Choose a tag to compare

@metamask/snap-controllers

Fixed

  • Prevent disableSnap from throwing if the specified Snap is stopped (#175)

@metamask/example-snap

Changed

  • No changes this release.

@metamask/iframe-execution-environment-service

Changed

  • No changes this release.

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-workers

Changed

  • No changes this release.

0.6.2

18 Dec 23:26
9c3890e
Compare
Choose a tag to compare

@metamask/snap-controllers

Changed

  • BREAKING: Rename endowment permission builder exports (#171)

Removed

  • BREAKING: Remove the svgIcon property from Snap state (#172)
    • The SVG icon content string is instead emitted with the SnapController:snapAdded event.

@metamask/example-snap

Changed

  • No changes this release.

@metamask/iframe-execution-environment-service

Changed

  • No changes this release.

@metamask/rpc-methods

Changed

  • BREAKING: Rename restricted method permission builder exports (#171)

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-workers

Changed

  • No changes this release.

0.6.1

17 Dec 07:07
34ac003
Compare
Choose a tag to compare

@metamask/snap-controllers

Changed

  • No changes this release.

@metamask/example-snap

Fixed

  • snap_confirm call (#168)
    • The Snap was passing invalid parameters to the method.

@metamask/iframe-execution-environment-service

Changed

  • No changes this release.

@metamask/rpc-methods

Fixed

  • Fix snap_confirm validation logic (#168)
    • [0.6.0] contained a bug where the method would reject most valid parameter combinations.

@metamask/snap-examples

Fixed

  • bls-signer example Snap snap_confirm call (#168)
    • The bls-signer Snap was passing invalid parameters to the method.

@metamask/snaps-cli

Fixed

  • mm-snap init Snap snap_confirm call (#168)
    • The generated Snap was passing invalid parameters to the method.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-workers

Changed

  • No changes this release.

0.6.0

16 Dec 07:02
a57a2ed
Compare
Choose a tag to compare

@metamask/snap-controllers

Added

  • "Endowment" permissions (#152)
  • SnapController endowment permissions support (#155)
  • Network access endowment permission (#154)
  • Snap installation events (#162)

Changed

  • BREAKING: Refactor SnapController to support the new Snaps publishing specification (#140, #157, #163)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull requests for details.
  • BREAKING: Rename Snap name property to id (#147)
  • BREAKING: Introduce the required permissionType field to PermissionController permission specifications (#152)
  • Make SubjectMetadataController subject metadata name optional (#151)

Removed

  • BREAKING: Inline snap functionality (#148)

@metamask/example-snap

Added

  • SVG icon (#163)
    • Adds an icon file at images/icon.svg and a reference to it in snap.manifest.json.

Changed

  • BREAKING: Support the new Snaps publishing specification (#140, #157)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull requests for details.

@metamask/iframe-execution-environment-service

Changed

  • BREAKING: Support the new Snaps publishing specification (#140)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull request for details.
  • BREAKING: Rename Snap name property to id (#147)

@metamask/rpc-methods

Added

  • "Endowment" permissions (#152)

Changed

  • BREAKING: Support the new Snaps publishing specification (#140)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull request for details.
  • BREAKING: Rename Snap name property to id (#147)
  • BREAKING: Update snap_confirm parameters (#158)
  • Improve types and documentation for selectHooks (#149)

Fixed

  • Restricted Snap method origin handling (#150)

@metamask/snap-examples

Changed

  • BREAKING: Support the new Snaps publishing specification (#140)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull request for details.
  • BREAKING: Update all example Snaps per new publishing specification (#157)

Removed

  • BREAKING: "hello-snaps` example (#157)

@metamask/snaps-cli

Added

  • Snap SVG icon support (#163)

Changed

  • BREAKING: Support the new Snaps publishing specification (#140, #160)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull requests for details.
  • BREAKING: Rename Snap name property to id (#147)
  • BREAKING: Update ses to version ^0.15.3 (#159)
    • This will cause behavioral changes for code executed under SES, and may require modifications to code that previously executed without issues.

@metamask/snap-types

Added

  • SnapExecutionData type (#155)

Changed

  • BREAKING: Rename Snap name property to id (#147)

@metamask/snap-workers

Changed

  • BREAKING: Support the new Snaps publishing specification (#140)
    • This introduces several breaking changes to how Snaps are developed, hosted, and represented at runtime. See the specification and the referenced pull requests for details.
  • BREAKING: Rename Snap name property to id (#147)
  • BREAKING: Update ses to version ^0.15.3 (#159)
    • This will cause behavioral changes for code executed under SES, and may require modifications to code that previously executed without issues.

0.5.0

07 Dec 04:31
e19ef8d
Compare
Choose a tag to compare

@metamask/snap-controllers

Changed

  • BREAKING: Update restricted RPC methods per new PermissionController (#143)
  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)
  • Bump @metamask/obs-store to 7.0.0 (#144)

@metamask/iframe-execution-environment-service

Changed

  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)
  • Bump @metamask/obs-store to 7.0.0 (#144)

@metamask/rpc-methods

Added

  • Added title and subtitle to snap_confirm (#145)

Changed

  • BREAKING: Update restricted RPC methods per new PermissionController (#143)
  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)
  • Update restricted RPC methods per new permissions system (#143)

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/snaps-cli

Changed

  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)

@metamask/snap-types

Changed

  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)

@metamask/snap-workers

Changed

  • BREAKING: Convert all TypeScript interface declarations to type equivalents (#143)

0.4.0

25 Nov 19:21
26a1d8d
Compare
Choose a tag to compare

@metamask/snap-controllers

Added

  • SubjectMetadataController (#61)
  • PermissionController (#132, #141)
  • BREAKING: SnapController: Add max request processing time (#128)

Fixed

  • SnapController: Clean up timeouts after stopping a Snap (#139)
  • WebWorkerExecutionEnvironmentService: Clean up post-termination timeouts (#128)

@metamask/iframe-execution-environment-service

Fixed

  • Clean up post-termination timeouts (#128)

@metamask/rpc-methods

Changed

  • BREAKING: Consolidate Snap state management methods into single method (#135)
    • snap_manageState
  • BREAKING: Replace RPC method and permission description properties with docstrings (#130)

Removed

  • BREAKING: Remove snap_manageAssets (#134)

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/snaps-cli

Fixed

  • Make Windows-compatible (#131)

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-workers

Changed

  • No changes this release.

0.3.1

08 Nov 05:52
8132d8e
Compare
Choose a tag to compare

@metamask/snap-controllers

Changed

  • BREAKING: Update Snap initial states (#126)
    • The idle status is now named installing, and rehydrated snaps will have the status stopped.

Fixed

  • Fix Snap execution and installation bugs (#125)
  • Prevent Snaps from being started before installation is finished (#124)
  • Correctly identify breaking changes in [0.3.0] release (#123)

@metamask/iframe-execution-environment-service

Fixed

  • Correctly identify breaking changes in [0.3.0] release (#123)

@metamask/rpc-methods

Changed

  • No changes this release.

@metamask/snap-examples

Changed

  • No changes this release.

@metamask/snaps-cli

Changed

  • No changes this release.

@metamask/snap-types

Changed

  • No changes this release.

@metamask/snap-workers

Changed

  • No changes this release.

0.3.0

05 Nov 22:04
7a18e53
Compare
Choose a tag to compare

@metamask/snap-controllers

Added

  • Allow disabling and enabling Snaps (#116)
    • Only enabled Snaps can be started.
  • Start stopped Snaps that receive an RPC message (#114)
  • Add Snap max idle time (#105)
    • A Snap that is idle for more than the max idle time will be stopped.
  • Poll Snaps for their status (#104)
    • If a Snap stops responding, it will be forced to stop.

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)
  • BREAKING: Use the ControllerMessenger to communicate between the SnapController and its execution environment service (#100)

@metamask/iframe-execution-environment-service

Added

  • Poll Snaps for their status (#104)
    • If a Snap stops responding, it will be forced to stop.

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)
  • BREAKING: Use the ControllerMessenger to communicate between the SnapController and its execution environment service (#100)

@metamask/rpc-methods

Changed

  • BREAKING: Make wallet_getBip44Entropy_* implementation safer (#115)
  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)

@metamask/snap-examples

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)

@metamask/snaps-cli

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)

@metamask/snap-types

Added

  • UnresponsiveMessageEvent (#104)
  • ErrorMessageEvent, ServiceMessenger (#100)

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)

@metamask/snap-workers

Changed

  • BREAKING: Enforce consistent naming for Snaps-related functionality (#119)

0.2.2

01 Oct 20:54
683b32e
Compare
Choose a tag to compare

@metamask/snap-controllers

Added

  • Added plugin error state (#96)

Fixed

  • Package script issues (#97, #98)

@metamask/iframe-execution-environment-service

Added

  • Plugin error state (#96)

Fixed

  • Package script issues (#97, #98)

@metamask/rpc-methods

Fixed

  • Package script issues (#97, #98)

@metamask/snap-examples

Fixed

  • Package script issues (#97, #98)

@metamask/snaps-cli

Fixed

  • Package script issues (#97, #98)

@metamask/snap-types

Fixed

  • Package script issues (#97, #98)

@metamask/snap-workers

Fixed

  • Package script issues (#97, #98)

0.2.1

29 Sep 20:01
a185603
Compare
Choose a tag to compare

@metamask/snaps-cli

Fixed

  • Snap produced by mm-snap init (#94)
    • The template used to create the "Hello, world!" snap had become outdated due to a build-time bug.