-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Multichain - "Disconnect" menu item from popup Connections page causes error #23790
Labels
amon-hen-v1
Represents blocking issues for the release of Amon Hen
regression-develop
Regression bug that was found on development branch, but not yet present in production
release-11.16.0
Issue or pull request that will be included in release 11.16.0
Sev2-normal
Normal severity; minor loss of service or inconvenience.
team-wallet-ux
type-bug
Comments
After closing the popup, and re-opening it, then opening the Connections favicon again, the account is disconnected. |
7 tasks
NidhiKJha
added a commit
that referenced
this issue
Apr 15, 2024
…#23935) This PR ensures that when a single account is disconnected from the Dapp via connections. It shouldn't break the page and disconnects smoothle ## **Related issues** Fixes: #23790 ## **Manual testing steps** 1. Run extension with Multichain flag 2. Connect a single account to uniswap 3. Go to connections page, click on disconnect account. 4. It should disconnect the account ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/39872794/f4356be1-e6b8-4319-b2a0-be5439173fbe ### **After** https://github.com/MetaMask/metamask-extension/assets/39872794/779ababe-d6a2-4f9a-aca8-d09284dd4aee ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.
jiexi
added a commit
that referenced
this issue
Apr 17, 2024
commit a8d0d2fceda6a9b1e8a5622ccc039a6b61e83fcf Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 15:22:46 2024 -0700 lint commit aad0283bf96deb416be4c30394e1f4ef7c9fe735 Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 15:20:12 2024 -0700 fix confirm-transaction spec commit 055e3cc35bca59d493fa5855616ec88edd6a7142 Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:54:00 2024 -0700 Remove legacy start stop gas fee polling in MMC commit 2aed56f4f02658fb426fbc10ca1fdabdb4e1e972 Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:48:32 2024 -0700 lint commit 12a741e94305ea4e5678e8be1290832feb3dc0c8 Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:47:50 2024 -0700 fix specs commit 3a2841059c479e84743dda12d6effcf11201b085 Merge: fc7fdbb3f5 670f2e1e8c Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:44:45 2024 -0700 Merge branch 'develop' into jl/fix-remaining-gas-fee-polling commit fc7fdbb3f5ea7953e737d99a4c69432558ff05c4 Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:44:38 2024 -0700 naively update specs commit c162d36829dbd88fa29c2271467d1cfd8b96357a Author: Jiexi Luan <jiexiluan@gmail.com> Date: Tue Apr 16 14:44:31 2024 -0700 replace remaining legacy gas fee polling actions commit 670f2e1e8cca5c59874643db81b2fc6331b65855 Author: David Murdoch <187813+davidmurdoch@users.noreply.github.com> Date: Tue Apr 16 17:11:21 2024 -0400 ci(actions): update `amannn/action-semantic-pull-request` to v5.4.0 (#23819) Update `amannn/action-semantic-pull-request@v5.2.0` to v5.4.0 as v5.2.0 is deprecated. commit 62a8bd25d3db5d31d377a9b2c11fcd1acbb13393 Author: Frederik Bolding <frederik.bolding@gmail.com> Date: Tue Apr 16 22:56:32 2024 +0200 chore: bump snaps packages (#23957) ## **Description** Bump snaps packages to latest and handle breaking changes. Summary of changes in the snaps deps: - Improve encryption performance by caching encryption keys - Remove access to `on` and `removeListener` on the `ethereum` object for Snaps - This functionality was already broken - Fixed a problem where unencrypted state would not be deleted when uninstalling a Snap - Allow form state to be null when triggering `onUserInput` - Fixed over-eager link validation being triggered on non-links - Add derivation path for Nimiq commit e322bc8fea8061c1056f2011aea03e3068a2d059 Author: Brian Bergeron <brian.e.bergeron@gmail.com> Date: Tue Apr 16 11:14:16 2024 -0700 fix: token rates controller start / stop logic (#24021) ## **Description** Problem: Users reporting missing fiat prices for some erc20 tokens, even when price setting is on: <img width="357" alt="Screenshot 2024-03-14 at 2 35 41 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/711cfa40-7387-43df-9981-9ed52973b5b4"> Diagnosis: (1) The `TokenRatesController` gets stopped when metamask is closed. But it is not started again when metamask re-opens, preventing any future token price updates. (2) If you have metamask installed but you never open/unlock it (within a browser session), the `TokenRatesController` is still polling in the background every 3 minutes. The fix for both is to start the controller in `triggerNetworkrequests` instead of on construction. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24021?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Restore a wallet where multiple accounts have erc20 tokens 2. Enable token autodetection 4. Visit the first account with tokens, verify their prices 5. Close metamask 6. Re-open metamask 7. Visit the second account 8. Verify its tokens have prices ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 257e9f9fce04ae4581215c1f756be40ce4e39113 Author: sahar-fehri <sahar.fehri@consensys.net> Date: Tue Apr 16 17:23:02 2024 +0200 fix: deprecating more networks (#23695) ## **Description** Deprecates Mumbai and linea goerli test networks. Users should see a deprecation warning when switching to those networks. Linea goerli is removed from the default network list. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23695?quickstart=1) ## **Related issues** ticket: https://consensyssoftware.atlassian.net/browse/MMASSETS-183 patch for controller-utils: https://github.com/MetaMask/metamask-extension/pull/23727/files ## **Manual testing steps** 1. Go to home page 2. Click on network selector, You should not see Linea testnet in the list. 3. Add Mumbai network to metamask 4. You should see deprecation warning ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** Linea goerli appears in the list of default networks <img width="1798" alt="Screenshot 2024-03-26 at 16 17 41" src="https://github.com/MetaMask/metamask-extension/assets/10994169/d82e3cba-4c6b-4546-9612-9dabf0b32b5b"> ### **After** In this video initially the user is on Linea goerli (i am on develop branch), the user makes a few transactions on linea goerli, then i switch to this branch so the migration runs, and notice that the user has switeched to linea-sepolia. Linea goerli is removed from the default networks tab. When the user adds linea-goerli using chainlist, he sees the deprecation warning and his transactions. https://github.com/MetaMask/metamask-extension/assets/10994169/3ffd6a63-6bb0-4ea3-85ab-c31b8317cfd6 This short video shows the deprecation warning when we switch to Mumbai network https://github.com/MetaMask/metamask-extension/assets/10994169/496a9433-0547-4475-8320-39b1c5d01e2e ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit d40321c8af64def299705fa977a1677103c60900 Author: Frederik Bolding <frederik.bolding@gmail.com> Date: Tue Apr 16 17:02:15 2024 +0200 fix: improve performance in account list and account connection components (#23933) ## **Description** Improves performance in the account list and "account connection" components by no longer leveraging `getAddressConnectedSubjectMap`. The selector in question is very computationally expensive to use and thus were causing performance problems for users with many accounts and many connected sites. This PR proposes using `getPermittedAccountsForCurrentTab` where possible and also introduces a memoized selector `isAccountConnectedToCurrentTab` that performantly can check for a given address. From local testing this seems to improve the experience. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23933?quickstart=1) ## **Related issues** Fixes #23913 --------- Co-authored-by: Nidhi Kumari <nidhi.kumari@consensys.net> commit 8c8f68f0e3d6194eafb072f912da7ff8b44e90e4 Author: Daniel <80175477+dan437@users.noreply.github.com> Date: Tue Apr 16 16:48:41 2024 +0200 feat: Update UI / content for the Smart Transactions Opt In modal, renaming (#24053) ## **Description** This PR includes a few small updates: - Updates UI / content for the Smart Transactions Opt In modal - Renaming to `Smart Transactions` - Small refactoring ## **Related issues** Fixes: ## **Manual testing steps** 1. Install the extension 2. See the updated Smart Transactions Opt In Modal ## **Screenshots/Recordings** Smart Transactions Opt In Modal: ![image](https://github.com/MetaMask/metamask-extension/assets/80175477/ffa978b6-8cde-4cad-be70-1242b135b8f9) ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 6ed9d04069c61098e4766b4dc3ccd9105559f4c4 Author: António Regadas <apregadas@gmail.com> Date: Tue Apr 16 14:37:27 2024 +0100 chore: MMI adds custodian icons (#23912) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Adds custodian logo to the top bar, at the left of the address and also in the accounts list: ![Screenshot 2024-04-09 at 15 12 26](https://github.com/MetaMask/metamask-extension/assets/1125631/c7edac43-ba34-41ca-935c-cbf37aedd1d6) ![Screenshot 2024-04-09 at 15 09 26](https://github.com/MetaMask/metamask-extension/assets/1125631/5a65d301-8954-4b7b-a1ad-a2ab1cfca386) ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit d91e182971e59f6a1040073af1bc3d2dd68b531c Author: Ariella Vu <20778143+digiwand@users.noreply.github.com> Date: Tue Apr 16 17:07:25 2024 +0400 feat: create Developer Options Setting Page (#22382) ## **Description** The "Developer Options" setting page will provide developers with additional controls and customization to assist with development and testing. This feature will enable developers to reset app states easily, toggle certain features on/off, and update configurations without needing to reinstall the app, accelerating developer velocity. To enable, add `ENABLE_SETTINGS_PAGE_DEV_OPTIONS=true` in .metamaskrc Developer Options Supported: - Reset Announcements/Notifications for What's New modal - Reset Onboarding states and redirects to second onboarding page ## **Related issues** Fixes: https://github.com/MetaMask/metamask-extension/issues/23592 Blocked By: https://github.com/MetaMask/core/pull/4088 ## **Manual testing steps** 1. `yarn install` to install the latest announcement-controller changes 2. go to `.metamaskrc` 3. paste `ENABLE_SETTINGS_PAGE_DEV_OPTIONS=true` 4. `yarn start` Test using test-dapp 1. open test-dapp 2. test with PPOM buttons --- 1. See chrome-extension://hbljfohiafgaaaabejngpgolnboohpaf/home.html#settings/developer-options ## **Screenshots/Recordings** #### New UI <img width="480" alt="Screenshot 2023-12-21 at 2 33 45 PM" src="https://github.com/MetaMask/metamask-extension/assets/20778143/6d6ebd6c-8564-4d4e-8dcf-d9197ad11e6b"> ![Screenshot 2023-12-22 at 1 58 28 PM](https://github.com/MetaMask/metamask-extension/assets/20778143/cfec8e2e-5cf8-43ed-9096-af22901e4bd5) ![Screenshot 2023-12-22 at 1 59 40 PM](https://github.com/MetaMask/metamask-extension/assets/20778143/70a11c03-735c-4f98-93e4-d8532c5aaea4) #### Announcements ![Screenshot 2024-03-17 at 8 13 41 PM](https://github.com/MetaMask/metamask-extension/assets/20778143/be91edfa-ade3-4a37-b628-3c8c62b0d27c) #### Onboarding ![Screenshot 2024-03-17 at 8 13 56 PM](https://github.com/MetaMask/metamask-extension/assets/20778143/ae36304a-db40-4a7a-bbf2-e979167ecf4c) ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've clearly explained what problem this PR is solving and how it is solved. - [ ] I've linked related issues - [ ] I've included manual testing steps - [ ] I've included screenshots/recordings if applicable - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [ ] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [ ] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 37989504e1e001eb4501706aeac0a901c11f8633 Author: salimtb <salim.toubal@outlook.com> Date: Tue Apr 16 14:57:12 2024 +0200 feat: add filecoin logo svg (#24039) commit c1b2cbe2035cf09a1ffe9281f536a989b7ad7643 Author: Nidhi Kumari <nidhi.kumari@consensys.net> Date: Tue Apr 16 15:38:42 2024 +0530 fix: fixed wallet view bugs for connections and permissions screen (#24023) This PR is to fix the UI bugs in the wallet, permissions and connections screen to keep it in sync with the Updated designs ## **Description** Following changes are updated: 1. Description of the product tour for global menu [Note: This product tour will be removed] 2. Remove Connected dApp shown on Account List Item 3. Remove Connect account action in Select Account Modal ## **Related issues** Fixes: #23858 ## **Manual testing steps** This PR solves Part of the linked issue, rest of them are already resolved via different other PRs, Linking them in the list: 1. Description of the product tour for global menu - Modified in this PR 2. Connected sites and All Permissions in Global menu - [23789](https://github.com/MetaMask/metamask-extension/pull/23789) 3. Remove Connected dApp shown on Account List Item - Modified in this PR 4. Connected Account Toast should only be displayed on Wallet screen - [23733](https://github.com/MetaMask/metamask-extension/pull/23733) 5. Remove Connect account action in Select Account Modal - Modified in this PR 6. Network switching within Extension - This isssue doesn't exist anymore. 7. Button in Network switch Modal - Was related to Design System, fixed. ## **Screenshots/Recordings** ### **Before** Please refer to the issue ### **After** 1. This Product tour will be removed in a separate PR 2. No dapp logo on account list item even when it's connected ![Screenshot 2024-04-16 at 3 02 46 PM](https://github.com/MetaMask/metamask-extension/assets/39872794/01b443c4-cc84-43c2-84a9-da012935def5) 3. No connect button in account list item menu ![Screenshot 2024-04-16 at 3 03 23 PM](https://github.com/MetaMask/metamask-extension/assets/39872794/71b902af-00f7-4c09-9fa9-aefc37f7a3f1) ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: David Walsh <davidwalsh83@gmail.com> commit 01a4d60d5eb20a326c7fbe6401e66ca5e68298ff Author: Nidhi Kumari <nidhi.kumari@consensys.net> Date: Tue Apr 16 14:13:04 2024 +0530 fix: Updated selector for the test networks (#23986) This PR is to ensure that the permissions page renders list of all the permissions with the current networks. For a few networks, we don't have the rpcPrefs that was causing the siteKey nd the rpcPrefs to be undefined. This PR also makes sure that the defined background color is there for the test networks that doesn't have a logo ## **Related issues** Fixes: #23812 #23793 ## **Manual testing steps** 1. Connect an account on Uniswap 2. Open the popup 3. Open the three-dot menu and choose "All Permissions" 4. It should render the permission with the accounts ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/39872794/4fc1e04c-fde3-4905-a8b8-b16c75d9f7d1 ### **After** https://github.com/MetaMask/metamask-extension/assets/39872794/c56a60cb-24e6-4857-ac29-2539bb0f6645 ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 8f3270fb6b8397bf3e1918696027a882577d9e9d Author: Nidhi Kumari <nidhi.kumari@consensys.net> Date: Tue Apr 16 14:12:39 2024 +0530 fix: updated connections page for connected data (#24022) In the previous logic, we were using activeTabOrigin to get the subject MetaData to get the connected Dapp MetaData but it seems like there is another bug because of which metaData is not being fetched correctly. As a result, we are not able to get the connected Dapp Logo and connected status properly. In this PR, we are relying on getPermittedAccountsForCurrentTab to get the connected status and if the connected dapp metaData is not defined, we will rely on global icon rather than connected dapp icon ## **Related issues** Fixes: #23792 ## **Manual testing steps** 1. Run extension with Multichain Flag and connect it to dapp 2. If the dapp shows connected status, then the connection page should return the connected accounts 3. Test it with multiple Dapps ## **Screenshots/Recordings** ### **Before** Refer to the issue ### **After** https://github.com/MetaMask/metamask-extension/assets/39872794/4536a206-a4de-45e4-88ca-cdbaf92478bb ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit f23f095fbfada56f294627164c3158917f7eb874 Author: legobeat <109787230+legobeat@users.noreply.github.com> Date: Tue Apr 16 11:39:32 2024 +0900 ci: fix create-lavamoat-viz script (#22759) commit be3c4f277d13ff038bb551bcfc4149642a003ee1 Author: David Murdoch <187813+davidmurdoch@users.noreply.github.com> Date: Mon Apr 15 16:10:32 2024 -0400 build: remove `brfs` from build processes (#24000) The `brfs` package was used to transform calls to `fs.readFile*` into inlined files as strings during build/compilation. We no longer make use of `fs.readFile*` in our code, so the dependency is no longer required. While it doesn't cause issues to leave it, the package is slow as it must parse the contents into an AST and then statically analyze the tree looking for relevant calls to `fs.readFile*`. This overhead is unwanted, so I've removed it from our build process. commit b1b8c081d8b684a88066bed56fe3d9d453e31bcd Author: Alex Donesky <adonesky@gmail.com> Date: Mon Apr 15 15:05:45 2024 -0500 fix: issue where provider engine needs to rerun after permissions are granted to ensure correct proxies are assigned (#23525) ## **Description** When the "Selected networks for each site" toggle is enabled, the wallet API should use an origin-specific chain for all interactions. However this doesn't work correctly if the connection status has changed since the last refresh. If you grant permissions to a site or revoke them (i.e. connect to or disconnect from a site), the site does not work as expected until after the site is refreshed. **Expected behavior** The wallet API should always use the dapp-selected chain for sites with permissions, and should use the globally-selected chain for sites without permissions. This should apply even if the permissions have changed since the page loaded. **Solution** This PR introduces [changes made to `@metamask/selected-network-controller`](https://github.com/MetaMask/core/blob/main/packages/selected-network-controller/CHANGELOG.md#changed) to resolve the issue described above: > Previously the SelectedNetworkController only constructed proxies for domains that had permissions. Other domains have no associated proxy and the getProviderAndBlockTracker method would throw an error. This was problematic because we grab the network client for an origin a single time when constructing an RPC pipeline for that origin in the MetaMask extension. We don't re-create the RPC pipeline when permissions change. That means that the pipeline is setup with the wrong network client and cannot be updated. The following changes ensure seamlessly proxying calls during sessions where a dapp connects/disconnects and provides a path for clients to prune inactive proxies. This domainProxyMap param now passed into `SelectedNetworkController` allows the client to handle pruning inactive proxies while the SelectedNetworkController handles adding entries - it can't handle removal, as it doesn't know which connections are active. The extension passes in an instance of a newly created `WeakStringMap` class which allows for garbage collection of its data once no longer referenced. ## **Related issues** Fixes: https://github.com/MetaMask/metamask-extension/issues/23509 ## **Manual testing steps** The problem presented itself in two scenarios: when granting site permissions, and when revoking all site permissions. **When granting permissions:** - Enable the "Selected networks for each site" toggle - Open a site with no permissions in one tab, and the fullscreen wallet UI in another - If the site was open already, hard-refresh before proceeding - Call eth_requestAccounts on the site, asking for the eth_accounts permissions - Approve the request - Call eth_chainId from the site, and see that it matches the wallet selected chain - Switch the selected chain in the fullscreen UI - Call eth_chainId from the site, and see that it is still on the same chain the wallet was connected to before switching **When revoking permissions:** - Redo all the same steps for **When granting permissions:** - Open the browser-action popup, click on the three-vertical-dots menu, click "Connected sites", then disconnect from the site - Call eth_chainId from the site. See that the sites connected chain is now the same as the "globally selected chain" in the wallet ## **Screenshots/Recordings** ### **Before** This recording shows both reproduction use cases (granting permissions, then revoking) [queue-selected-chain-bug-2024-03-14_19.49.19.webm](https://github.com/MetaMask/metamask-extension/assets/2459287/092c0a9d-e734-4309-9455-d6444f7504ef) ### **After** https://github.com/MetaMask/metamask-extension/assets/34557516/62145d32-493b-41a2-ba8e-a1545ef1286a ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [x] I've linked related issues - [x] I've included manual testing steps - [x] I've included screenshots/recordings if applicable - [x]I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [x] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [ ] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 9c78339a247b4578150d07e93f05a62f900f7ba2 Author: David Murdoch <187813+davidmurdoch@users.noreply.github.com> Date: Mon Apr 15 12:04:12 2024 -0400 ci: update `actions/checkout` to v4 (#23822) Update `actions/checkout@v2` to v3 as v2 is deprecated. commit 100455948e944606f818a977f8096a7c20ca8247 Author: David Murdoch <187813+davidmurdoch@users.noreply.github.com> Date: Mon Apr 15 12:03:27 2024 -0400 ci: update `github/codeql-action` to v3 (#23820) Update `github/codeql-action@v2` to v3 as v2 is deprecated. commit 4dc299eef3b123178c8fa38722a875bc721edb6f Author: Brian Bergeron <brian.e.bergeron@gmail.com> Date: Mon Apr 15 08:32:00 2024 -0700 fix: checkmark icon missing after token import (#24005) ## **Description** After importing an erc20 token, the popup message was not rendering the checkmark icon. The icon is from font-awesome, and their CSS works fine. But when we add `@include design-system.H3`, it overrode the font-family, breaking the icon. Fixed by setting font size directly rather than bringing the whole H3. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/24005?quickstart=1) ## **Related issues** ## **Manual testing steps** 1. Import an erc20 token, either manually or via autodetection 2. Verify the green popup message has a checkmark icon ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <img width="349" alt="Screenshot 2024-04-12 at 10 58 57 AM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/14878f22-b355-4eb5-97c6-feb317d8775f"> ### **After** <img width="354" alt="Screenshot 2024-04-12 at 12 00 30 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/8bca68da-645c-44a1-b754-4e529070ae50"> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit f8b92ab54f9fd79a17faf086661bf220153aa88f Author: OGPoyraz <omergoktugpoyraz@gmail.com> Date: Mon Apr 15 14:52:13 2024 +0200 feat: retrieve layer 1 gas fee from transaction controller (#23521) commit 2cde24c7ed99f00450e19b4259e03f44c3a6a473 Author: Bowen Sanders <bowensanders@gmail.com> Date: Mon Apr 15 04:50:17 2024 -0700 test: [Snaps E2E] Create E2E test for UI links (#22739) ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> Create E2E test for UI links ## **Related issues** Fixes: #22425 ## **Manual testing steps** 1. This is an automated E2E test ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [x] I've linked related issues - [x] I've included manual testing steps - [ ] I've included screenshots/recordings if applicable - [x] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [ ] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [ ] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 96d478a5d6ef7842d89ba9b72b8d319565fe28d1 Author: Hassan Malik <41640681+hmalik88@users.noreply.github.com> Date: Mon Apr 15 07:26:39 2024 -0400 feat: Release Transaction Insights V2 & Signature Insights to stable (#23630) commit 91d5d4edfcb4ccc8978ca98bbba4c3635999b0d7 Author: Bowen Sanders <bowensanders@gmail.com> Date: Mon Apr 15 02:45:07 2024 -0700 test: [Snaps E2E] add more snaps localization testing (#23796) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This PR adds checks for snap name localization to the snaps localization E2E test. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23796?quickstart=1) ## **Related issues** Fixes: https://github.com/MetaMask/MetaMask-planning/issues/1653 ## **Manual testing steps** 1. Run this as a single test locally. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 07de8825dba3a72b91fceb481f3883886ab73c93 Author: Frederik Bolding <frederik.bolding@gmail.com> Date: Mon Apr 15 09:59:53 2024 +0200 fix: cache subject metadata for redirect (#23999) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** Caches subject metadata on the permission redirect screen, fixing the problem where the dapp icon would disappear while redirecting. Also fixes the centering on this icon as well as multiple other icons in the app. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23999?quickstart=1) ## **Manual testing steps** 1. Connect to any dapp 2. Notice the difference in the redirection screen ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** https://github.com/MetaMask/metamask-extension/assets/1561200/5b7a3ccc-47a8-4f95-932b-f544e998f331 ### **After** https://github.com/MetaMask/metamask-extension/assets/1561200/dc331711-388b-4d53-a869-e89618742119 commit 833b601f1b5100708b3a45bdca36c9d768e620f8 Author: Nidhi Kumari <nidhi.kumari@consensys.net> Date: Mon Apr 15 12:34:37 2024 +0530 fix: Updated avatar favicon props for single account disconnect toast (#23935) This PR ensures that when a single account is disconnected from the Dapp via connections. It shouldn't break the page and disconnects smoothle ## **Related issues** Fixes: #23790 ## **Manual testing steps** 1. Run extension with Multichain flag 2. Connect a single account to uniswap 3. Go to connections page, click on disconnect account. 4. It should disconnect the account ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/39872794/f4356be1-e6b8-4319-b2a0-be5439173fbe ### **After** https://github.com/MetaMask/metamask-extension/assets/39872794/779ababe-d6a2-4f9a-aca8-d09284dd4aee ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit ac9e13bb33ab5c3104ead0b51002c459b5618bf6 Author: David Murdoch <187813+davidmurdoch@users.noreply.github.com> Date: Mon Apr 15 01:47:28 2024 -0400 ci: update `actions/setup-node` to v4 (#23821) commit 25ae5a46257cf735b0acdf03140b6dc08f665cd7 Author: micaelae <100321200+micaelae@users.noreply.github.com> Date: Fri Apr 12 13:35:22 2024 -0700 fix: new-network button label colors are not readable in light mode (#23988) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** This fixes the style of footer buttons in the new-network component so they are readable in both light and dark mode. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23988?quickstart=1) ## **Related issues** Fixes: [23725](https://github.com/MetaMask/metamask-extension/issues/23725) ## **Manual testing steps** 1. Turn on dark mode setting in extension 2. Add a new network 3. Verify that "Got it" button text is black 4. Verify that "Learn to bridge" button text is blue 5. Verify that "Learn to bridge" button text is black on hover 6. Turn on light mode setting in extension 2. Add a new network 3. Verify that "Got it" button text is white 4. Verify that "Learn to bridge" button text is blue 5. Verify that "Learn to bridge" button text is white on hover ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** ![image](https://github.com/MetaMask/metamask-extension/assets/100321200/365fc1e7-e874-4bd6-aa12-3de97f0396d3) ### **After** <img width="341" alt="Screenshot 2024-04-11 at 10 59 23 AM" src="https://github.com/MetaMask/metamask-extension/assets/100321200/63f45351-3601-4ee7-9c5b-f74cb3fe3f85"> ## **Pre-merge author checklist** - [X] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [X] I've completed the PR template to the best of my ability - [X] I’ve included tests if applicable - [X] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [X] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit d6987bb6a0180f898bd5e4bf765c3636f985efef Merge: fef29be936 6428b33b72 Author: Dan J Miller <danjm.com@gmail.com> Date: Fri Apr 12 17:28:04 2024 -0230 Merge pull request #24010 from MetaMask/master-sync chore: Master sync following v11.14.0 commit 6428b33b72c8a98988610137a86fd33e713cab37 Merge: 8d7ec3a795 fef29be936 Author: Dan J Miller <danjm.com@gmail.com> Date: Fri Apr 12 17:05:27 2024 -0230 Merge origin/develop into master-sync commit fef29be93645f6f61130dc49fea0a4f3cdc7b535 Author: George Weiler <georgejweiler@gmail.com> Date: Fri Apr 12 11:44:36 2024 -0600 feat: adds a ramps banner to home pages when users have zero balance (#23352) ## **Description** This PR adds a new component: `<RampsCard />` which is meant to replace the `<AssetListConversionButton/>` component. The `AssetListConversionButton` has been removed. Insteard, a "receive tokens" link and the RampsCard have been added. The RampsCard component will appear when the user has a zero native balance on the connected network and is meant to drive users toward the pdapp for onramping. There are 3 variants of the `<RampsCard>` for each of the 3 home page tabs: `Tokens`, `NFTs` and `Activity`. These variants have different designs but equal functionality. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23352?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Connect to an account with `0` balance and verify that the ramps card is appearing 2. Check each tab to verify the variants change the text, color and imagery of the ramps card. 3. Change network and verify that the copy changes to the native token of that network 4. Verify that each ramps card directs to the pdapp onramping feature ## **Screenshots/Recordings** Designs: <img width="357" alt="Screenshot 2024-03-06 at 9 46 55 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/72e5da0e-429f-4886-9883-be6e2faaec1d"> <img width="354" alt="Screenshot 2024-03-06 at 9 46 51 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/88405f28-22ae-439d-a3cb-ba17a453958b"> <img width="362" alt="Screenshot 2024-03-06 at 9 46 42 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/0ae7bbb0-414a-460e-a1fd-c9d83be96900"> Storybook: <img width="1243" alt="Screenshot 2024-03-06 at 9 51 02 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/7b3a0ffb-2b4f-4888-86e4-4cbd4bc1156b"> ### **Before** <img width="372" alt="Screenshot 2024-03-06 at 9 53 58 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/6f2b8771-45a3-43ad-86c7-56d72a9a188e"> ### **After** <img width="363" alt="Screenshot 2024-03-06 at 9 58 13 AM" src="https://github.com/MetaMask/metamask-extension/assets/15269424/7388777a-8dc9-4848-9c7b-8d0b78d5b837"> ![Screenshot 2024-03-19 at 12 42 06 PM](https://github.com/MetaMask/metamask-extension/assets/15269424/3549c187-4ff1-48fe-854a-4b01f9326b32) ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [x] I've linked related issues - [x] I've included manual testing steps - [x] I've included screenshots/recordings if applicable - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [x] I’ve properly set the pull request status: - [x] In case it's not yet "ready for review", I've set it to "draft". - [x] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Kevin Le Jeune <kevin.le-jeune@consensys.net> Co-authored-by: Dan J Miller <danjm.com@gmail.com> commit 1098a101587ef92bc4ea09047265c7f4db86d338 Author: Matthew Walsh <matthew.walsh@consensys.net> Date: Fri Apr 12 15:06:00 2024 +0100 fix: simulation metrics performance (#23992) commit d15cc543d8349c92d12f76702cb2457cb181bfd8 Author: Nidhi Kumari <nidhi.kumari@consensys.net> Date: Fri Apr 12 16:24:11 2024 +0530 fix: Added connections logic specific to dapp (#23844) This PR is to ensure that the correct connected accounts show up when you visit the connections page via the permissions page ## **Related issues** Fixes: [MetaMask-planning/issues/2282](https://github.com/MetaMask/MetaMask-planning/issues/2282) ## **Manual testing steps** 1. Go to permissions page 2. check the permission page redirect you to connection page correctly ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/39872794/e4dc2fcb-55aa-415c-8bc1-cd697405353e ### **After** https://github.com/MetaMask/metamask-extension/assets/39872794/ee592980-9c3a-4df4-bcef-7cade7422190 ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: David Walsh <davidwalsh83@gmail.com> commit b056a8bff4f766237062fca9acc6ac8b8018cf36 Author: Thomas Huang <tmashuang@users.noreply.github.com> Date: Thu Apr 11 14:32:49 2024 -0700 test: Add ability to have any number of ganache servers for e2e (#23783) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> Adds ability to create more than two ganache servers for e2e testing for request queuing. ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23783?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ x ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ x ] I've completed the PR template to the best of my ability - [ x ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ x ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit c0e3ca0a4ed730a509898ec1f1b30931544117de Author: Daniel <80175477+dan437@users.noreply.github.com> Date: Thu Apr 11 20:28:18 2024 +0200 feat: Small updates for Smart Transactions (#23963) ## **Description** This PR includes: - Showing the `SimulationDetails` component on the Smart Transactions status page - Update content for one of the benefits of Smart Transactions - A few event props - Using the latest smart-transactions-controller (8.1.0) ## **Related issues** Fixes: ## **Manual testing steps** 1. To see the `SimulationDetails`component on the STX status page, you could try a swap on a 3rd party dapp on the Sepolia test network. Then it will show token from, token to and their amounts. 2. For event props, you can look for the `Transaction Finalized` event if you opted into metrics and see the new props there 3. The latest STX controller uses the `metamask.io` domain for API calls, which you can verify in the Network tab in dev tools ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit b8159d4790456f6b1f0d180091f27d383fd49bc5 Author: Xiaoming Wang <dawnseeker8@gmail.com> Date: Thu Apr 11 17:23:31 2024 +0100 fix(23804): unable to add QR code account (#23903) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** The connection via QR code on Hardware wallet is not proceeding past scanning the QR code. Functionality is working in the release version v11.13.1. After debuggin the code and discover that the issue is caused by Keyring Controller upgraded to 13.0.0. and `#addQRKeyring` function have bug to pass a empty accounts array as parameters to keyring, cause the Keystone MetamaskKeyring default properties all are undefined during deserialise() process. This fix patch the `@metamask/keyring-controller` to remove the empty array passed to KeyStone MetamaskKeyring so that all default properies in keyring will remain the same. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23903?quickstart=1) ## **Related issues** Fixes: #23804 ## **Manual testing steps** 1. On your hardware wallet, fetch the QR code for MetaMask 2. Proceed to add hardware wallet from the account drop-down selector 3. Select QR-based and Continue 4. Scan the QR code from the hardware wallet 5. user should be able to select QR code account and imported ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** https://private-user-images.githubusercontent.com/120041701/318063954-da648f60-e044-4dd4-8e10-484f68dc4ee4.mov?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTI2MzkzNTQsIm5iZiI6MTcxMjYzOTA1NCwicGF0aCI6Ii8xMjAwNDE3MDEvMzE4MDYzOTU0LWRhNjQ4ZjYwLWUwNDQtNGRkNC04ZTEwLTQ4NGY2OGRjNGVlNC5tb3Y_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNDA5JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDQwOVQwNTA0MTRaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1iM2QzMDllNTliMzNhNTc5YjVjMDJiY2M3MjZjYWU2NGExNWQ5OWY1MzI3NjExZDc3OWZmOGJhOTk5ODBhZDJjJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.visSNnKwa_VELXLKh5PBUgbuMvBqOKMDH-oieICU_UI <!-- [screenshots/recordings] --> ### **After** https://github.com/MetaMask/metamask-extension/assets/7315988/d4bd8765-499c-40b2-8429-117b58f61a9c <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com> commit 324b55baefea478e41dce36a394590f64247f116 Author: Matthew Walsh <matthew.walsh@consensys.net> Date: Thu Apr 11 16:46:01 2024 +0100 fix: always use remote token list for default petnames (#23919) commit c84fc8c8da2a4d3663eb0129c8471ccf18c9ce5c Author: salimtb <salim.toubal@outlook.com> Date: Thu Apr 11 16:47:05 2024 +0200 fix: update arbitrum logo (#23969) <!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** update Arbitrum logo [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23969?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to popular network 2.check arbitrum logo ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** ![Screenshot 2024-04-11 at 15 36 14](https://github.com/MetaMask/metamask-extension/assets/26223211/c3809a9c-22ed-42f9-ad2c-452b457bb7b2) ### **After** <img width="1176" alt="Screenshot 2024-04-11 at 15 35 13" src="https://github.com/MetaMask/metamask-extension/assets/26223211/debdadfc-15b7-45bb-a91f-967ac6f7349a"> ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [ ] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. commit 6bd3de731a912e63ad2c62264a8a69479ac1ce60 Author: Michele Esposito <34438276+mikesposito@users.noreply.github.com> Date: Thu Apr 11 12:41:39 2024 +0200 fix(browser-passworder): `isVaultUpdated` should not return promise (#23573) ## **Description** <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> The encryptor factory currently constructs `isVaultUpdated` as an async function, but the underlying browser-passworder's method does not return a promise, and KeyringController does not await it. This means that `isVaultUpdated` will always return a truthy value when not awaited, never updating the vault _before_ a user action. [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23573?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> ## **Pre-merge author checklist** - [ ] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've clearly explained what problem this PR is solving and how it is solved. - [ ] I've linked related issues - [ ] I've included manual testing steps - [ ] I've included screenshots/recordings if applicable - [ ] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I’ve applied the right labels on the PR (see [l…
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
amon-hen-v1
Represents blocking issues for the release of Amon Hen
regression-develop
Regression bug that was found on development branch, but not yet present in production
release-11.16.0
Issue or pull request that will be included in release 11.16.0
Sev2-normal
Normal severity; minor loss of service or inconvenience.
team-wallet-ux
type-bug
Describe the bug
When using the three-dot menu next to an account in the Connections popup view, then clicking "Disconnect", I get an error that bricks the extension.
Expected behavior
The account should be disconnected without problem.
Screenshots/Recordings
Screen.Recording.2024-03-28.at.2.17.59.PM.mov
Steps to reproduce
Error messages or log output
Oddly enough, above it I'm seeing a few more errors that look related:
The text was updated successfully, but these errors were encountered: