dart-sass
Advanced tools
Changelog
1.23.3
@extend
crossed module boundaries.Changelog
1.23.2
Fix a bug when compiling all Sass files in a directory where a CSS file could
be compiled to its own location, creating an infinite loop in --watch
mode.
Properly compile CSS entrypoints in directories outside of --watch
mode.
Changelog
1.23.1
Fix a bug preventing built-in modules from being loaded within a configured module.
Fix a bug preventing an unconfigured module from being loaded from within two different configured modules.
Fix a bug when meta.load-css()
was used to load some files that included
media queries.
Allow saturate()
in plain CSS files, since it can be used as a plain CSS
filter function.
Improve the error messages for trying to access functions like lighten()
from the sass:color
module.
Changelog
1.23.0
Launch the new Sass module system! This adds:
The @use
rule, which loads Sass files as modules and makes their
members available only in the current file, with automatic namespacing.
The @forward
rule, which makes members of another Sass file available
to stylesheets that @use
the current file.
Built-in modules named sass:color
, sass:list
, sass:map
, sass:math
,
sass:meta
, sass:selector
, and sass:string
that provide access to all
the built-in Sass functions you know and love, with automatic module
namespaces.
The meta.load-css()
mixin, which includes the CSS contents of a module
loaded from a (potentially dynamic) URL.
The meta.module-variables()
function, which provides access to the
variables defined in a given module.
The meta.module-functions()
function, which provides access to the
functions defined in a given module.
Check out the Sass blog for more information on the new module system. You can also use the new Sass migrator to automatically migrate your stylesheets to the new module system!
Changelog
1.22.12
Potentially breaking bug fix: character sequences consisting of two or
more hyphens followed by a number (such as --123
), or two or more hyphens on
their own (such as --
), are now parsed as identifiers in accordance with
the CSS spec.
The sequence --
was previously parsed as multiple applications of the -
operator. Since this is unlikely to be used intentionally in practice, we
consider this bug fix safe.
.css
files would be ignored in --watch
mode.Allow underscore-separated custom functions to be defined.
Improve the performance of Node.js compilation involving many @import
s.
Changelog
1.22.10
get-function()
would fail to find a dash-separated
function when passed a function name with underscores.Changelog
1.22.9
Include argument names when reporting range errors and selector parse errors.
Avoid double Error:
headers when reporting selector parse errors.
Clarify the error message when the wrong number of positional arguments are passed along with a named argument.
Changelog
1.22.6
Potentially breaking bug fix: The keywords()
function now converts
underscore-separated argument names to hyphen-separated names. This matches
LibSass's behavior, but not Ruby Sass's.
Further improve performance for logic-heavy stylesheets.
Improve a few error messages.