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.
- add isSnapConnected method to the Authentication SDK (#4668)
- add
accountAdded
andaccountRenamed
events when triggering account syncing (#4665) - prevent accounts controller events being used when sync is in progress (#4675)
- add
isAccountSyncingInProgress
toUserStorageController
- add
isAccountSyncingInProgress
checks to abort processingaccountAdded
andaccountRenamed
events.
- add
- account sync throttling (#4675)
- remove
maxSyncInterval
;lastSyncedAt
;shouldSync
fromUserStorageController
- remove
- add
maxSyncInterval
for account syncing toUserStorageController
prevent multiple sync requests (#4659) - add optional
NativeScrypt
property toUserStorageController
to allow the scrypt implementation to be swapped out for a native version. Improving mobile performance (#4656)
- add granular account syncing (#4629)
- add accounts user storage schema
- add method
saveInternalAccountToUserStorage
toUserStorageController
- add method
syncInternalAccountsWithUserStorage
toUserStorageController
- add
@metamask/accounts-controller
dev dependency - add
@metamask/keyring-api
dev dependency
- add infura OIDC identifier (#4654)
- define and export new types:
AuthenticationControllerGetStateAction
,AuthenticationControllerStateChangeEvent
,Events
(#4633) - SDK and controller support for
GET /api/v1/userstorage/:feature
endpoint (#4626)- add method
performGetStorageAllFeatureEntries
toUserStorageController
- add
ALLOW_ARBITRARY_KEYS
toUSER_STORAGE_SCHEMA
to allow wildcard/getAll for entries for a feature
- add method
- add subpath exports to
@metamask/profile-sync-controller
(#4604)- add
@metamask/profile-sync-controller/sdk
export - add
@metamask/profile-sync-controller/user-storage
export - add
@metamask/profile-sync-controller/auth
export
- add
- Bump
typescript
from~5.1.6
to~5.2.2
(#4584) - Fix controllers with missing or incorrect messenger action/event types (#4633)
- BREAKING:
AuthenticationControllerMessenger
must allow internal events defined in theEvents
type (#4633) AuthenticationControllerActions
is widened to include theAuthenticationController:getState
action (#4633)- Replaced
@metamask/profile-sync-controller/sdk
to use the same encryption file asUserStorageController
(#4649)
- update subpath exports internal
package.json
files to resolvejest-haste-map
errors (#4650)
- unlock checks for when controller methods are called (#4569)
- BREAKING made
MOCK_ENCRYPTED_STORAGE_DATA
fixture a function to be lazily evaluated (#4592) - Bump
typescript
from~5.0.4
to~5.1.6
(#4576)
- Add and export object
USER_STORAGE_SCHEMA
, functiongetFeatureAndKeyFromPath
, and typeUserStoragePath
(#4543) - Add
connectSnap
method to theJwtBearerAuth
class for connecting to snap after initializing the Profile Sync SDK (#4560)
- BREAKING: Enforce
UserStorageSchema
usage in all functions that get or set user storage (#4543)- Keeps user storage entries consistent, and improves DX for consumers of user storage.
- BREAKING: Remove
entryKey
function parameter fromperformGetStorage
andperformSetStorage
methods ofUserStorageController
, and replace withpath
parameter of typeUserStoragePath
. - BREAKING: Remove
entryKey
function parameter fromcreateEntryPath
, and replace withpath
parameter of typeUserStoragePath
. - BREAKING: Remove
entryKey
property from typeUserStorageOptions
, and replace withpath
property of typeUserStoragePath
.
- BREAKING: Bump peerDependency
@metamask/snaps-controllers
from^8.1.1
to^9.3.0
(#3645) - Remove
@metamask/snaps-controllers
dependency #4556- This was listed under
peerDependencies
already, so it was redundant as a dependency.
- This was listed under
- Widen
isProfileSyncingEnabled
property of theUserStorageControllerState
type fromboolean
toboolean | null
(#4551) - Upgrade TypeScript version to
~5.0.4
and setmoduleResolution
option toNode16
(#3645) - Bump
@metamask/base-controller
from^6.0.1
to^6.0.2
(#4544) - Bump
@metamask/snaps-sdk
from^4.2.0
to^6.1.1
(#3645, #4547) - Add new dependency
@metamask/snaps-utils
(#3645, #4547)
- Remove object
USER_STORAGE_ENTRIES
and typeUserStorageEntryKeys
(#4543)
-
added
LoginResponse
validation in profile syncing SDK (#4541) -
added snap caching when calling the message signing snap (#4532)
- removed a server-side node dependency from profile-sync-sdk (#4539)
- removed a catch statement call in AuthenticationController to prevent infinite crashes. (#4533)
- Switch ethers to a devDependency (#4518)
-
added platform field when logging in to receive correct OIDC access token (#4480)
-
added metametrics validation in constructor (#4480)
- updated the
getMetaMetricsId
interface to support async calls to metametrics ID (#4477)
- export
defaultState
forAuthenticationController
andUserStorageController
. (#4441)
AuthType
,Env
,Platform
are changed from const enums to enums (#4441)
- Initial release