-
Notifications
You must be signed in to change notification settings - Fork 5.4k
release- Version v11.14.0 #23715
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
release- Version v11.14.0 #23715
Conversation
## **Description** Removing Brian Bergeron from Accounts team and adding Chloe Gao to Extension Platform. [](https://codespaces.new/MetaMask/metamask-extension/pull/23235?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 [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.
## **Description** Implements the 'Switch to this account' and the 'Disconnect' buttons on the ConnectedAccountsMenu panel. [](https://codespaces.new/MetaMask/metamask-extension/pull/23258?quickstart=1) ## **Related issues** Fixes: https://github.com/MetaMask/MetaMask-planning/issues/2172 ## **Manual testing steps** 1. Connect two accounts to a dApp 2. Open the Connected Accounts menu panel 3. Switch between the accounts 4. Disconnect an account ## **Screenshots/Recordings** https://github.com/MetaMask/metamask-extension/assets/11148144/eca77143-c53b-4978-b698-3cb4d2e3ac95 https://github.com/MetaMask/metamask-extension/assets/11148144/13d2a4bf-042f-477a-85b6-3459bbc0eb39 ### **Before** ### **After** ## **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 - [ ] 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". - [x] 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. --------- Co-authored-by: NidhiKJha <menidhikjha@gmail.com> Co-authored-by: Nidhi Kumari <nidhi.kumari@consensys.net>
## **Description** ### **Requirements**: - [x] #23007 Add more MetaMetrics events related to snap account interactions (see [scenarios](#scenarios) below). <div id="scenarios"></div> #### Scenarios **Settings**: - [x] Account Snap Experimental Toggle On **Account menu**: - [x] Add account Snap button clicked **Snap account creation**: - [x] Create account snap confirmation seen - [x] Create account Snap Cancel button clicked - [x] Create account Snap Create button clicked - [x] Account created confirmation seen - [x] Account created confirmation ok button clicked - [x] Account Snap successfully created **Snap account removal**: - [x] Remove account snap confirmation seen - [x] Remove account Snap Cancel button clicked - [x] Remove account Snap Create button clicked - [x] Account removed confirmation seen - [x] Account removed confirmation ok button clicked - [x] Account Snap successfully removed **Snap account transactions**: - [x] Please complete the transaction on the Snap spinner shown - [x] Finish signing with account snap confirmation shown - [x] Finish signing with account Snap URL clicked - [x] Finish signing with account Snap Close button clicked - [x] Finish signing with account Snap Go to site button clicked ## **Related issues** Fixes: MetaMask/accounts-planning#247 ## **Manual testing steps** Start the `mock-segment.js` server. If you also wish to see event's content, you can use this branch to run the server first: `feature/mock-segment-verbose`. > Alternatively, you can "cherry-pick" the changes without the actual commit like so: > `git cherry-pick -n f938d6d` Run the server: ```console # With the `feature/mock-segment-verbose` changes node development/mock-segment.js -v # Without node development/mock-segment.js ``` Then: 1. Build and install the extension (as usual) and load it 2. Use the SSK dapp: https://metamask.github.io/snap-simple-keyring/latest/ 3. Refers to [those scenarios](#scenarios) and "run" some of them manually using the SSK dapp and your extension ## **Screenshots/Recordings** https://github.com/MetaMask/metamask-extension/assets/569258/6deaa8ca-fa06-42f5-9681-d11a3ffba15f https://github.com/MetaMask/metamask-extension/assets/569258/d9500d01-42ea-4516-8be0-bfe5ab76875d https://github.com/MetaMask/metamask-extension/assets/569258/38c13db6-aa80-44c7-95b5-98bd305f7036 https://github.com/MetaMask/metamask-extension/assets/569258/032ed421-7a4c-4710-8343-2816dd4559ae https://github.com/MetaMask/metamask-extension/assets/569258/93f0917b-b7f0-4c06-acd6-00e7fc9aa9d1 https://github.com/MetaMask/metamask-extension/assets/569258/805694c0-97aa-4e5e-b101-7fd67eed3dfa https://github.com/MetaMask/metamask-extension/assets/569258/008d6e2d-15f9-4e2a-88e5-30f333a71035 ## **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". - [x] 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.
## **Description** This PR changes the Snap UI renderer to use `gap` for spacing between elements instead of margin. This is more effective than our previous attempts at normalizing spacing with nested panels etc. The new standard is `8px` of gap between everything except panels at the root level which has `16px` of gap (at the request of @eriknson). This PR removes all the margins for the existing components. [](https://codespaces.new/MetaMask/metamask-extension/pull/23369?quickstart=1)
… is no longer used statically (#23278) This change https://github.com/MetaMask/metamask-extension/pull/22531/files#diff-89ed0c4bbc62cc2f988334cb1572c5667d03bbf48b44c89f1d8f9e685bd2c257R6 allows for this PR. Fixes #23094
## **Description** Fixes some things with the asset picker. 1. Too tall. Vertical padding was increased in [4a930f9](4a930f9#diff-0c6f888c60276323462869ba5dbaf02088f5f06b37c2adb424f38caa8462608cR131-R13) to support the NFT case, but this made native + erc20 too tall. before: <img width="345" alt="Screenshot 2024-02-29 at 11 39 32 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/bea36359-bc83-4cbe-ab17-898b3afcb68e"> after: <img width="345" alt="Screenshot 2024-02-29 at 11 44 57 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/28028be7-f2fb-4758-a2fe-5208e99fa2a5"> [original figma design](https://www.figma.com/file/LDlI7yjKBNIY60MtQv9QS0/Amon-Hen%2FV1?node-id=2385%3A169151&mode=dev): <img width="317" alt="Screenshot 2024-02-29 at 11 32 53 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/5f20c6e0-08da-49bb-8346-5335286ee89e"> 2. Token id not always right aligned during NFT case 3. Images missing from pill in NFT and some ERC20 cases 4. ERC721 balance had regressed - showing blank instead of # of NFTs you own. before: <img width="344" alt="Screenshot 2024-03-05 at 12 14 20 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/b120518a-b875-4718-857c-d2a6f9615ce6"> after: <img width="347" alt="Screenshot 2024-02-29 at 11 53 51 PM" src="https://github.com/MetaMask/metamask-extension/assets/3500406/2180ab8f-5260-43cf-8250-592e5ce11c77"> [](https://codespaces.new/MetaMask/metamask-extension/pull/23264?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** - Send an NFT in the new asset flow, verify the pill has the NFT's image ## **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 [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.
## **Description** A follow-up PR to add tooltips to ConnectionListItem. <!-- 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? --> [](https://codespaces.new/MetaMask/metamask-extension/pull/23189?quickstart=1) ## **Related issues** Fixes: https://github.com/MetaMask/MetaMask-planning/issues/1980 ## **Manual testing steps** 1. Open Metamask 2. Connect to a dapp on at least 8 accounts 3. Go To "All Permissions" screen from the global menu item 4. Hover over an Account AvatarGroup 5. Verify that the tooltip shows a maximum of 7 accounts with blockies/jazzicons and has a "+X more" representing the accounts we could not show in the tooltip. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** No tooltip <!-- [screenshots/recordings] --> ### **After** <img width="358" alt="image" src="https://github.com/MetaMask/metamask-extension/assets/10986371/158aa934-c22d-4094-890e-f6ab81bd31b1"> <!-- [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 [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.
## **Description** Bumps `snaps-registry` to the latest version. This package contains the validation logic for the Snaps registry. This validation logic was flawed for signatures of certain lengths and caused a production outage. For more context: MetaMask/snaps-registry#471 [](https://codespaces.new/MetaMask/metamask-extension/pull/23380?quickstart=1)
## **Description** Enables Snaps home pages in stable. We thought we had already done this, but it turns out we forgot enable it. [](https://codespaces.new/MetaMask/metamask-extension/pull/23383?quickstart=1)
## **Description** Adds a show/hide element which toggles whether the private key input value is visible or not. > [!NOTE] > This is the same PR as #20719 from external repo, due to `ci/circleci: prep-deps` always failed for external contributor. I create this PR internally as workaround to run CI. <!-- 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? --> [](https://codespaces.new/MetaMask/metamask-extension/pull/23371?quickstart=1) ## **Related issues** Fixes: #20630 ## **Manual testing steps** 1. Click the accounts menu dropdown 2. Select `Import account` 3. Ensure the private key input defaults to hidden 4. Ensure the show/hide toggle switches between input visibility appropriately 5. Ensure that the private key import functionality is otherwise unchanged ## **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/8112138/d0b2da48-fed9-403f-aaf3-907b4336b136 <!-- [screenshots/recordings] --> ### **After** https://github.com/MetaMask/metamask-extension/assets/8112138/4d8608fc-f765-4b45-a89b-edb13bfd9542 <!-- [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 - [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.
## **Description** This PR updates the E2E testing instructions in our README to enhance clarity and usability. The updates focus on: - Simplified Test Build Preparation: Instructions have been added for easier and quicker preparation of test builds: use `yarn download-builds:test` to download pre-built test builds. - Guidance on specific types of test builds: Clear instructions are now provided for running tests on different build types, ensuring contributors can accurately test against their desired build types. - Add instructions to run e2e tests against specific feature flag - Remove the manual Chrome driver update process from readme, as our E2E tests now automatically download the latest Chrome driver. - Updated the test path for an example. ## **Related issues** Fixes: MetaMask/MetaMask-planning#2187 ## **Manual testing steps** Try to follow readme to run e2e tests to see if it's clear. ## **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 - [x] 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.
## **Description** The notifications team is working to introduce a new type of notifications within the extension. These notifications will be listed in a menu where the user can access basic information. By clicking on an single notification, the user will be able to access detailed data. This PR introduces the necessary components to display individual items within the list and the various types of details for each notification type. ## **Related issues** ## **Manual testing steps** Currently, the individual components can be tested within Storybook. For each created component, there is a corresponding story for testing and demonstration purposes. ## **Screenshots/Recordings** ### **Before** ### **After** These are two screenshots taken from the Figma design created by the design team. They represent the notifications list page and the notification detail page. **Notifications list** https://www.figma.com/file/c7GgNw2kScGrVyRGAPhwEd/Notifications?type=design&node-id=1030%3A98661&mode=design&t=MHqDKTFq36ifnkqJ-1 **Notification details page** https://www.figma.com/file/c7GgNw2kScGrVyRGAPhwEd/Notifications?type=design&node-id=1030%3A98983&mode=design&t=MHqDKTFq36ifnkqJ-1 ## **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. - [ ] 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". - [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). - [ ] 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.
## **Description** Added `usePolling` hook and used it within `useSafeGasEstimatePolling` hook. This replaces where gas estimates are coming from for the confirmation flow. ## **Related issues** Fixes: MetaMask/MetaMask-planning#2014 ## **Manual testing steps** 1. Hit send button 2. get to confirmation screen 3. see that gas estimation updates ## **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. --------- Co-authored-by: Shane Jonas <jonas.shane@gmail.com> Co-authored-by: Alex Donesky <adonesky@gmail.com>
## **Description** Fixing a regression with AvatarGroup where the missing mapping for avatarValue was causing tokens in the AvatarGroup to not show images. <!-- 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? --> [](https://codespaces.new/MetaMask/metamask-extension/pull/23396?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] --> <img width="358" alt="image" src="https://github.com/MetaMask/metamask-extension/assets/10986371/3e317b96-989b-486f-870c-ff51f013796f"> ### **After** <!-- [screenshots/recordings] --> <img width="357" alt="image" src="https://github.com/MetaMask/metamask-extension/assets/10986371/9abf3cbf-e6dd-4844-9f68-f93fcaeed39c"> <img width="358" alt="image" src="https://github.com/MetaMask/metamask-extension/assets/10986371/3fbeacc6-5ef2-45f5-abc2-cb11d4a0382e"> ## **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.
## **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? --> When using the per-dapp network selection feature flag, subscribe and filter requests are not respecting the per-dapp selection. This the main goal of this PR. Additionally, this PR correctly uses the persisted values for the feature flag. It also addresses an issue where changing the feature flag value would require dapps to be refreshed. ## **Related issues** ## **Manual testing steps** **note** to test subscribe: 1. go to https://docs.metamask.io/wallet/reference/eth_subscribe/ 2. open dev tools / console and add event listener: `window.ethereum.on('message', ({data}) => console.log(parseInt(data.result.number, 16)));` 3. hit execute on eth_subscribe 4. console should now start showing block updates 1. Basic Functionality Tests: - Verify that subscribing to different Ethereum events (like block headers, logs, or specific event types) works as expected. - Test filtering functionalities, ensuring that the filter correctly captures and displays events based on provided criteria. 3. Network-Specific Tests: - Test the subscribe and filter functionalities across different networks (mainnet, Ropsten, Kovan, etc.) to ensure consistent behavior. - Check for any network-specific issues or inconsistencies in the functioning of the subscribe and filter features. 5. Test with and without useRequestQueue Feature Flag: - Conduct tests with the useRequestQueue feature flag enabled and verify the functioning of the subscribe and filter features. - Repeat the tests with the feature flag disabled to ensure that the functionalities remain stable and consistent. 6. Repeat the above tests, but in a multi-dapp scenario ## **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 [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. --------- Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com>
Updates `devcontainer.json` with our default VSCode extension-recommendations.
## **Description** We are moving our mmi controller to TS, this PR is the start of that. ## **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 [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. --------- Co-authored-by: Albert Olive <albertolivecorbella@gmail.com>
## **Description** Updates an e2e snapshot for MMI. [](https://codespaces.new/MetaMask/metamask-extension/pull/23395?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 [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.
## **Description** This PR is the beginning of a series aimed at reorganizing the `test/e2e` repository to create a structure that is both well-organized and easy to navigate. The goal is to enhance the overall efficiency and accessibility of our e2e tests. This reorganization work will be split into multiple PRs, ensures that each PR remains manageable and easy to review, facilitating better feedback and more efficient integration. In this initial step, I've started by creating multiple folders within the `test/e2e/tests` repo to group tests by feature. This allows for a more intuitive organization, with each set of feature-related tests contained within its own dedicated folder. The tests that were most evidently associated with a specific feature have been sorted into the appropriate new folders. The remaining test cases, which may require further discussion or clarification to assign correctly, will be addressed in future PRs. The reason behind organizing test cases by features is to streamline the ownership of tests, with each feature team being responsible for one or multiple folders related to the features they develop and maintain. This fosters a sense of ownership and aligns testing efforts closely with feature development. I did not create a separate repo for each feature team due to potential maintenance challenges, especially if we have team reorganizations in the future. Additionally, other files such as helpers, modules, and utility files that support these tests are also planned to be reorganized in the following PRs. ## **Related issues** Fixes: #23296 ## **Manual testing steps** Check if the organization is logical. ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/105063779/f1e1899c-7e84-495a-8b2f-75377dcfb181 ### **After** https://github.com/MetaMask/metamask-extension/assets/105063779/16c3a5d6-e1fc-4380-a31f-bcb4e8b83bba ## **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 - [ ] 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.
## **Description** Creates a simple Disconnect All modal which can be used for both Accounts and Snaps ## **Related issues** Fixes: [2212](https://app.zenhub.com/workspaces/metamask-wallet-ux-63529dce65cbb100265a3842/issues/gh/metamask/metamask-planning/2212) Fixes: [2212](https://github.com/MetaMask/MetaMask-planning/issues/2212) ## **Manual testing steps** 1. Go to storybook 2. Check the Disconnect all Modal design is same as figma ## **Screenshots/Recordings** ### **Before** NA ### **After** <img width="339" alt="SCR-20240217-lmpr" src="https://github.com/MetaMask/metamask-extension/assets/46655/18a09e75-78f9-428b-b679-46348228db58"> ## **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. --------- Co-authored-by: Nidhi Kumari <nidhi.kumari@consensys.net> Co-authored-by: NidhiKJha <menidhikjha@gmail.com> Co-authored-by: Jony Bursztyn <jony.bursztyn@consensys.net>
## **Description** Adding a what's new notification for Portfolio <!-- 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? --> [](https://codespaces.new/MetaMask/metamask-extension/pull/23359?quickstart=1) ## **Related issues** Fixes: https://github.com/MetaMask/MetaMask-planning/issues/2181 ## **Manual testing steps** 1. Open Extension 2. Confirm that the Portfolio What's New appears 3. Confirm that upon clicking the CTA, you are sent to the Portfolio website 4. Confirm that on dismissal, the notification does not show up again ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> <img width="358" alt="image" src="https://github.com/MetaMask/metamask-extension/assets/10986371/44d9d700-1a46-4595-a126-0f95ce41e3fe"> ## **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** - [ ] 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.
## **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? --> As part of ongoing monetization efforts, Portfolio primitives are looking for opportunities to enable new revenue-generating flows. One area is the swaps page, where we can recommend users navigate to MetaMask Bridges if they wish to complete a cross-chain swap. Our hypothesis is that this will allow us to better target users that wish to complete both a swap and a bridge. [](https://codespaces.new/MetaMask/metamask-extension/pull/23437?quickstart=1) ## **Related issues** [METABRIDGE-846](https://consensyssoftware.atlassian.net/browse/METABRIDGE-846) ## **Manual testing steps** 1. Go to the Swaps page on any network support by *both* Bridges and Swaps (e.g., Ethereum Mainnet) 2. Verify that the button is available 3. Verify that it links to MetaMask Bridges, with the correct token and chain selected - Verify that the MetaMetrics ID is passed as a query parameter when the page is first loaded 4. Verify that it disappears when you begin to fetch a quote 5. Verify that it doesn't appear at all for networks supported by Swaps but unsupported by Bridges - You may need to remove a Swaps-supported network from `ALLOWED_BRIDGE_CHAIN_IDS`, or add a Swaps Testnet (chain ID 1337) to MetaMask to test this. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <img width="403" alt="Screenshot 2024-03-12 at 5 20 17 PM" src="https://github.com/MetaMask/metamask-extension/assets/44588480/c606c2b8-020d-4c8c-81ce-9b997bb1b8a2"> <!-- [screenshots/recordings] --> ### **After** <img width="403" alt="Screenshot 2024-03-12 at 6 28 45 PM" src="https://github.com/MetaMask/metamask-extension/assets/44588480/8bc5d045-fcb7-4d94-a931-5befe23cc406"> <img width="403" alt="Screenshot 2024-03-12 at 6 29 07 PM" src="https://github.com/MetaMask/metamask-extension/assets/44588480/f73c2622-3520-4b9a-8d5b-2e58c550dbe4"> After clicking the link in either state: <img width="934" alt="Screenshot 2024-03-12 at 5 18 03 PM" src="https://github.com/MetaMask/metamask-extension/assets/44588480/b2bea962-a658-452a-9a5a-612ca5320e5b"> <!-- [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 - [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** - [ ] 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.
## **Description** Bump snaps packages to latest. Summary of changes in the snaps deps: - Handle unavailable registry more gracefully - Update markdown parsing for better link validation - Fix address validation in row component - Update dependencies
Cherry-pick of PR #23899 for issue [#2318](MetaMask/MetaMask-planning#2318). No conflicts.
## **Description** **Cherry-pick** #23958 When host permissions do not exist for a given domain, firefox sets cors policy to cross-origin. This was preventing getting the blockaid files from our cdn and thus making the feature unusable in firefox. This is fixed by adding `"https://*.cx.metamask.io/"` to the manifest file permissions. [](https://codespaces.new/MetaMask/metamask-extension/pull/23958?quickstart=1) ## **Related issues** Fixes: ## **Manual testing steps** 1. Install the extension in Firefox 2. Make sure that you have security alerts enabled. 3. Go to the test-dapp 4. Try a malicous transaction 5. You should see the `This is a deceptive request`. ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <img width="1187" alt="Screenshot 2024-04-11 at 10 25 37" src="https://github.com/MetaMask/metamask-extension/assets/15957235/1d9dd06b-33d7-408b-846e-08162f0c9a27"> ### **After** <img width="1310" alt="Screenshot 2024-04-11 at 09 48 46" src="https://github.com/MetaMask/metamask-extension/assets/15957235/365d4226-ff2b-44f4-82fc-a35f6c00e01d"> ## **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 - [ ] 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.
Builds ready [0b06217]
Page Load Metrics (923 ± 548 ms)
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
## **Description** Bumps `snaps-utils` in the RC to fix a problem where over-eager validation would prevent Snaps from displaying text that contained URLs that weren't `https://`. [](https://codespaces.new/MetaMask/metamask-extension/pull/23956?quickstart=1) --------- Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com>
|
Confirmations UX Team QA Sign Off status:
|
… (#23984) Cherry-pick of PR #23919 for issue [#2339](MetaMask/MetaMask-planning#2339). Conflicts in `MetamaskController` and `useDisplayName`.
<!-- 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** Cherry-picks the removal and re-ordering of "whats new" announcements to the RC.
|
@seaona |
Co-authored-by: Harika Jetpoluru <153644847+hjetpoluru@users.noreply.github.com> Co-authored-by: Dan J Miller <danjm.com@gmail.com>
Builds ready [48593fa]
Page Load Metrics (694 ± 526 ms)
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
<!-- 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** <!-- 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? --> [](https://codespaces.new/MetaMask/metamask-extension/pull/24004?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 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.
|
@SocketSecurity ignore-all Two new author warnings, one is a nodejs team member and one is a trezor org bot. The fetch usage in the transaction controller is part of the new simulations feature, and the shell access is part of one of our dev tools |
Builds ready [03cb3ac]
Page Load Metrics (2373 ± 882 ms)
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
Description
RC v11.14.0