chore: update build targets to chrome 113 and firefox 115#41170
Conversation
|
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. |
✨ Files requiring CODEOWNER review ✨📜 @MetaMask/policy-reviewers (15 files, +196 -358)
Tip Follow the policy review process outlined in the LavaMoat Policy Review Process doc before expecting an approval from Policy Reviewers. |
|
@metamaskbot update-policies |
|
Policies updated. 🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff 👀 lavamoat/browserify/beta/policy.json changes differ from main/policy.json policy changes |
|
@metamaskbot update-policies |
…nto chore/browser-targets-115-113
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Policies updated. 🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff 👀 lavamoat/browserify/beta/policy.json changes differ from main/policy.json policy changes |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
|
@metamaskbot update-policies |
|
Policies updated. 🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff 👀 lavamoat/browserify/beta/policy.json changes differ from main/policy.json policy changes |
| "globals": { | ||
| "AbortController": true, | ||
| "AbortSignal": true, | ||
| "AbortSignal.timeout": true, |
There was a problem hiding this comment.
The policy updates are due to removing polyfills by updating our browserslist support target. we stopped polyfilling built in browser APIs at compile time, so modules that wanted to use the built-in APIs can now do so.
Builds ready [3a526fa]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚀 Bundle size reduced!]
|
|
@metamaskbot update-policies |
|
Policies updated. 🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff 👀 lavamoat/browserify/beta/policy.json changes differ from main/policy.json policy changes |
|
Builds ready [5d88a00]
⚡ Performance Benchmarks
🌐 Dapp Page Load BenchmarksCurrent Commit: 📄 Localhost MetaMask Test DappSamples: 100 Summary
📈 Detailed Results
Bundle size diffs [🚀 Bundle size reduced!]
|
MajorLift
left a comment
There was a problem hiding this comment.
Policy changes are removals, transitive, or narrowing:
AbortSignal->AbortSignal.timeoutnavigator->navigator.{language,platform,...}crypto->crypto.subtledocument->document.visibilityState
| "Document.prototype": true, | ||
| "DocumentFragment.prototype": true, | ||
| "Element.prototype": true, | ||
| "Event.prototype": true, | ||
| "EventTarget.prototype": true, | ||
| "NavigateEvent.prototype": true, | ||
| "NavigationDestination.prototype": true, | ||
| "Node.prototype": true, |
There was a problem hiding this comment.
Internal package. None of these look unexpected for lavadome.
MajorLift
left a comment
There was a problem hiding this comment.
Policy changes are removals, transitive, or narrowing:
AbortSignal->AbortSignal.timeoutnavigator->navigator.{language,platform,...}crypto->crypto.subtledocument->document.visibilityState




Description
This updates the declared build targets to match the browser minimums we already support elsewhere in the extension.
The current browserslist and Babel targets were still pointing at Chrome 89 / Firefox 89, which was lower than our real support floor and causes extra transpilation.
This PR:
chrome >= 113andfirefox >= 115@babel/preset-envpluginsChangelog
CHANGELOG entry: null
Related issues
Fixes:
Manual testing steps
Pre-merge author checklist
Note
Medium Risk
Moderate risk because it changes build/transpilation targets and multiple LavaMoat policies; misconfiguration could cause runtime issues in older browsers or build-time bundling failures.
Overview
Updates declared build targets to Chrome 113+ / Firefox 115+ by bumping
.browserslistrcand Babeltargetsinbabel.config.js, reducing unnecessary transpilation.Adds explicit Babel syntax transforms for
classproperties and private class features (keeping logical assignment transforms) and wires in the needed devDependencies/depcheck ignores.Adjusts LavaMoat Browserify/Webpack policies to match the new Babel plugin dependency graph and to refine/expand allowed globals (e.g.,
AbortSignal.timeout, scopednavigator.*,document.visibilityState,crypto.subtle, and additional DOM prototype access), while removing several now-unneeded@swc/helpersallowances.Written by Cursor Bugbot for commit 5d88a00. This will update automatically on new commits. Configure here.