-
Notifications
You must be signed in to change notification settings - Fork 5.4k
release: 13.11.1 #38390
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
Merged
Merged
release: 13.11.1 #38390
+101
−75
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This PR updates the change log for 13.11.1. (Hotfix - no test plan generated.) --------- Co-authored-by: metamaskbot <metamaskbot@users.noreply.github.com> Co-authored-by: Gauthier Petetin <gauthierpetetin@hotmail.com>
Collaborator
Author
Builds ready [e56057d]
UI Startup Metrics (1249 ± 95 ms)
|
…ling cp-13.11.1 (#38396) - fix: Prevent crash in modal version handling cp-13.11.1 (#38382) <!-- 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** Fixes a crash caused by `useMultichainAccountsIntroModal` that entirely bricks Flask. The crash occurs because the version handling doesn't handle our versioning scheme well. This PR changes the logic to use `previousAppVersion` and strips the `prerelease` part of the version (which indicates the build type) for a proper comparison. Also updates the tests for this hook which were flawed as they didn't use the hook in question at all. [](https://codespaces.new/MetaMask/metamask-extension/pull/38382?quickstart=1) ## **Changelog** <!-- If this PR is not End-User-Facing and should not show up in the CHANGELOG, you can choose to either: 1. Write `CHANGELOG entry: null` 2. Label with `no-changelog` If this PR is End-User-Facing, please write a short User-Facing description in the past tense like: `CHANGELOG entry: Added a new tab for users to see their NFTs` `CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker` (This helps the Release Engineer do their job more quickly and accurately) --> CHANGELOG entry: Fixes a crash when updating Flask ## **Manual testing steps** 1. Force `lastUpdatedFromVersion` to `13.9.0.150` and `previousAppVersion` to `13.9.0-flask.0` 2. See that it crashes without this PR ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <img width="454" height="634" alt="image" src="https://github.com/user-attachments/assets/ea140cfa-66ef-402e-a6cd-3ca3a2bc6402" /> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Fixes modal logic by parsing/stripping prerelease versions and using `previousAppVersion`, preventing crashes; rewrites tests to exercise the hook with provider-backed state. > > - **Hook (`ui/hooks/useMultichainAccountsIntroModal.ts`)**: > - Export `BIP44_ACCOUNTS_INTRODUCTION_VERSION` and switch version source to `state.metamask.previousAppVersion`. > - Parse versions with `semver.parse` and strip prerelease before comparing with `semver.lt`. > - Maintain display conditions (unlocked, feature flag, not previously shown, upgrade, main route) and set `showMultichainIntroModal` accordingly. > - **Tests (`ui/hooks/useMultichainAccountsIntroModal.test.ts`)**: > - Replace standalone logic tests with `renderHookWithProvider` to test the actual hook. > - Add cases for prerelease versions (e.g., `13.4.0-flask.0`) and threshold boundaries; verify behavior across route, lock state, feature flag, prior display, and fresh install. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit a46d32a. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> [a3c1ac2](a3c1ac2) Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
Contributor
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
gauthierpetetin
approved these changes
Nov 28, 2025
Collaborator
Author
Builds ready [7ecad24]
UI Startup Metrics (1216 ± 90 ms)
|
chloeYue
approved these changes
Nov 28, 2025
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
release-13.11.1
Issue or pull request that will be included in release 13.11.1
team-bots
Bot team (for MetaMask Bot, Runway Bot, etc.)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🚀 v13.11.1 Testing & Release Quality Process
Hi Team,
As part of our new MetaMask Release Quality Process, here’s a quick overview of the key processes, testing strategies, and milestones to ensure a smooth and high-quality deployment.
📋 Key Processes
Testing Strategy
Conduct regression and exploratory testing for your functional areas, including automated and manual tests for critical workflows.
Focus on exploratory testing across the wallet, prioritize high-impact areas, and triage any Sentry errors found during testing.
Validate new functionalities and provide feedback to support release monitoring.
GitHub Signoff
Issue Resolution
Cherry-Picking Criteria
🗓️ Timeline and Milestones
✅ Signoff Checklist
Each team is responsible for signing off via GitHub. Use the checkbox below to track signoff completion:
Team sign-off checklist
This process is a major step forward in ensuring release stability and quality. Let’s stay aligned and make this release a success! 🚀
Feel free to reach out if you have questions or need clarification.
Many thanks in advance
Reference
Note
Fixes intro modal gating by stripping prerelease versions and using
previousAppVersion, adds comprehensive hook tests, and bumps version to 13.11.1 with changelog update.useMultichainAccountsIntroModalto parse/strip prerelease versions withsemver.parseand compare againstBIP44_ACCOUNTS_INTRODUCTION_VERSION.state.metamask.previousAppVersioninstead ofgetLastUpdatedFromVersion.BIP44_ACCOUNTS_INTRODUCTION_VERSION.renderHookWithProvider-based tests inui/hooks/useMultichainAccountsIntroModal.test.ts.13.4.0-flask.0) and threshold boundaries.package.jsonversion to13.11.1.CHANGELOG.mdwith13.11.1(Fixes crash when updating Flask) and comparison links.Written by Cursor Bugbot for commit 7ecad24. This will update automatically on new commits. Configure here.