Skip to content

Commit 5e89a92

Browse files
authored
Merge branch 'main' into main
2 parents 6fa6a76 + 97a7447 commit 5e89a92

File tree

138 files changed

+5550
-2729
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

138 files changed

+5550
-2729
lines changed

.github/workflows/add-prs-to-project.yml

Lines changed: 0 additions & 24 deletions
This file was deleted.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: 'Add Wallet Framework Issues/PRs to Project Board'
2+
3+
on:
4+
pull_request:
5+
types: [opened, labeled, review_requested]
6+
issues:
7+
types: [opened, labeled]
8+
9+
jobs:
10+
call_shared_workflow:
11+
name: 'Call the Shared Workflow'
12+
permissions:
13+
issues: write
14+
pull-requests: write
15+
contents: read
16+
repository-projects: write
17+
uses: metamask/github-tools/.github/workflows/add-item-to-project.yml@bce51a03da4736bef72f67b71ca77714a38fc067
18+
with:
19+
project-url: 'https://github.com/orgs/MetaMask/projects/113'
20+
team-name: 'wallet-framework-engineers'
21+
team-label: 'team-wallet-framework'
22+
secrets:
23+
github-token: ${{ secrets.CORE_ADD_PRS_TO_PROJECT }}

.github/workflows/security-code-scanner.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1-
name: 'MetaMask Security Code Scanner'
1+
name: MetaMask Security Code Scanner
22

33
on:
44
push:
5-
branches: ['main']
5+
branches:
6+
- main
67
pull_request:
7-
branches: ['main']
8+
branches:
9+
- main
10+
workflow_dispatch:
811

912
jobs:
1013
run-security-scan:

