The reference implementation of Sass, written in Dart.
MIT License
Bot releases are visible (Hide)
Published by sassbot over 1 year ago
To install Sass 1.60.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
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.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.59.3, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
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.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.59.2, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.59.1, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.59.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Added a new --fatal-deprecation
flag that lets you treat a deprecation warning as an error. You can pass an individual deprecation ID (e.g. slash-div
) or you can pass a Dart Sass version to treat all deprecations initially emitted in that version or earlier as errors.
New --future-deprecation
flag that lets you opt into warning for use of certain features that will be deprecated in the future. At the moment, the only option is --future-deprecation=import
, which will emit warnings for Sass @import
rules, which are not yet deprecated, but will be in the future.
New Deprecation
enum, which contains the different current and future deprecations used by the new CLI flags.
The compile
methods now take in fatalDeprecations
and futureDeprecations
parameters, which work similarly to the CLI flags.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.58.3, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.58.2, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Add a timestamp to messages printed in --watch
mode.
Print better calc()
-based suggestions for /
-as-division expression that contain calculation-incompatible constructs like unary minus.
See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.58.1, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
hsl()
colors. The deg
unit is incompatible with IE, and while that officially falls outside our compatibility policy, it's better to lean towards greater compatibility.See the full changelog for changes in earlier releases.
Published by sassbot over 1 year ago
To install Sass 1.58.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Remove sourcemap comments from Sass sources. The generated sourcemap comment for the compiled CSS output remains unaffected.
Fix a bug in @extend
logic where certain selectors with three or more combinators were incorrectly considered superselectors of similar selectors with fewer combinators, causing them to be incorrectly trimmed from the output.
Produce a better error message for a number with a leading +
or -
, a decimal point, but no digits.
Produce a better error message for a nested property whose name starts with --
.
Fix a crash when a selector ends in an escaped backslash.
Add the relative length units from CSS Values 4 and CSS Contain 3 as known units to validate bad computation in calc
.
--watch
flag will now track loads through calls to meta.load-css()
as long as their URLs are literal strings without any interpolation.See the full changelog for changes in earlier releases.
Published by sassbot almost 2 years ago
To install Sass 1.57.1, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot almost 2 years ago
To install Sass 1.57.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
split($string, $separator, $limit: null)
function to sass:string
that splits a string into separate substrings based on a separator string.Potentially breaking bug fix: Custom functions in both the modern and legacy API now properly reject signatures with whitespace between the function name and parentheses.
Custom functions in the legacy API now allow signatures with whitespace before the function name, to match a bug in Node Sass.
Callable.fromSignature()
and AsyncCallable.fromSignature()
now reject signatures with whitespace between the function name and parentheses.See the full changelog for changes in earlier releases.
Published by sassbot almost 2 years ago
To install Sass 1.56.2, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot almost 2 years ago
To install Sass 1.56.1, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
contents
is actually a string and whether sourceMapUrl
is an absolute URL.See the full changelog for changes in earlier releases.
Published by sassbot almost 2 years ago
To install Sass 1.56.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Potentially breaking change: To match the CSS spec, SassScript expressions beginning with not
or (
are no longer supported at the beginning of parenthesized sections of media queries. For example,
@media (width >= 500px) and (not (grid))
will now be emitted unchanged, instead of producing
@media (width >= 500px) and (false)
See the Sass website for details.
Potentially breaking bug fix: Angle units like rad
or turn
are now properly converted to equivalent deg
values for hsl()
, hsla()
, adjust-hue()
, color.adjust()
, and color.change()
.
See the Sass website for details.
Fix indentation for selectors that span multiple lines in a @media
query.
Emit a deprecation warning when passing $alpha
values with units to color.adjust()
or color.change()
. This will be an error in Dart Sass 2.0.0.
See the Sass website for details.
Emit a deprecation warning when passing a $weight
value with no units or with units other than %
to color.mix()
. This will be an error in Dart Sass 2.0.0.
See the Sass website for details.
Emit a deprecation warning when passing $n
values with units to list.nth()
or list.set-nth()
. This will be an error in Dart Sass 2.0.0.
See the Sass website for details.
Improve existing deprecation warnings to wrap /
-as-division suggestions in calc()
expressions.
Properly mark the warning for passing numbers with units to random()
as a deprecation warning.
Fix a bug where @extend
could behave unpredicatably when used along with meta.load-css()
and shared modules that contained no CSS themselves but loaded CSS from other modules.
sassIndex
with units to Value.sassIndexToListIndex()
. This will be an error in Dart Sass 2.0.0.Importer results now validate whether contents
is actually a string type.
Importer result argument errors are now rendered correctly.
See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.55.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Potentially breaking bug fix: Sass numbers are now universally stored as 64-bit floating-point numbers, rather than sometimes being stored as integers. This will generally make arithmetic with very large numbers more reliable and more consistent across platforms, but it does mean that numbers between nine quadrillion and nine quintillion will no longer be represented with full accuracy when compiling Sass on the Dart VM.
Potentially breaking bug fix: Sass equality is now properly transitive. Two numbers are now considered equal (after doing unit conversions) if they round to the same 1e-11
th. Previously, numbers were considered equal if they were within 1e-11
of one another, which led to some circumstances where $a == $b
and $b == $c
but $a != $b
.
Potentially breaking bug fix: Various functions in sass:math
no longer treat floating-point numbers that are very close (but not identical) to integers as integers. Instead, these functions now follow the floating-point specification exactly. For example, math.pow(0.000000000001, -1)
now returns 1000000000000
instead of Infinity
.
Emit a deprecation warning for $a -$b
and $a +$b
, since these look like they could be unary operations but they're actually parsed as binary operations. Either explicitly write $a - $b
or $a (-$b)
. See https://sass-lang.com/d/strict-unary for more details.
Add an optional argumentName
parameter to SassScriptException()
to make it easier to throw exceptions associated with particular argument names.
Most APIs that previously returned num
now return double
. All APIs continue to accept num
, although in Dart 2.0.0 these APIs will be changed to accept only double
.
See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.54.9, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
@media
query deprecation warnings.See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.54.8, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.54.7, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.54.6, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
@media
query could be incorrectly omitted from a stylesheet if it had multiple levels of nested @media
queries within it and the inner queries were mergeable but the outer query was not.See the full changelog for changes in earlier releases.
Published by sassbot about 2 years ago
To install Sass 1.54.5, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Properly consider a ~ c
to be a superselector of a ~ b ~ c
and a + b + c
.
Properly consider b > c
to be a superselector of a > b > c
, and similarly for other combinators.
Properly calculate specificity for selector pseudoclasses.
Deprecate use of random()
when $limit
has units to make it explicit that random()
currently ignores units. A future version will no longer ignore units.
Don't throw an error when the same module is @forward
ed multiple times through a configured module.
sass-embedded
npm package now declares optional dependencies on platform-specific embedded compiler packages.See the full changelog for changes in earlier releases.