Skip to content

Releases: scssphp/scssphp

2.0.1

31 Jan 12:30
v2.0.1
024f92c
Compare
Choose a tag to compare

Fixed

2.0.0

23 Dec 17:22
v2.0.0
a70358e
Compare
Choose a tag to compare

This release is a full rewrite of the compiler. The new implementation is a port of dart-sass,
making it spec-compliant and easier to update to support new Sass features. However this release
does not implement Sass modules yet.

BC breaks

  • The Compiler class is now final
  • The LoggerInterface now expects more argument in its method signatures
  • \ScssPhp\ScssPhp\OutputStyle is now an enum instead of a class with string constants.
  • Compiler::setOutputStyle now expects an instance of the OutputStyle enum instead of a string.
  • Deprecated methods of the compiler have been removed.

Deprecated

  • Deprecate passing a path as string as the Compiler::compileString second argument. Either pass
    a URL or use Compiler::compileFile instead. (@stof)

Removed

  • Remove support for color math in Sass expressions (@stof)
  • Remove the CLI shipped in the package (@stof)
  • Remove the scss.inc.php file. Use the autoloader generated by Composer instead. (@stof)
  • Remove the cache system integrated in the compiler (@stof)
  • Remove support for PHP < 8.1 (@stof)

Added

  • Add support for PHP 8.4 (@stof)
  • Add support for the Sass indented syntax (@stof)
  • Add a representation of Sass values using PHP value objects (@stof)
  • Add the Importer extension point for custom importers (@stof)
  • Add support for configuring the reporting of deprecation with Compiler::setSilencedDeprecations,
    Compiler::setFutureDeprecations and Compiler::setActiveDeprecations (@stof)
  • Add support for silencing deprecations from dependencies with Compiler::setQuietDeps (@stof)
  • Add support for configuring verbosity of deprecation warnings with Compiler::setVerbose (@stof)

Fixed

  • Thanks to the rewrite, scssphp is now spec-compliant, fixing many issues (@stof)

Changed

  • The message received by loggers no longer contains the location and stack trace. Loggers
    need to include them based on the provided argument depending on their formatting needs. (@stof)
  • Custom functions can now be defined using the new representation of Sass values by using
    \ScssPhp\ScssPhp\Value\Value as return type. Untyped functions will still receive legacy
    values. (@stof)

1.13.0

17 Aug 21:04
v1.13.0
63d1157
Compare
Choose a tag to compare

Deprecated

  • Deprecate registering a custom function with a callable expecting 2 arguments (@stof)

1.12.1

13 Jan 13:21
v1.12.1
394ed1e
Compare
Choose a tag to compare

Fixed

  • Fix the handling of leading spaces in interpolated media queries (@stof)
  • Fix the compilation cache key when using numbers in variables (@stof)

1.12.0

14 Nov 14:58
v1.12.0
a6b20c1
Compare
Choose a tag to compare

Deprecated

  • Deprecate passing string with extra content after the expression in ValueConverter::parseValue (@stof)

Added

  • Add the Compiler::compileFile method (@stof)
  • Add the OutputStyle::fromString and OutputStyle::toString methods to allow writing code supporting both Scssphp 1.12+ and 2.0 (@stof)

Fixed

  • Fix the parsing of values in ValueConverter::parseValue when using comments inside the value source (@stof)

1.11.1

24 Sep 13:43
v1.11.1
ace2503
Compare
Choose a tag to compare

Added

  • Add dedicated error handling when passing invalid UTF-8 (@stof)

Fixed

  • Fix extending a selector using :is() (@ssltg)

1.11.0

02 Sep 21:26
v1.11.0
33749d1
Compare
Choose a tag to compare

Deprecated

  • Deprecate passing a limit with unit to random() (@stof)

Added

  • Add support for empty fallback in var() (@stof)

Fixed

  • Fix the handling of mixed case operators in media queries (@stof)

Changed

  • Improve error messages for incorrect units in color functions (@stof)

1.10.5

27 Jul 15:53
v1.10.5
6d44282
Compare
Choose a tag to compare

Fixed

  • Fix the handling of non-integer numbers in nth and set-nth (@max-m)

1.10.4

26 Jul 16:30
v1.10.4
8ed2075
Compare
Choose a tag to compare

Fixed

  • Remove false positive deprecation warnings when compiling Bootstrap 5.2.0 (@stof)

Changed

  • Remove usage of interpolation syntax deprecated in PHP 8.2 (@shyim)

1.10.3

16 May 07:25
v1.10.3
0f1e151
Compare
Choose a tag to compare

Fixed

  • Fix the handling of nested at-root in mixins (@stof)

Changed

  • Mark the logger implementations as @final to prepare for 2.0 (@stof)