Changelog
1.63.4
Re-enable support for import sass from 'sass'
when loading the package from
an ESM module in Node.js. However, this syntax is now deprecated; ESM users
should use import * as sass from 'sass'
instead.
On the browser and other ESM-only platforms, only import * as sass from 'sass'
is supported.
Properly export the legacy API values TRUE
, FALSE
, NULL
, and types
from
the ECMAScript module API.
Fix a race condition where closing standard input while requests are in-flight could sometimes cause the process to hang rather than shutting down gracefully.
Properly include the root stylesheet's URL in the set of loaded URLs when it fails to parse.
Changelog
1.63.0
The Dart Sass embedded compiler is now included as part of the primary Dart
Sass distribution, rather than a separate executable. To use the embedded
compiler, just run sass --embedded
from any Sass executable (other than the
pure JS executable).
The Node.js embedded host will still be distributed as the sass-embedded
package on npm. The only change is that it will now provide direct access to a
sass
executable with the same CLI as the sass
package.
The Dart Sass embedded compiler now uses version 2.0.0 of the Sass embedded protocol. See the spec for a full description of the protocol, and the changelog for a summary of changes since version 1.2.0.
The Dart Sass embedded compiler now runs multiple simultaneous compilations in parallel, rather than serially.
Changelog
1.62.1
:has(+ &)
and related constructs would drop the leading
combinator.Changelog
1.62.0
Deprecate the use of multiple !global
or !default
flags on the same
variable. This deprecation is named duplicate-var-flags
.
Allow special numbers like var()
or calc()
in the global functions:
grayscale()
, invert()
, saturate()
, and opacity()
. These are also
native CSS filter
functions. This is in addition to number values which were
already allowed.
Fix a cosmetic bug where an outer rule could be duplicated after nesting was resolved, instead of re-using a shared rule.
Changelog
1.61.0
Potentially breaking change: Drop support for End-of-Life Node.js 12.
Fix remaining cases for the performance regression introduced in 1.59.0.
Changelog
1.60.0
Add support for the pi
, e
, infinity
, -infinity
, and NaN
constants in
calculations. These will be interpreted as the corresponding numbers.
Add support for unknown constants in calculations. These will be interpreted as unquoted strings.
Serialize numbers with value infinity
, -infinity
, and NaN
to calc()
expressions rather than CSS-invalid identifiers. Numbers with complex units
still can't be serialized.
Changelog
1.59.3
Fix a performance regression introduced in 1.59.0.
The NPM release of 1.59.0 dropped support for Node 12 without actually indicating so in its pubspec. This release temporarily adds back support so that the latest Sass version that declares it supports Node 12 actually does so. However, Node 12 is now end-of-life, so we will drop support for it properly in an upcoming release.