Skip to content

Commit 4255c39

Browse files
committed
Merge branch 'main' into mikesposito/messenger/accounts-controller
2 parents 3c6828e + b77125a commit 4255c39

File tree

447 files changed

+36387
-9658
lines changed

Some content is hidden

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

447 files changed

+36387
-9658
lines changed

.github/CODEOWNERS

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,6 @@
3939
## Product Safety Team
4040
/packages/phishing-controller @MetaMask/product-safety
4141

42-
## Snaps Team
43-
/packages/rate-limit-controller @MetaMask/snaps-devs
44-
4542
## Swaps-Bridge Team
4643
/packages/bridge-controller @MetaMask/swaps-engineers
4744
/packages/bridge-status-controller @MetaMask/swaps-engineers
@@ -61,6 +58,7 @@
6158
/packages/eip1193-permission-middleware @MetaMask/wallet-api-platform-engineers
6259
/packages/multichain-api-middleware @MetaMask/wallet-api-platform-engineers
6360
/packages/selected-network-controller @MetaMask/wallet-api-platform-engineers
61+
/packages/eip-5792-middleware @MetaMask/wallet-api-platform-engineers
6462

6563
## Core Platform Team
6664
/packages/base-controller @MetaMask/core-platform
@@ -72,6 +70,7 @@
7270
/packages/sample-controllers @MetaMask/core-platform
7371
/packages/polling-controller @MetaMask/core-platform
7472
/packages/preferences-controller @MetaMask/core-platform
73+
/packages/rate-limit-controller @MetaMask/core-platform
7574

7675
## Wallet UX Team
7776
/packages/announcement-controller @MetaMask/wallet-ux
@@ -88,7 +87,7 @@
8887
/packages/keyring-controller @MetaMask/accounts-engineers @MetaMask/core-platform
8988
/packages/multichain-network-controller @MetaMask/core-platform @MetaMask/accounts-engineers @MetaMask/metamask-assets
9089
/packages/network-controller @MetaMask/core-platform @MetaMask/metamask-assets
91-
/packages/permission-controller @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform @MetaMask/snaps-devs
90+
/packages/permission-controller @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
9291
/packages/permission-log-controller @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
9392
/packages/profile-sync-controller @MetaMask/identity
9493
/packages/remote-feature-flag-controller @MetaMask/extension-platform @MetaMask/mobile-platform
@@ -113,6 +112,8 @@
113112
/packages/delegation-controller/CHANGELOG.md @MetaMask/vault @MetaMask/core-platform
114113
/packages/earn-controller/package.json @MetaMask/earn @MetaMask/core-platform
115114
/packages/earn-controller/CHANGELOG.md @MetaMask/earn @MetaMask/core-platform
115+
/packages/eip-5792-middleware/package.json @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
116+
/packages/eip-5792-middleware/CHANGELOG.md @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
116117
/packages/eip1193-permission-middleware/package.json @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
117118
/packages/eip1193-permission-middleware/CHANGELOG.md @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
118119
/packages/ens-controller/package.json @MetaMask/confirmations @MetaMask/core-platform
@@ -143,8 +144,6 @@
143144
/packages/selected-network-controller/CHANGELOG.md @MetaMask/wallet-api-platform-engineers @MetaMask/core-platform
144145
/packages/signature-controller/package.json @MetaMask/confirmations @MetaMask/core-platform
145146
/packages/signature-controller/CHANGELOG.md @MetaMask/confirmations @MetaMask/core-platform
146-
/packages/rate-limit-controller/package.json @MetaMask/snaps-devs @MetaMask/core-platform
147-
/packages/rate-limit-controller/CHANGELOG.md @MetaMask/snaps-devs @MetaMask/core-platform
148147
/packages/transaction-controller/package.json @MetaMask/confirmations @MetaMask/core-platform
149148
/packages/transaction-controller/CHANGELOG.md @MetaMask/confirmations @MetaMask/core-platform
150149
/packages/user-operation-controller/package.json @MetaMask/confirmations @MetaMask/core-platform

