Umbrüche
Neue Versionen von Sass sind so rückwärtskompatibel wie möglich, aber manchmal sind Breaking Changes notwendig. Sass muss mit der sich entwickelnden CSS-Spezifikation Schritt halten und alte Sprachdesign-Fehler müssen gelegentlich behoben werden.
Vor jeder Veröffentlichung eines Breaking Change geben Sass-Implementierungen Deprecation-Warnungen für Stylesheets aus, deren Verhalten sich ändern wird. Wann immer möglich, werden diese Warnungen Vorschläge enthalten, wie die veralteten Stile aktualisiert werden können, um sie vorwärtskompatibel zu machen.
Verschiedene Implementierungen haben unterschiedliche Richtlinien für Breaking Changes und Deprecations. Dart Sass gibt mindestens drei Monate lang Deprecation-Warnungen aus, bevor ein Breaking Change veröffentlicht wird, und veröffentlicht den Breaking Change mit einer neuen Hauptversionsnummer, es sei denn, diese Änderung ist für die CSS-Kompatibilität notwendig. CSS-Kompatibilitätsänderungen sind oft sowohl nicht störend als auch zeitkritisch, daher können sie stattdessen mit neuen Nebenversionsnummern veröffentlicht werden.
Diese Breaking Changes kommen bald oder wurden kürzlich veröffentlicht
-
Die ältere JS API beginnend in Dart Sass 1.79.0.
-
Bestimmte Verwendungen der JS Farb-API sind veraltet beginnend in Dart Sass 1.79.0.
-
Eine Reihe von Farb-Funktionen sind veraltet beginnend in Dart Sass 1.79.0, zugunsten neuer CSS Color 4-kompatibler Funktionen.
-
Die Funktion
meta.feature-exists()ist veraltet beginnend in Dart Sass 1.78.0. -
Das Mischen von Deklarationen mit verschachtelten Regeln ändert das Verhalten beginnend in Dart Sass 1.77.7.
-
Funktionen und Mixins, die mit
--beginnen, sind veraltet beginnend in Dart Sass 1.76.0. -
Das Übergeben einer Prozent-Einheit an die globale Funktion
abs()ist veraltet beginnend in Dart Sass 1.65.0. -
Das Übergeben von
nullals Alpha-Kanal annew SassColor()ändert das Verhalten beginnend in Dart Sass 1.64.3. -
Das Laden von Sass als Standard-Export in JS ist nicht mehr erlaubt beginnend in Dart Sass 1.63.0.
-
Eine Variable darf nur ein einziges Flag
!globaloder!defaulthaben beginnend in Dart Sass 1.62.0. -
Selektoren mit ungültigen Kombinatoren sind ungültig beginnend in Dart Sass 1.54.0.
-
/ändert sich von einer Divisionsoperation zu einem Listen-Trennzeichen beginnend in Dart Sass 1.33.0. -
Funktionen sind strenger darin, welche Einheiten sie zulassen beginnend in Dart Sass 1.32.0.
-
Das Parsen der speziellen Syntax von
@-moz-documentwird ungültig beginnend in Dart Sass 1.7.2. -
Compound-Selektoren konnten nicht erweitert werden in Dart Sass 1.0.0 und Ruby Sass 4.0.0.
-
Die Syntax für CSS benutzerdefinierte Eigenschaftswerte hat sich geändert in Dart Sass 1.0.0, LibSass 3.5.0 und Ruby Sass 3.5.0.
Frühes Opt-InPermalink für frühes Opt-In
Dart Sass-Benutzer können sich frühzeitig dafür entscheiden, Deprecations als Fehler zu behandeln, indem sie die Befehlszeilenoption --fatal-deprecation verwenden.