source/documentation/breaking-changes/index.md
Before each breaking change is released, Sass implementations will produce deprecation warnings for stylesheets whose behavior will change. Whenever possible, these warnings will include suggestions for how to update the deprecated styles to make them forward-compatible.
Different implementations have different policies for breaking changes and deprecations. Dart Sass will emit deprecation warnings for at least three months before releasing a breaking change, and will release the breaking change with a new major version number unless that change is necessary for CSS compatibility. CSS compatibility changes are often both non-disruptive and time-sensitive, so they may be released with new minor version numbers instead.
These breaking changes are coming soon or have recently been released:
Additional plain CSS function names beginning in Dart Sass 1.98.0
The legacy if() function
beginning in Dart Sass 1.95.0
Private variables in with
beginning in Dart Sass 1.92.0
Misplaced rest arguments beginning in Dart Sass 1.91.0
type() function beginning in Dart
Sass 1.86.0
@import beginning in Dart
Sass 1.80.0
The legacy JS API beginning in Dart Sass 1.79.0.
Certain uses of the JS color API are deprecated beginning in Dart Sass 1.79.0.
A number of color functions are deprecated beginning in Dart Sass 1.79.0, in favor of new CSS Color 4-compatible functions.
The meta.feature-exists() function is
deprecated beginning in Dart
Sass 1.78.0.
Mixing declarations with nested rules is changing behavior beginning in Dart Sass 1.77.7.
Functions and Mixins Beginning with -- are
deprecated beginning in Dart
Sass 1.76.0.
Passing a percentage unit to the global abs() is
deprecated beginning in Dart
Sass 1.65.0.
Passing null as an alpha channel to new SassColor() is changing
behavior beginning in Dart
Sass 1.64.3.
Loading Sass as a default export in JS is no longer allowed beginning in Dart Sass 1.63.0.
A variable may only have a single !global or !default
flag beginning in Dart
Sass 1.62.0.
Strict unary operators beginning in Dart Sass 1.55.0.
Media Queries Level 4 beginning in Dart Sass 1.54.0, and ending the deprecation period in Dart Sass 1.56.0.
Selectors with invalid combinators are invalid beginning in Dart Sass 1.54.0.
/ is changing from a division operation to a list
separator beginning in Dart Sass
1.33.0.
Functions are stricter about which units they allow beginning in Dart Sass 1.32.0.
Parsing the special syntax of @-moz-document will be
invalid beginning in Dart Sass
1.7.2.
Compound selectors could not be extended in Dart Sass 1.0.0 and Ruby Sass 4.0.0.
The syntax for CSS custom property values changed in Dart Sass 1.0.0, LibSass 3.5.0, and Ruby Sass 3.5.0.
Dart Sass users can opt in to treat deprecations as errors early using the
--fatal-deprecation command line
option.