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.
- Bump
@metamask/keyring-apifrom^23.0.1to^23.1.0(#538) - Bump
@metamask/keyring-sdkfrom^2.0.1to^2.0.2(#538)
- Bump
@metamask/keyring-apifrom^23.0.0to^23.0.1(#518) - Bump
@metamask/keyring-sdkfrom^2.0.0to^2.0.1(#518)
- Workaround Browserify subpath export for
/v2(#516)
- Add
./v2subpath export for keyring v2 implementation (#513)SimpleKeyringandSimpleKeyringOptionsare now available from@metamask/eth-simple-keyring/v2.
- BREAKING: Move and rename
SimpleKeyringV2andSimpleKeyringV2Optionsto the new./v2subpath export (#513)SimpleKeyringV2is nowSimpleKeyringfrom@metamask/eth-simple-keyring/v2.SimpleKeyringV2Optionsis nowSimpleKeyringOptionsfrom@metamask/eth-simple-keyring/v2.
- Bump
@metamask/utilsfrom^11.10.0to^11.11.0(#483) - Bump
@metamask/keyring-apifrom^22.0.0to^23.0.0(#515) - Bump
@metamask/keyring-sdkfrom^1.2.0to^2.0.0(#515)
- Bump
@metamask/keyring-sdkfrom^1.0.0to^1.1.0(#509)- The account ID (generated by
KeyringAccountRegistry) are now deterministic for EVM addresses.
- The account ID (generated by
- Add missing exports for
SimpleKeyringV2and typeSimpleKeyringV2Options(#498) - Bump
@metamask/keyring-sdkfrom^1.0.0to^1.1.0(#496)
- Add
SimpleKeyringV2class implementingKeyringV2interface (#409), (#410), (#413), (#451), (#478), (#482)- Add new dependency
@metamask/keyring-api@22.0.0. - Add new dependency
@metamask/keyring-sdk@1.0.0. - Wraps legacy
SimpleKeyringto expose accounts via the unifiedKeyringV2API and theKeyringAccounttype. - Extends
EthKeyringWrapperfor common Ethereum logic.
- Add new dependency
- Bump
@metamask/utilsfrom^11.1.0to^11.10.0(#489)
- BREAKING: The method signature for
signTypedDatahas been changed (#224)- The method now accepts a
TypedDataV1object whenSignTypedDataVersion.V1is passed in the options, andTypedMessage<Types>when other versions are requested. - The
optionsargument type has been changed to{ version: SignTypedDataVersion } | undefined.
- The method now accepts a
- BREAKING: The method
signTransactioncan now returns various type of transactions (#209)- Initially was supporting:
Transaction | AccessListEIP2930Transaction | FeeMarketEIP1559Transaction(types from@ethereumjs/tx). - Now also supports
BlobEIP4844Transaction | EOACodeEIP7702Transaction(types from@ethereumjs/tx).
- Initially was supporting:
- BREAKING: Bump
@ethereumjs/txfrom^4.2.0to^5.4.0(#209) - BREAKING: Bump
@ethereumjs/utilfrom^8.1.0to^9.1.0(#209)
- BREAKING: The
SimpleKeyringclass now implementsKeyringfrom@metamask/keyring-utils(#217)- The
deserializemethod now requires astring[]argument.
- The
- Use
ts-bridge/cli@0.6.3(#214)- This new version fixes a bug regarding some missing exports.
- Add
signEip7702Authorizationmethod (#182)
- Bump
@metamask/eth-sig-utildependency from^8.0.0to8.2.0(#177), (#134) - Bump
@metamask/utilsdependency from^9.3.1to11.1.0(#134), (#167)
- Use
ts-bridge/cli@0.6.1(#118)- This new version fixes a bug with CJS re-exports.
- BREAKING: Add ESM build (#40)
- It's no longer possible to import files from
./distdirectly.
- It's no longer possible to import files from
- BREAKING: Bump
@metamask/eth-sig-utildependency from^7.0.3to^8.0.0(#79)signTypedDatano longer supportnumberfor addresses, see here.
- Use TypeScript 5 (#55)
- Convert to monorepo
- Package name does not change (
@metamask/eth-simple-keyring) and sources have been moved to:packages/keyring-eth-simple. - You can find all the changes here.
- Package name does not change (
- Bump
@metamask/utilsfrom^8.1.0to^9.0.0(#177)
- Treat
undefinedandnullas empty array in deserialize function (#163)
- BREAKING: Increase minimum Node.js version to 16 (#152)
- BREAKING: Bump @metamask/eth-sig-util from ^6.0.1 to ^7.0.0 (#156)
- Bump @metamask/utils from ^5.0.0 to ^8.1.0 (#153)
- Bump ethereum-cryptography from ^1.2.0 to ^2.1.2 (#153)
- Treat
undefinedandnullas empty array in deserialize function (#166)
- Add
validateMessageoption tosignMessageto configure if runtime-validation should be done that input string is hex (default:true) (#148)
- BREAKING: Makes version-specific
signTypedDatamethods private (#84)- Consumers should use the generic
signTypedDatamethod and pass the version they'd like as a property in the options argument.
- Consumers should use the generic
- BREAKING: Makes the
walletsproperty private (#87)- Consumers should not use this property as it is intended for internal use only.
- BREAKING: Makes
getPrivateKeyFora private method (#83)- Consumers who wish to get the private key for a given account should use the
exportAccountmethod.
- Consumers who wish to get the private key for a given account should use the
- BREAKING: Set the minimum Node.js version to 14 (#68) (#109)
- Always return rejected Promise upon failure (#85)
- BREAKING: Remove redundant
newGethSignMessagemethod (#72)- Consumers can use
signPersonalMessagemethod as a replacement fornewGethSignMessage.
- Consumers can use