fix: silence Sass deprecation warnings - #44727
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/core-extension-ux (2 files, +14 -12)
🫰 @MetaMask/core-platform (1 files, +1 -1)
👨🔧 @MetaMask/extension-platform (2 files, +27 -23)
📜 @MetaMask/policy-reviewers (1 files, +2 -1)
Tip Follow the policy review process outlined in the LavaMoat Policy Review Process doc before expecting an approval from Policy Reviewers. 👨🔧 @itsyoboieltr (2 files, +27 -23)
|
Builds ready [3c6b035]
⚡ Performance Benchmarks (Total: 🟢 16 pass · 🟡 6 warn · 🔴 2 fail)
Bundle size diffs
|
…ngs' into david/fix-sass-deprecation-warnings
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
@metamaskbot update-policies |
|
Policies updated. Tip Follow the policy review process outlined in the LavaMoat Policy Review Process doc before expecting an approval from Policy Reviewers. ✅ lavamoat/webpack/mv2/beta/policy.json changes match lavamoat/webpack/mv2/main/policy.json changes |
Builds ready [94bfcc0]
⚡ Performance Benchmarks (Total: 🟢 15 pass · 🟡 8 warn · 🔴 1 fail)
Bundle size diffs
|
Builds ready [48cfc38]
⚡ Performance Benchmarks (Total: 🟢 13 pass · 🟡 10 warn · 🔴 1 fail)
Bundle size diffs
|
Builds ready [48cfc38]
⚡ Performance Benchmarks (Total: 🟢 13 pass · 🟡 10 warn · 🔴 1 fail)
Bundle size diffs
|
Builds ready [48cfc38]
⚡ Performance Benchmarks (Total: 🟢 13 pass · 🟡 10 warn · 🔴 1 fail)
Bundle size diffs
|
LavaMoat grants — sass-loader 14.1.1 → 17.0.0 ( Three grants in the hand-written override are unreferenced after this bump, and the new
Those three do not come from the generator: they are an explicit The four files Suggested change to "sass-loader": {
"builtin": {
- "url": true,
- "path": true,
- "util": true
+ "node:url.fileURLToPath": true,
+ "node:url.pathToFileURL": true,
+ "node:url": false
},
"packages": {
"sass-embedded": true
},
Removed by this bump: |
|
Builds ready [70abd7e]
⚡ Performance Benchmarks (Total: 🟢 11 pass · 🟡 13 warn · 🔴 0 fail)
Bundle size diffs
|



Description
The upgrade from
sass-embedded1.71.0 to 1.100.0 caused the development webpack build to emit hundreds of Sass deprecation warnings from application and dependency stylesheets.This change:
sass-loaderfrom 14.1.1 to 17.0.0 and explicitly selects the reusable Sass Embeddedmodern-compilerAPIsass-loaderoptions levelquietDeps@importwarning, linked to the follow-up migration issueif()syntaxThe development build and a stylesheet-triggered incremental rebuild complete without Sass deprecation warnings.
Changelog
CHANGELOG entry: null
Related issues
Related to #44725
Manual testing steps
yarn start.Pre-merge author checklist
Pre-merge reviewer checklist
Note
Medium Risk
Touches all SCSS compilation paths (dev, LavaMoat production, Storybook, integration CSS); misconfiguration could break builds or subtly change compiled CSS, though SCSS edits are small compatibility fixes.
Overview
Stops noisy Sass deprecation output after the
sass-embeddedbump by upgradingsass-loaderto 17 and aligning Storybook, main webpack, and integration-test webpack on the same Sass Embeddedmodern-compilersetup.Build configs now pass
sass-embeddedexplicitly (for LavaMoat-friendly resolution), keepwebpackImporter: false, renameincludePaths→loadPaths, and addquietDepsplus temporarysilenceDeprecations: ['import'](tracked in #44725). Integration tests usestyle: 'compressed'instead of deprecatedoutputStyle.First-party SCSS is updated for newer Sass:
map-get→map.getin typography, modernif()syntax infonts.scss, and a whitespace fix in a Snap UI disabled-state selector. LavaMoat policy dropsneo-asyncfromsass-loaderand allowsnode:path/node:url.Reviewed by Cursor Bugbot for commit 70abd7e. Bugbot is set up for automated code reviews on this repo. Configure here.