Skip to content

Fix deprecated SCSS syntax, separate LibSass from Dart Sass - #499

Draft
paulthewalton wants to merge 11 commits into
twbs:mainfrom
paulthewalton:main
Draft

Fix deprecated SCSS syntax, separate LibSass from Dart Sass#499
paulthewalton wants to merge 11 commits into
twbs:mainfrom
paulthewalton:main

Conversation

@paulthewalton

Copy link
Copy Markdown
  • switch from @import to Sass modules (@use "main")
  • switch to Sass built-in modules (@use "sass:math", etc...)
  • switch from if() SCSS syntax to @if exclusively (deprecated due to collision with native CSS if())
  • bumped versions of node-sass (LibSass) and sass (Dart Sass) to latest
  • switched from Dart Sass legacy JS API to modern JS API in tests
  • separated out LibSass source and tests from Dart Sass due to diverging syntax
  • moved "Enable Class" base styles out of _rfs-media-query-rule mixin since Dart Sass no longer hoists same-selector declarations (for more predictable behaviour with modern native CSS nesting)
  • added fix for mixed-decls behind a flag so that default output behaviour is unchanged

To enable the fix for mixed-decls, load the RFS SASS/SCSS module with

@use "<path/to/rfs>/scss" with (
    $rfs-no-mixed-decls: true
);

@paulthewalton
paulthewalton marked this pull request as draft July 27, 2026 21:03
@paulthewalton

Copy link
Copy Markdown
Author

Should fix #363 , #474 , #492

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant