Skip to content

Update dependency sass to v1.55.0

Ghost User requested to merge renovate/sass-1.x into main

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
sass ^1.45.0 -> 1.55.0 age adoption passing confidence

Release Notes

sass/dart-sass

v1.55.0

Compare Source

  • 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-11th. 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.

Dart API
  • 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.

JS API
  • Fix a bug in which certain warning spans would not have their properties accessible by the JS API.

v1.54.9

Compare Source

  • Fix an incorrect span in certain @media query deprecation warnings.

v1.54.8

Compare Source

  • No user-visible changes.

v1.54.7

Compare Source

  • Add support for 32-bit ARM releases on Linux.

v1.54.6

Compare Source

  • Fix a bug where a @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.

v1.54.5

Compare Source

  • 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 @forwarded multiple times through a configured module.

Embedded Sass
  • Rather than downloading the embedded compiler for the local platform on install, the sass-embedded npm package now declares optional dependencies on platform-specific embedded compiler packages.

v1.54.4

Compare Source

  • Improve error messages when passing incorrect units that are also out-of-bounds to various color functions.

v1.54.3

Compare Source

  • Release a native ARM64 executable for Mac OS.

v1.54.2

Compare Source

  • No user-visible changes.

v1.54.1

Compare Source

  • When unifying selectors for @extend and selector.unify(), ensure that :root, :scope, :host, and :host-context only appear at the beginning of complex selectors.

v1.54.0

Compare Source

  • Deprecate selectors with leading or trailing combinators, or with multiple combinators in a row. If they're included in style rules after nesting is resolved, Sass will now produce a deprecation warning and, in most cases, omit the selector. Leading and trailing combinators can still be freely used for nesting purposes.

    See https://sass-lang.com/d/bogus-combinators for more details.

  • Add partial support for new media query syntax from Media Queries Level 4. The only exception are logical operations nested within parentheses, as these were previously interpreted differently as SassScript expressions.

    A parenthesized media condition that begins with not or an opening parenthesis now produces a deprecation warning. In a future release, these will be interpreted as plain CSS instead.

  • Deprecate passing non-deg units to color.hwb()'s $hue argument.

  • Fix a number of bugs when determining whether selectors with pseudo-elements are superselectors.

  • Treat * as a superselector of all selectors.

Dart API
  • Add a top-level fakeFromImport() function for testing custom importers that use AsyncImporter.fromImport.
JS API
  • Add a charset option that controls whether or not Sass emits a @charset/BOM for non-ASCII stylesheets.

  • Fix Sass npm package types for TS 4.7+ Node16 and NodeNext module resolution.

v1.53.0

Compare Source

  • Add support for calling var() with an empty second argument, such as var(--side, ).
JS API
  • Fix a bug where meta.load-css() would sometimes resolve relative URLs incorrectly when called from a mixin using the legacy JS API.
Embedded Sass
  • Respect npm's proxy settings when downloading the embedded Sass compiler.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, click this checkbox.

This MR has been generated by Renovate Bot.

Merge request reports