To install Sass 1.40.1, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Potentially breaking bug fix:min() and max() expressions outside of calculations now behave the same way they did in 1.39.2, returning unquoted strings if they contain no Sass-specific features and calling the global min() and max() functions otherwise. Within calculations, they continue to behave how they did in 1.40.0.
This fixes an unintended breaking change added in 1.40.0, wherein passing a unitless number and a number without units to min() or max() now produces an error. Since this breakage affects a major Sass library, we're temporarily reverting support for min() and max() calculations while we work on designing a longer-term fix.
To install Sass 1.40.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Add support for first-class calc() expressions (as well as clamp() and plain-CSS min() and max()). This means:
calc() expressions will be parsed more thoroughly, and errors will be highlighted where they weren't before. This may break your stylesheets, but only if they were already producing broken CSS.
calc() expressions will be simplified where possible, and may even return numbers if they can be simplified away entirely.
calc() expressions that can't be simplified to numbers return a new data type known as "calculations".
Sass variables and functions can now be used in calc() expressions.
New functions meta.calc-name() and meta.calc-args() can now inspect calculations.
Dart API
Add a new value type, SassCalculation, that represents calculations.
Add new CalculationOperation, CalculationOperator, and CalculationInterpolation types to represent types of arguments that may exist as part of a calculation.
Potentially breaking bug fix:min() and max() expressions outside of
calculations now behave the same way they did in 1.39.2, returning unquoted
strings if they contain no Sass-specific features and calling the global
min() and max() functions otherwise. Within calculations, they continue to
behave how they did in 1.40.0.
This fixes an unintended breaking change added in 1.40.0, wherein passing a
unitless number and a number without units to min() or max() now produces
an error. Since this breakage affects a major Sass library, we're temporarily
reverting support for min() and max() calculations while we work on
designing a longer-term fix.
1.40.0
Add support for first-class calc() expressions (as well as clamp() and
plain-CSS min() and max()). This means:
calc() expressions will be parsed more thoroughly, and errors will be
highlighted where they weren't before. This may break your stylesheets,
but only if they were already producing broken CSS.
calc() expressions will be simplified where possible, and may even return
numbers if they can be simplified away entirely.
calc() expressions that can't be simplified to numbers return a new data
type known as "calculations".
Sass variables and functions can now be used in calc() expressions.
New functions meta.calc-name() and meta.calc-args() can now inspect
calculations.
Dart API
Add a new value type, SassCalculation, that represents calculations.
Add new CalculationOperation, CalculationOperator, and
CalculationInterpolation types to represent types of arguments that may
exist as part of a calculation.
Add a new Value.assertCalculation() method.
Add a new Number.hasCompatibleUnits() method.
1.39.2
Fix a bug where configuring with @use ... with would throw an error when
that variable was defined in a module that also contained @forward ... with.
... (truncated)
Commits
cbdcd58 Emergency fix: Temporarily drop support for min/max calculations (#1477)
bb08672 Add support for first-class calc() (#1452)
33dab9f Fix the leftover-configuration check for @forward ... with (#1472)
1672178 Fix @at-root bug for common case of built-in use (#1469)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps sass from 1.32.5 to 1.40.1.
Release notes
Sourced from sass's releases.
... (truncated)
Changelog
Sourced from sass's changelog.
... (truncated)
Commits
cbdcd58
Emergency fix: Temporarily drop support for min/max calculations (#1477)bb08672
Add support for first-class calc() (#1452)33dab9f
Fix the leftover-configuration check for@forward ... with
(#1472)1672178
Fix@at-root
bug for common case of built-in use (#1469)f06937e
Fix analysis errors (#1470)78aacbc
Upgrade to analyzer 2 (#1465)8012e0e
Avoid the /-as-division warning when running the dart_api tests (#1467)49c75b1
Fix the test covering space-separated list to actually do it (#1466)f098c7f
Fix the test description for the list separator of non-empty maps (#1464)1288b92
Fix the description of some tests for SassNumber (#1463)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)