README.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ Each package in this repository has its own README where you can find installati
3636
- [`@metamask/controller-utils`](packages/controller-utils)
3737
- [`@metamask/delegation-controller`](packages/delegation-controller)
3838
- [`@metamask/earn-controller`](packages/earn-controller)
39+
- [`@metamask/eip-5792-middleware`](packages/eip-5792-middleware)
3940
- [`@metamask/eip1193-permission-middleware`](packages/eip1193-permission-middleware)
4041
- [`@metamask/ens-controller`](packages/ens-controller)
4142
- [`@metamask/error-reporting-service`](packages/error-reporting-service)
@@ -99,6 +100,7 @@ linkStyle default opacity:0.5
99100
controller_utils(["@metamask/controller-utils"]);
100101
delegation_controller(["@metamask/delegation-controller"]);
101102
earn_controller(["@metamask/earn-controller"]);
103+
eip_5792_middleware(["@metamask/eip-5792-middleware"]);
102104
eip1193_permission_middleware(["@metamask/eip1193-permission-middleware"]);
103105
ens_controller(["@metamask/ens-controller"]);
104106
error_reporting_service(["@metamask/error-reporting-service"]);
@@ -140,6 +142,8 @@ linkStyle default opacity:0.5
140142
account_tree_controller --> base_controller;
141143
account_tree_controller --> accounts_controller;
142144
account_tree_controller --> keyring_controller;
145+
account_tree_controller --> multichain_account_service;
146+
account_tree_controller --> profile_sync_controller;
143147
accounts_controller --> base_controller;
144148
accounts_controller --> controller_utils;
145149
accounts_controller --> keyring_controller;
@@ -152,14 +156,17 @@ linkStyle default opacity:0.5
152156
assets_controllers --> base_controller;
153157
assets_controllers --> controller_utils;
154158
assets_controllers --> polling_controller;
159+
assets_controllers --> account_tree_controller;
155160
assets_controllers --> accounts_controller;
156161
assets_controllers --> approval_controller;
157162
assets_controllers --> keyring_controller;
163+
assets_controllers --> multichain_account_service;
158164
assets_controllers --> network_controller;
159165
assets_controllers --> permission_controller;
160166
assets_controllers --> phishing_controller;
161167
assets_controllers --> preferences_controller;
162168
assets_controllers --> transaction_controller;
169+
base_controller --> messenger;
163170
base_controller --> json_rpc_engine;
164171
bridge_controller --> base_controller;
165172
bridge_controller --> controller_utils;
@@ -190,9 +197,11 @@ linkStyle default opacity:0.5
190197
delegation_controller --> keyring_controller;
191198
earn_controller --> base_controller;
192199
earn_controller --> controller_utils;
193-
earn_controller --> accounts_controller;
200+
earn_controller --> account_tree_controller;
194201
earn_controller --> network_controller;
195202
earn_controller --> transaction_controller;
203+
eip_5792_middleware --> transaction_controller;
204+
eip_5792_middleware --> keyring_controller;
196205
eip1193_permission_middleware --> chain_agnostic_permission;
197206
eip1193_permission_middleware --> controller_utils;
198207
eip1193_permission_middleware --> json_rpc_engine;
@@ -242,6 +251,7 @@ linkStyle default opacity:0.5
242251
network_enablement_controller --> controller_utils;
243252
network_enablement_controller --> multichain_network_controller;
244253
network_enablement_controller --> network_controller;
254+
network_enablement_controller --> transaction_controller;
245255
notification_services_controller --> base_controller;
246256
notification_services_controller --> controller_utils;
247257
notification_services_controller --> keyring_controller;
@@ -261,7 +271,7 @@ linkStyle default opacity:0.5
261271
preferences_controller --> controller_utils;
262272
preferences_controller --> keyring_controller;
263273
profile_sync_controller --> base_controller;
264-
profile_sync_controller --> accounts_controller;
274+
profile_sync_controller --> address_book_controller;
265275
profile_sync_controller --> keyring_controller;
266276
rate_limit_controller --> base_controller;
267277
remote_feature_flag_controller --> base_controller;
@@ -275,13 +285,19 @@ linkStyle default opacity:0.5
275285
selected_network_controller --> json_rpc_engine;
276286
selected_network_controller --> network_controller;
277287
selected_network_controller --> permission_controller;
288+
shield_controller --> base_controller;
289+
shield_controller --> signature_controller;
290+
shield_controller --> transaction_controller;
278291
signature_controller --> base_controller;
279292
signature_controller --> controller_utils;
280293
signature_controller --> accounts_controller;
281294
signature_controller --> approval_controller;
282295
signature_controller --> keyring_controller;
283296
signature_controller --> logging_controller;
284297
signature_controller --> network_controller;
298+
subscription_controller --> base_controller;
299+
subscription_controller --> controller_utils;
300+
subscription_controller --> profile_sync_controller;
285301
token_search_discovery_controller --> base_controller;
286302
transaction_controller --> base_controller;
287303
transaction_controller --> controller_utils;