eslint-warning-thresholds.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -433,8 +433,7 @@
433433
"import-x/order": 1
434434
},
435435
"packages/phishing-controller/src/PhishingController.test.ts": {
436-
"import-x/no-named-as-default-member": 1,
437-
"jsdoc/tag-lines": 1
436+
"import-x/no-named-as-default-member": 1
438437
},
439438
"packages/phishing-controller/src/PhishingController.ts": {
440439
"jsdoc/check-tag-names": 42,

examples/example-controllers/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
},
5353
"devDependencies": {
5454
"@metamask/auto-changelog": "^3.4.4",
55-
"@metamask/controller-utils": "^11.5.0",
55+
"@metamask/controller-utils": "^11.6.0",
5656
"@types/jest": "^27.4.1",
5757
"deepmerge": "^4.2.2",
5858
"jest": "^27.5.1",

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metamask/core-monorepo",
3-
"version": "317.0.0",
3+
"version": "324.0.0",
44
"private": true,
55
"description": "Monorepo for packages shared between MetaMask clients",
66
"repository": {
@@ -54,7 +54,7 @@
5454
"@babel/preset-typescript": "^7.23.3",
5555
"@lavamoat/allow-scripts": "^3.0.4",
5656
"@lavamoat/preinstall-always-fail": "^2.1.0",
57-
"@metamask/create-release-branch": "^4.0.0",
57+
"@metamask/create-release-branch": "^4.1.0",
5858
"@metamask/eslint-config": "^14.0.0",
5959
"@metamask/eslint-config-jest": "^14.0.0",
6060
"@metamask/eslint-config-nodejs": "^14.0.0",

packages/accounts-controller/CHANGELOG.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [26.0.0]
11+
12+
### Changed
13+
14+
- **BREAKING:** Bump `@metamask/keyring-controller` peer dependency to `^21.0.0` ([#5439](https://github.com/MetaMask/core/pull/5439))
15+
- **BREAKING:** Bump `@metamask/keyring-utils` from `^2.3.1` to `^3.0.0` ([#5347](https://github.com/MetaMask/core/pull/5347))
16+
- **BREAKING:** Bump `@metamask/keyring-internal-api` from `^5.0.0` to `^6.0.0` ([#5347](https://github.com/MetaMask/core/pull/5347))
17+
- **BREAKING:** Bump `@metamask/eth-snap-keyring` from `^11.1.0` to `^12.0.0` ([#5347](https://github.com/MetaMask/core/pull/5347))
18+
- **BREAKING:** Bump `@ethereumjs/util` from `^8.1.0` to `^9.1.0` ([#5347](https://github.com/MetaMask/core/pull/5347))
19+
1020
## [25.0.0]
1121

1222
### Changed
@@ -479,7 +489,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
479489

480490
- Initial release ([#1637](https://github.com/MetaMask/core/pull/1637))
481491

482-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@25.0.0...HEAD
492+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@26.0.0...HEAD
493+
[26.0.0]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@25.0.0...@metamask/accounts-controller@26.0.0
483494
[25.0.0]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@24.1.0...@metamask/accounts-controller@25.0.0
484495
[24.1.0]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@24.0.1...@metamask/accounts-controller@24.1.0
485496
[24.0.1]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@24.0.0...@metamask/accounts-controller@24.0.1

packages/accounts-controller/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metamask/accounts-controller",
3-
"version": "25.0.0",
3+
"version": "26.0.0",
44
"description": "Manages internal accounts",
55
"keywords": [
66
"MetaMask",
@@ -47,12 +47,12 @@
4747
"test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch"
4848
},
4949
"dependencies": {
50-
"@ethereumjs/util": "^8.1.0",
50+
"@ethereumjs/util": "^9.1.0",
5151
"@metamask/base-controller": "^8.0.0",
52-
"@metamask/eth-snap-keyring": "^11.1.0",
52+
"@metamask/eth-snap-keyring": "^12.0.0",
5353
"@metamask/keyring-api": "^17.2.0",
54-
"@metamask/keyring-internal-api": "^5.0.0",
55-
"@metamask/keyring-utils": "^2.3.1",
54+
"@metamask/keyring-internal-api": "^6.0.0",
55+
"@metamask/keyring-utils": "^3.0.0",
5656
"@metamask/network-controller": "^22.2.1",
5757
"@metamask/snaps-sdk": "^6.17.1",
5858
"@metamask/snaps-utils": "^8.10.0",
@@ -64,7 +64,7 @@
6464
},
6565
"devDependencies": {
6666
"@metamask/auto-changelog": "^3.4.4",
67-
"@metamask/keyring-controller": "^20.0.0",
67+
"@metamask/keyring-controller": "^21.0.0",
6868
"@metamask/providers": "^18.1.1",
6969
"@metamask/snaps-controllers": "^9.19.0",
7070
"@types/jest": "^27.4.1",
@@ -77,7 +77,7 @@
7777
"webextension-polyfill": "^0.12.0"
7878
},
7979
"peerDependencies": {
80-
"@metamask/keyring-controller": "^20.0.0",
80+
"@metamask/keyring-controller": "^21.0.0",
8181
"@metamask/network-controller": "^22.0.0",
8282
"@metamask/providers": "^18.1.0",
8383
"@metamask/snaps-controllers": "^9.19.0",

packages/accounts-controller/src/AccountsController.test.ts

Lines changed: 57 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,8 @@ const defaultState: AccountsControllerState = {
4949
},
5050
};
5151

52-
const mockGetKeyringForAccount = jest.fn();
5352
const mockGetKeyringByType = jest.fn();
54-
const mockGetAccounts = jest.fn();
53+
const mockGetState = jest.fn();
5554

5655
const mockAccount: InternalAccount = {
5756
id: 'mock-id',
@@ -210,8 +209,7 @@ function buildAccountsControllerMessenger(messenger = buildMessenger()) {
210209
'MultichainNetworkController:networkDidChange',
211210
],
212211
allowedActions: [
213-
'KeyringController:getAccounts',
214-
'KeyringController:getKeyringForAccount',
212+
'KeyringController:getState',
215213
'KeyringController:getKeyringsByType',
216214
],
217215
});
@@ -1675,14 +1673,14 @@ describe('AccountsController', () => {
16751673
mockUUIDWithNormalAccounts([mockAccount, mockAccount2]);
16761674

16771675
const messenger = buildMessenger();
1678-
messenger.registerActionHandler(
1679-
'KeyringController:getAccounts',
1680-
mockGetAccounts.mockResolvedValueOnce([mockAddress1, mockAddress2]),
1681-
);
16821676

16831677
messenger.registerActionHandler(
1684-
'KeyringController:getKeyringForAccount',
1685-
mockGetKeyringForAccount.mockResolvedValue({ type: KeyringTypes.hd }),
1678+
'KeyringController:getState',
1679+
mockGetState.mockReturnValue({
1680+
keyrings: [
1681+
{ type: KeyringTypes.hd, accounts: [mockAddress1, mockAddress2] },
1682+
],
1683+
}),
16861684
);
16871685

16881686
messenger.registerActionHandler(
@@ -1730,8 +1728,15 @@ describe('AccountsController', () => {
17301728
it('update accounts with Snap accounts when snap keyring is defined and has accounts', async () => {
17311729
const messenger = buildMessenger();
17321730
messenger.registerActionHandler(
1733-
'KeyringController:getAccounts',
1734-
mockGetAccounts.mockResolvedValueOnce([]),
1731+
'KeyringController:getState',
1732+
mockGetState.mockReturnValue({
1733+
keyrings: [
1734+
{
1735+
type: KeyringTypes.snap,
1736+
accounts: [mockSnapAccount, mockSnapAccount2],
1737+
},
1738+
],
1739+
}),
17351740
);
17361741

17371742
messenger.registerActionHandler(
@@ -1786,8 +1791,8 @@ describe('AccountsController', () => {
17861791
it('return an empty array if the Snap keyring is not defined', async () => {
17871792
const messenger = buildMessenger();
17881793
messenger.registerActionHandler(
1789-
'KeyringController:getAccounts',
1790-
mockGetAccounts.mockResolvedValueOnce([]),
1794+
'KeyringController:getState',
1795+
mockGetState.mockReturnValue({ keyrings: [] }),
17911796
);
17921797

17931798
messenger.registerActionHandler(
@@ -1819,13 +1824,12 @@ describe('AccountsController', () => {
18191824

18201825
const messenger = buildMessenger();
18211826
messenger.registerActionHandler(
1822-
'KeyringController:getAccounts',
1823-
mockGetAccounts.mockResolvedValueOnce([mockAddress1, mockAddress2]),
1824-
);
1825-
1826-
messenger.registerActionHandler(
1827-
'KeyringController:getKeyringForAccount',
1828-
mockGetKeyringForAccount.mockResolvedValue({ type: KeyringTypes.hd }),
1827+
'KeyringController:getState',
1828+
mockGetState.mockReturnValue({
1829+
keyrings: [
1830+
{ type: KeyringTypes.hd, accounts: [mockAddress1, mockAddress2] },
1831+
],
1832+
}),
18291833
);
18301834

18311835
messenger.registerActionHandler(
@@ -1883,14 +1887,13 @@ describe('AccountsController', () => {
18831887

18841888
// first account will be normal, second will be a snap account
18851889
messenger.registerActionHandler(
1886-
'KeyringController:getAccounts',
1887-
mockGetAccounts.mockResolvedValue([mockAddress1, '0x1234']),
1888-
);
1889-
messenger.registerActionHandler(
1890-
'KeyringController:getKeyringForAccount',
1891-
mockGetKeyringForAccount
1892-
.mockResolvedValueOnce({ type: KeyringTypes.hd })
1893-
.mockResolvedValueOnce({ type: KeyringTypes.snap }),
1890+
'KeyringController:getState',
1891+
mockGetState.mockReturnValue({
1892+
keyrings: [
1893+
{ type: KeyringTypes.hd, accounts: [mockAddress1] },
1894+
{ type: KeyringTypes.snap, accounts: ['0x1234'] },
1895+
],
1896+
}),
18941897
);
18951898

18961899
const { accountsController } = setupAccountsController({
@@ -1941,14 +1944,13 @@ describe('AccountsController', () => {
19411944

19421945
// first account will be normal, second will be a snap account
19431946
messenger.registerActionHandler(
1944-
'KeyringController:getAccounts',
1945-
mockGetAccounts.mockResolvedValue(['0x1234', mockAddress1]),
1946-
);
1947-
messenger.registerActionHandler(
1948-
'KeyringController:getKeyringForAccount',
1949-
mockGetKeyringForAccount
1950-
.mockResolvedValueOnce({ type: KeyringTypes.snap })
1951-
.mockResolvedValueOnce({ type: KeyringTypes.hd }),
1947+
'KeyringController:getState',
1948+
mockGetState.mockReturnValue({
1949+
keyrings: [
1950+
{ type: KeyringTypes.snap, accounts: ['0x1234'] },
1951+
{ type: KeyringTypes.hd, accounts: [mockAddress1] },
1952+
],
1953+
}),
19521954
);
19531955

19541956
const { accountsController } = setupAccountsController({
@@ -1996,13 +1998,12 @@ describe('AccountsController', () => {
19961998
mockUUIDWithNormalAccounts([mockAccount]);
19971999

19982000
const messenger = buildMessenger();
2001+
19992002
messenger.registerActionHandler(
2000-
'KeyringController:getAccounts',
2001-
mockGetAccounts.mockResolvedValue([mockAddress1]),
2002-
);
2003-
messenger.registerActionHandler(
2004-
'KeyringController:getKeyringForAccount',
2005-
mockGetKeyringForAccount.mockResolvedValue({ type: keyringType }),
2003+
'KeyringController:getState',
2004+
mockGetState.mockReturnValue({
2005+
keyrings: [{ type: keyringType, accounts: [mockAddress1] }],
2006+
}),
20062007
);
20072008

20082009
messenger.registerActionHandler(
@@ -2046,12 +2047,10 @@ describe('AccountsController', () => {
20462047

20472048
const messenger = buildMessenger();
20482049
messenger.registerActionHandler(
2049-
'KeyringController:getAccounts',
2050-
mockGetAccounts.mockResolvedValue([mockAddress1]),
2051-
);
2052-
messenger.registerActionHandler(
2053-
'KeyringController:getKeyringForAccount',
2054-
mockGetKeyringForAccount.mockResolvedValue({ type: 'unknown' }),
2050+
'KeyringController:getState',
2051+
mockGetState.mockReturnValue({
2052+
keyrings: [{ type: 'unknown', accounts: [mockAddress1] }],
2053+
}),
20552054
);
20562055

20572056
messenger.registerActionHandler(
@@ -2137,14 +2136,13 @@ describe('AccountsController', () => {
21372136

21382137
// first account will be normal, second will be a snap account
21392138
messenger.registerActionHandler(
2140-
'KeyringController:getAccounts',
2141-
mockGetAccounts.mockResolvedValue(['0x1234', mockAddress1]),
2142-
);
2143-
messenger.registerActionHandler(
2144-
'KeyringController:getKeyringForAccount',
2145-
mockGetKeyringForAccount
2146-
.mockResolvedValueOnce({ type: KeyringTypes.snap })
2147-
.mockResolvedValueOnce({ type: KeyringTypes.hd }),
2139+
'KeyringController:getState',
2140+
mockGetState.mockReturnValue({
2141+
keyrings: [
2142+
{ type: KeyringTypes.snap, accounts: ['0x1234'] },
2143+
{ type: KeyringTypes.hd, accounts: [mockAddress1] },
2144+
],
2145+
}),
21482146
);
21492147

21502148
const { accountsController } = setupAccountsController({
@@ -3079,17 +3077,13 @@ describe('AccountsController', () => {
30793077
it('update accounts', async () => {
30803078
const messenger = buildMessenger();
30813079
messenger.registerActionHandler(
3082-
'KeyringController:getAccounts',
3083-
mockGetAccounts.mockResolvedValueOnce([]),
3080+
'KeyringController:getState',
3081+
mockGetState.mockReturnValue({ keyrings: [] }),
30843082
);
30853083
messenger.registerActionHandler(
30863084
'KeyringController:getKeyringsByType',
30873085
mockGetKeyringByType.mockReturnValueOnce([]),
30883086
);
3089-
messenger.registerActionHandler(
3090-
'KeyringController:getKeyringForAccount',
3091-
mockGetKeyringForAccount.mockResolvedValueOnce([]),
3092-
);
30933087

30943088
const { accountsController } = setupAccountsController({
30953089
initialState: {

0 commit comments

Comments
 (0)