docs/controller-guidelines.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,19 +116,27 @@ A variable named `${controllerName}Metadata` should be defined (there is no need
116116
```typescript
117117
const keyringControllerMetadata = {
118118
vault: {
119+
// We don't want to include this in state logs because it contains sensitive key material.
120+
includeInStateLogs: false,
119121
// We want to persist this property so it's restored automatically, as we
120122
// cannot reconstruct it otherwise.
121123
persist: true,
122124
// This property can be used to identify a user, so we want to make sure we
123125
// do not include it in Sentry.
124126
anonymous: false,
127+
// This property is only used in the controller, not in the UI.
128+
usedInUi: false,
125129
},
126130
isUnlocked: {
131+
// This value is not sensitive, and is useful for diagnosing errors reported through support.
132+
includeInStateLogs: true
127133
// We do not need to persist this property in state, as we want to
128134
// initialize state with the wallet unlocked.
129135
persist: false,
130136
// This property has no PII, so it is safe to send to Sentry.
131137
anonymous: true,
138+
// This is used in the UI
139+
usedInUi: true,
132140
},
133141
};
134142

eslint-warning-thresholds.json

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -107,16 +107,10 @@
107107
"jsdoc/tag-lines": 2
108108
},
109109
"packages/base-controller/src/BaseController.test.ts": {
110-
"import-x/namespace": 16
111-
},
112-
"packages/base-controller/src/BaseController.ts": {
113-
"jsdoc/check-tag-names": 2
110+
"import-x/namespace": 15
114111
},
115112
"packages/base-controller/src/next/BaseController.test.ts": {
116-
"import-x/namespace": 16
117-
},
118-
"packages/base-controller/src/next/BaseController.ts": {
119-
"jsdoc/check-tag-names": 2
113+
"import-x/namespace": 13
120114
},
121115
"packages/build-utils/src/transforms/remove-fenced-code.test.ts": {
122116
"import-x/order": 1
@@ -159,6 +153,9 @@
159153
"packages/ens-controller/src/EnsController.ts": {
160154
"jsdoc/check-tag-names": 6
161155
},
156+
"packages/eip-5792-middleware/src/hooks/processSendCalls.ts": {
157+
"@typescript-eslint/no-misused-promises": 1
158+
},
162159
"packages/eth-json-rpc-provider/src/safe-event-emitter-provider.test.ts": {
163160
"import-x/namespace": 1
164161
},
@@ -190,7 +187,6 @@
190187
"n/no-unsupported-features/node-builtins": 1
191188
},
192189
"packages/keyring-controller/src/KeyringController.test.ts": {
193-
"import-x/namespace": 5,
194190
"jest/no-conditional-in-test": 2
195191
},
196192
"packages/keyring-controller/src/KeyringController.ts": {
@@ -289,9 +285,6 @@
289285
"packages/permission-controller/src/PermissionController.test.ts": {
290286
"jest/no-conditional-in-test": 4
291287
},
292-
"packages/permission-controller/src/PermissionController.ts": {
293-
"prettier/prettier": 12
294-
},
295288
"packages/permission-controller/src/rpc-methods/getPermissions.test.ts": {
296289
"import-x/order": 1
297290
},
@@ -341,8 +334,7 @@
341334
},
342335
"packages/remote-feature-flag-controller/src/remote-feature-flag-controller.ts": {
343336
"@typescript-eslint/prefer-readonly": 1,
344-
"jsdoc/check-tag-names": 2,
345-
"prettier/prettier": 1
337+
"jsdoc/check-tag-names": 2
346338
},
347339
"packages/remote-feature-flag-controller/src/utils/user-segmentation-utils.ts": {
348340
"jsdoc/tag-lines": 2
@@ -353,10 +345,6 @@
353345
"packages/seedless-onboarding-controller/src/errors.ts": {
354346
"@typescript-eslint/no-unsafe-enum-comparison": 1
355347
},
356-
"packages/selected-network-controller/src/SelectedNetworkController.ts": {
357-
"@typescript-eslint/prefer-readonly": 1,
358-
"prettier/prettier": 6
359-
},
360348
"packages/selected-network-controller/tests/SelectedNetworkController.test.ts": {
361349
"jest/no-conditional-in-test": 1
362350
},

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": "528.0.0",
3+
"version": "569.0.0",
44
"private": true,
55
"description": "Monorepo for packages shared between MetaMask clients",
66
"repository": {
@@ -63,7 +63,7 @@
6363
"@metamask/eth-block-tracker": "^12.0.1",
6464
"@metamask/eth-json-rpc-provider": "^4.1.8",
6565
"@metamask/json-rpc-engine": "^10.0.3",
66-
"@metamask/utils": "^11.4.2",
66+
"@metamask/utils": "^11.8.0",
6767
"@ts-bridge/cli": "^0.6.1",
6868
"@types/jest": "^27.4.1",
6969
"@types/lodash": "^4.14.191",

0 commit comments

Comments
 (0)