From f6741e7532e9328300c46e1d962381eed5b3faca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Feb 2026 17:50:34 -0800 Subject: [PATCH 01/22] Bump @eslint/js from 9.39.2 to 10.0.1 (#420) Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.39.2 to 10.0.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](https://github.com/eslint/eslint/commits/HEAD/packages/js) --- updated-dependencies: - dependency-name: "@eslint/js" dependency-version: 10.0.1 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index af5b570e..a1978213 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "@bufbuild/buf": "^1.54.0", "@bufbuild/protoc-gen-es": "^2.5.0", "@eslint/eslintrc": "^3.3.3", - "@eslint/js": "^9.39.2", + "@eslint/js": "^10.0.1", "@types/buffer-builder": "^0.2.0", "@types/google-protobuf": "^3.7.2", "@types/jest": "^30.0.0", From c1995631574f6aae652fb64f51e8cd3292d95543 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Feb 2026 14:31:55 -0800 Subject: [PATCH 02/22] Bump @types/tar from 6.1.13 to 7.0.87 (#425) Bumps [@types/tar](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/tar) from 6.1.13 to 7.0.87. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/tar) --- updated-dependencies: - dependency-name: "@types/tar" dependency-version: 7.0.87 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a1978213..8186346a 100644 --- a/package.json +++ b/package.json @@ -80,7 +80,7 @@ "@types/node": "^25.0.3", "@types/shelljs": "^0.10.0", "@types/supports-color": "^8.1.1", - "@types/tar": "^6.1.0", + "@types/tar": "^7.0.87", "@types/varint": "^6.0.1", "@types/yargs": "^17.0.4", "extract-zip": "^2.0.1", From ba6300e5ab2acf0ae9dee9a27180c1279c8cacea Mon Sep 17 00:00:00 2001 From: "Carlos (Goodwine)" <2022649+Goodwine@users.noreply.github.com> Date: Tue, 10 Mar 2026 13:18:38 -0700 Subject: [PATCH 03/22] Update immutable to v5.1.5 (#426) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8186346a..6c08c6e7 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "dependencies": { "@bufbuild/protobuf": "^2.5.0", "colorjs.io": "^0.5.0", - "immutable": "^5.0.2", + "immutable": "^5.1.5", "rxjs": "^7.4.0", "supports-color": "^8.1.1", "sync-child-process": "^1.0.2", From 908c07edb1f7a32679da18cd84bfac91729a9a3a Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Tue, 10 Mar 2026 23:09:27 +0000 Subject: [PATCH 04/22] Update Dart Sass version and release --- CHANGELOG.md | 23 +++++++++++++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 63 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7cdd7f5c..26e02d64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +## 1.98.0 + +### Command-Line Interface + +* Gracefully handle dependency loops in `--watch` mode. + +### Dart API + +* Add a `const Logger.defaultLogger` field. This provides a logger that emits to + standard error or the browser console, but automatically chooses whether to + use terminal colors. + +### JavaScript API + +* Fix a crash when manually constructing a `SassCalculation` for `'calc'` with + an argument that can't be simplified. + +* Properly emit deprecation warnings as text rather than `StringBuffer` objects + when running in a browser. + +* Emit colored warnings and other messages on the console when running in a + browser. + ## 1.97.3 * Fix a bug where nesting an at-rule within multiple style rules in plain CSS diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index eeb50dd4..67b59ef8 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.97.3", + "version": "1.98.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.97.3" + "sass": "1.98.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index 887f7101..09132720 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.97.3", + "version": "1.98.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index ce0c813f..1e54130f 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.97.3", + "version": "1.98.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 21a36537..adab33dd 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.97.3", + "version": "1.98.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 8a27cb6f..f65ceb18 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.97.3", + "version": "1.98.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 819cabb8..7487b9a8 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.97.3", + "version": "1.98.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index eb4eda66..0f947fb7 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.97.3", + "version": "1.98.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index 7bf32cdb..05547971 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index f6255195..1590f95a 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index 9d7ca4c5..ede24fe2 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index c64412da..75905f18 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 23077b92..01013ee9 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 86e9e070..08265b2b 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 8cac976c..0ec0eb40 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index 62f36448..b1590db7 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.97.3", + "version": "1.98.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 937e94b3..9ad954ef 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.97.3", + "version": "1.98.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.97.3" + "sass": "1.98.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index ac712711..60bdea15 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.97.3", + "version": "1.98.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 03509fb7..d004fb17 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.97.3", + "version": "1.98.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 6c08c6e7..bae7e35b 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.97.3", + "version": "1.98.0", "protocol-version": "3.2.0", - "compiler-version": "1.97.3", + "compiler-version": "1.98.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.97.3", - "sass-embedded-android-arm": "1.97.3", - "sass-embedded-android-arm64": "1.97.3", - "sass-embedded-android-riscv64": "1.97.3", - "sass-embedded-android-x64": "1.97.3", - "sass-embedded-darwin-arm64": "1.97.3", - "sass-embedded-darwin-x64": "1.97.3", - "sass-embedded-linux-arm": "1.97.3", - "sass-embedded-linux-arm64": "1.97.3", - "sass-embedded-linux-musl-arm": "1.97.3", - "sass-embedded-linux-musl-arm64": "1.97.3", - "sass-embedded-linux-musl-riscv64": "1.97.3", - "sass-embedded-linux-musl-x64": "1.97.3", - "sass-embedded-linux-riscv64": "1.97.3", - "sass-embedded-linux-x64": "1.97.3", - "sass-embedded-unknown-all": "1.97.3", - "sass-embedded-win32-arm64": "1.97.3", - "sass-embedded-win32-x64": "1.97.3" + "sass-embedded-all-unknown": "1.98.0", + "sass-embedded-android-arm": "1.98.0", + "sass-embedded-android-arm64": "1.98.0", + "sass-embedded-android-riscv64": "1.98.0", + "sass-embedded-android-x64": "1.98.0", + "sass-embedded-darwin-arm64": "1.98.0", + "sass-embedded-darwin-x64": "1.98.0", + "sass-embedded-linux-arm": "1.98.0", + "sass-embedded-linux-arm64": "1.98.0", + "sass-embedded-linux-musl-arm": "1.98.0", + "sass-embedded-linux-musl-arm64": "1.98.0", + "sass-embedded-linux-musl-riscv64": "1.98.0", + "sass-embedded-linux-musl-x64": "1.98.0", + "sass-embedded-linux-riscv64": "1.98.0", + "sass-embedded-linux-x64": "1.98.0", + "sass-embedded-unknown-all": "1.98.0", + "sass-embedded-win32-arm64": "1.98.0", + "sass-embedded-win32-x64": "1.98.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From e2cfd3eef19c7865ad700c877b7aafd9fc15e7e4 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Thu, 2 Apr 2026 23:49:58 +0000 Subject: [PATCH 05/22] Update Dart Sass version and release --- CHANGELOG.md | 35 +++++++++++++++++++++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 75 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 26e02d64..3eed793e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,38 @@ +## 1.99.0 + +* Add support for parent selectors (`&`) at the root of the document. These are + emitted as-is in the CSS output, where they're interpreted as [the scoping + root]. + + [the scoping root]: https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/Nesting_selector#using_outside_nested_rule + +* User-defined functions named `calc` or `clamp` are no longer forbidden. If + such a function exists without a namespace in the current module, it will be + used instead of the built-in `calc()` or `clamp()` function. + +* User-defined functions whose names begin with `-` and end with `-expression`, + `-url`, `-and`, `-or`, or `-not` are no longer forbidden. These were + originally intended to match vendor prefixes, but in practice no vendor + prefixes for these functions ever existed in real browsers. + +* User-defined functions named `EXPRESSION`, `URL`, and `ELEMENT`, those that + begin with `-` and end with `-ELEMENT`, as well as the same names with some + lowercase letters are now deprecated, These are names conflict with plain CSS + functions that have special syntax. + + See [the Sass website](https://sass-lang.com/d/function-name) for details. + +* In a future release, calls to functions whose names begin with `-` and end + with `-expression` and `-url` will no longer have special parsing. For now, + these calls are deprecated if their behavior will change in the future. + + See [the Sass website](https://sass-lang.com/d/function-name) for details. + +* Calls to functions whose names begin with `-` and end with `-progid:...` are + deprecated. + + See [the Sass website](https://sass-lang.com/d/function-name) for details. + ## 1.98.0 ### Command-Line Interface diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index 67b59ef8..02e8da1c 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.98.0", + "version": "1.99.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.98.0" + "sass": "1.99.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index 09132720..d42c2da2 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.98.0", + "version": "1.99.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index 1e54130f..de3a1984 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.98.0", + "version": "1.99.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index adab33dd..43a14fff 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.98.0", + "version": "1.99.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index f65ceb18..0c3b605e 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.98.0", + "version": "1.99.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 7487b9a8..d28913d7 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.98.0", + "version": "1.99.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 0f947fb7..6d405be0 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.98.0", + "version": "1.99.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index 05547971..fc8729a6 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 1590f95a..3dc121cb 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index ede24fe2..43039520 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index 75905f18..ece07d44 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 01013ee9..8e34dead 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 08265b2b..b8fb6331 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 0ec0eb40..95b639e6 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index b1590db7..ee459dd2 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.98.0", + "version": "1.99.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 9ad954ef..ab9e6207 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.98.0", + "version": "1.99.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.98.0" + "sass": "1.99.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index 60bdea15..f92c8da0 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.98.0", + "version": "1.99.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index d004fb17..50989d7c 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.98.0", + "version": "1.99.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index bae7e35b..662c2442 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.98.0", + "version": "1.99.0", "protocol-version": "3.2.0", - "compiler-version": "1.98.0", + "compiler-version": "1.99.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.98.0", - "sass-embedded-android-arm": "1.98.0", - "sass-embedded-android-arm64": "1.98.0", - "sass-embedded-android-riscv64": "1.98.0", - "sass-embedded-android-x64": "1.98.0", - "sass-embedded-darwin-arm64": "1.98.0", - "sass-embedded-darwin-x64": "1.98.0", - "sass-embedded-linux-arm": "1.98.0", - "sass-embedded-linux-arm64": "1.98.0", - "sass-embedded-linux-musl-arm": "1.98.0", - "sass-embedded-linux-musl-arm64": "1.98.0", - "sass-embedded-linux-musl-riscv64": "1.98.0", - "sass-embedded-linux-musl-x64": "1.98.0", - "sass-embedded-linux-riscv64": "1.98.0", - "sass-embedded-linux-x64": "1.98.0", - "sass-embedded-unknown-all": "1.98.0", - "sass-embedded-win32-arm64": "1.98.0", - "sass-embedded-win32-x64": "1.98.0" + "sass-embedded-all-unknown": "1.99.0", + "sass-embedded-android-arm": "1.99.0", + "sass-embedded-android-arm64": "1.99.0", + "sass-embedded-android-riscv64": "1.99.0", + "sass-embedded-android-x64": "1.99.0", + "sass-embedded-darwin-arm64": "1.99.0", + "sass-embedded-darwin-x64": "1.99.0", + "sass-embedded-linux-arm": "1.99.0", + "sass-embedded-linux-arm64": "1.99.0", + "sass-embedded-linux-musl-arm": "1.99.0", + "sass-embedded-linux-musl-arm64": "1.99.0", + "sass-embedded-linux-musl-riscv64": "1.99.0", + "sass-embedded-linux-musl-x64": "1.99.0", + "sass-embedded-linux-riscv64": "1.99.0", + "sass-embedded-linux-x64": "1.99.0", + "sass-embedded-unknown-all": "1.99.0", + "sass-embedded-win32-arm64": "1.99.0", + "sass-embedded-win32-x64": "1.99.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From 0d8e15027ed48e8daafcac146f20642a1aba6c25 Mon Sep 17 00:00:00 2001 From: Natalie Weizenbaum Date: Wed, 29 Apr 2026 01:32:31 -0700 Subject: [PATCH 06/22] Improve error messages (#429) Most of these are just removing periods which are redundant because the underlying call already adds one. --- lib/src/compiler/async.ts | 4 ++-- lib/src/compiler/sync.ts | 6 +++--- lib/src/compiler/utils.ts | 2 +- lib/src/deprotofy-span.ts | 6 +++--- lib/src/protofier.ts | 14 +++++++------- lib/src/utils.ts | 2 +- lib/src/value/color.ts | 4 ++-- lib/src/value/index.ts | 2 +- lib/src/value/number.ts | 6 +++--- 9 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lib/src/compiler/async.ts b/lib/src/compiler/async.ts index bd559c13..0fcc64f1 100644 --- a/lib/src/compiler/async.ts +++ b/lib/src/compiler/async.ts @@ -98,7 +98,7 @@ export class AsyncCompiler { /** Guards against using a disposed compiler. */ private throwIfDisposed(): void { if (this.disposed) { - throw utils.compilerError('Async compiler has already been disposed.'); + throw utils.compilerError('Async compiler has already been disposed'); } } @@ -163,7 +163,7 @@ export class AsyncCompiler { if (flag !== initFlag) { throw utils.compilerError( 'AsyncCompiler can not be directly constructed. ' + - 'Please use `sass.initAsyncCompiler()` instead.', + 'Please use `sass.initAsyncCompiler()` instead', ); } this.stderr$.subscribe(data => process.stderr.write(data)); diff --git a/lib/src/compiler/sync.ts b/lib/src/compiler/sync.ts index 7aeef3ab..a2e11d4a 100644 --- a/lib/src/compiler/sync.ts +++ b/lib/src/compiler/sync.ts @@ -154,7 +154,7 @@ export class Compiler { for (;;) { if (!this.yield()) { - throw utils.compilerError('Embedded compiler exited unexpectedly.'); + throw utils.compilerError('Embedded compiler exited unexpectedly'); } if (error) throw error; @@ -168,7 +168,7 @@ export class Compiler { /** Guards against using a disposed compiler. */ private throwIfDisposed(): void { if (this.disposed) { - throw utils.compilerError('Sync compiler has already been disposed.'); + throw utils.compilerError('Sync compiler has already been disposed'); } } @@ -177,7 +177,7 @@ export class Compiler { if (flag !== initFlag) { throw utils.compilerError( 'Compiler can not be directly constructed. ' + - 'Please use `sass.initAsyncCompiler()` instead.', + 'Please use `sass.initCompiler()` instead', ); } this.stderr$.subscribe(data => process.stderr.write(data)); diff --git a/lib/src/compiler/utils.ts b/lib/src/compiler/utils.ts index 098753d3..92ce8e42 100644 --- a/lib/src/compiler/utils.ts +++ b/lib/src/compiler/utils.ts @@ -225,7 +225,7 @@ export function handleCompileResponse( } else if (response.result.case === 'failure') { throw new Exception(response.result.value); } else { - throw utils.compilerError('Compiler sent empty CompileResponse.'); + throw utils.compilerError('Compiler sent empty CompileResponse'); } } diff --git a/lib/src/deprotofy-span.ts b/lib/src/deprotofy-span.ts index bd32762f..8e2b8867 100644 --- a/lib/src/deprotofy-span.ts +++ b/lib/src/deprotofy-span.ts @@ -14,20 +14,20 @@ export function deprotofySourceSpan(buffer: proto.SourceSpan): SourceSpan { const text = buffer.text; if (buffer.start === undefined) { - throw compilerError('Expected SourceSpan to have start.'); + throw compilerError('Expected SourceSpan to have start'); } let end; if (buffer.end === undefined) { if (text !== '') { - throw compilerError('Expected SourceSpan text to be empty.'); + throw compilerError('Expected SourceSpan text to be empty'); } else { end = buffer.start; } } else { end = buffer.end; if (end.offset < buffer.start.offset) { - throw compilerError('Expected SourceSpan end to be after start.'); + throw compilerError('Expected SourceSpan end to be after start'); } } diff --git a/lib/src/protofier.ts b/lib/src/protofier.ts index c06dfdd6..f772901f 100644 --- a/lib/src/protofier.ts +++ b/lib/src/protofier.ts @@ -324,7 +324,7 @@ export class Protofier { }); default: - throw utils.compilerError(`Unknown color space "${color.space}".`); + throw utils.compilerError(`Unknown color space "${color.space}"`); } } @@ -394,7 +394,7 @@ export class Protofier { case 'hostFunction': throw utils.compilerError( - 'The compiler may not send Value.host_function.', + 'The compiler may not send Value.host_function', ); case 'compilerMixin': @@ -454,7 +454,7 @@ export class Protofier { case 'calc': if (calculation.arguments.length !== 1) { throw utils.compilerError( - 'Value.Calculation.arguments must have exactly one argument for calc().', + 'Value.Calculation.arguments must have exactly one argument for calc()', ); } return SassCalculation.calc( @@ -466,7 +466,7 @@ export class Protofier { calculation.arguments.length > 3 ) { throw utils.compilerError( - 'Value.Calculation.arguments must have 1 to 3 arguments for clamp().', + 'Value.Calculation.arguments must have 1 to 3 arguments for clamp()', ); } return SassCalculation.clamp( @@ -481,7 +481,7 @@ export class Protofier { case 'min': if (calculation.arguments.length === 0) { throw utils.compilerError( - 'Value.Calculation.arguments must have at least 1 argument for min().', + 'Value.Calculation.arguments must have at least 1 argument for min()', ); } return SassCalculation.min( @@ -490,7 +490,7 @@ export class Protofier { case 'max': if (calculation.arguments.length === 0) { throw utils.compilerError( - 'Value.Calculation.arguments must have at least 1 argument for max().', + 'Value.Calculation.arguments must have at least 1 argument for max()', ); } return SassCalculation.max( @@ -498,7 +498,7 @@ export class Protofier { ); default: throw utils.compilerError( - `Value.Calculation.name "${calculation.name}" is not a recognized calculation type.`, + `Value.Calculation.name "${calculation.name}" is not a recognized calculation type`, ); } } diff --git a/lib/src/utils.ts b/lib/src/utils.ts index 1dbbd75c..308f56a8 100644 --- a/lib/src/utils.ts +++ b/lib/src/utils.ts @@ -73,7 +73,7 @@ export function compilerError(message: string): Error { * been included but was not. */ export function mandatoryError(field: string): Error { - return compilerError(`Missing mandatory field ${field}`); + return compilerError(`Missing mandatory field ${field}.`); } /** Constructs a host-caused Error. */ diff --git a/lib/src/value/color.ts b/lib/src/value/color.ts index 60b2928a..c9dc79fa 100644 --- a/lib/src/value/color.ts +++ b/lib/src/value/color.ts @@ -249,7 +249,7 @@ function validateChannelInSpace( } if (!valid) { throw valueError( - `Unknown channel name "${channel}" for color space "${space}".`, + `Unknown channel name "${channel}" for color space "${space}"`, ); } } @@ -893,7 +893,7 @@ export class SassColor extends Value { if (weight < 0 || weight > 1) { throw valueError( - `Expected \`weight\` between \`0\` and \`1\`, received \`${weight}\`.`, + `Expected \`weight\` between \`0\` and \`1\`, received \`${weight}\``, ); } diff --git a/lib/src/value/index.ts b/lib/src/value/index.ts index b77c3395..793d04db 100644 --- a/lib/src/value/index.ts +++ b/lib/src/value/index.ts @@ -86,7 +86,7 @@ export abstract class Value implements ValueObject { } if (Math.abs(index) > this.lengthAsList) { throw valueError( - `Invalid index ${sassIndex} for a list with ${this.lengthAsList} elements.`, + `Invalid index ${sassIndex} for a list with ${this.lengthAsList} elements`, name, ); } diff --git a/lib/src/value/number.ts b/lib/src/value/number.ts index 52397e57..298c99ac 100644 --- a/lib/src/value/number.ts +++ b/lib/src/value/number.ts @@ -596,7 +596,7 @@ export class SassNumber extends Value { } if (!otherHasUnits) { - return valueError(`Expected ${this} to have no units.`, params.name); + return valueError(`Expected ${this} to have no units`, params.name); } // For single numerators, throw a detailed error with info about which unit @@ -607,7 +607,7 @@ export class SassNumber extends Value { return valueError( `Expected ${this} to have a single ${type} unit (${unitsByType[ type - ].join(', ')}).`, + ].join(', ')})`, params.name, ); } @@ -622,7 +622,7 @@ export class SassNumber extends Value { newNumerators, newDenominators, )}` - }.`, + }`, params.name, ); }; From 0d6a291c0005e81d8e5c9e53d690cedb82f1078f Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Fri, 22 May 2026 00:48:49 +0000 Subject: [PATCH 07/22] Update Dart Sass version and release --- CHANGELOG.md | 9 +++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 49 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3eed793e..c4d669a6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +## 1.100.0 + +* Writing two compound selectors adjacent to one another without any whitespace + between them, such as `[class]a`, is now deprecated. This was always an error + in CSS and Sass only supported it by mistake. + + See [the Sass website](https://sass-lang.com/d/adjacent-compounds) for + details. + ## 1.99.0 * Add support for parent selectors (`&`) at the root of the document. These are diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index 02e8da1c..2cd1794e 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.99.0", + "version": "1.100.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.99.0" + "sass": "1.100.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index d42c2da2..a19c512a 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.99.0", + "version": "1.100.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index de3a1984..986fa04d 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.99.0", + "version": "1.100.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 43a14fff..1c525e72 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.99.0", + "version": "1.100.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 0c3b605e..032b7d4d 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.99.0", + "version": "1.100.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index d28913d7..bbeeb524 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.99.0", + "version": "1.100.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 6d405be0..a0b1005b 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.99.0", + "version": "1.100.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index fc8729a6..d17f87d6 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 3dc121cb..9c7b6802 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index 43039520..f387eca7 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index ece07d44..3ebcdb20 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 8e34dead..3d7f8313 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index b8fb6331..bb7c64f3 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 95b639e6..5a6f9cf9 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index ee459dd2..a9941b8f 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.99.0", + "version": "1.100.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index ab9e6207..bd683137 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.99.0", + "version": "1.100.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.99.0" + "sass": "1.100.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index f92c8da0..3a2fd206 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.99.0", + "version": "1.100.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 50989d7c..358b8bf2 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.99.0", + "version": "1.100.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 662c2442..f4f5ec79 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.99.0", + "version": "1.100.0", "protocol-version": "3.2.0", - "compiler-version": "1.99.0", + "compiler-version": "1.100.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.99.0", - "sass-embedded-android-arm": "1.99.0", - "sass-embedded-android-arm64": "1.99.0", - "sass-embedded-android-riscv64": "1.99.0", - "sass-embedded-android-x64": "1.99.0", - "sass-embedded-darwin-arm64": "1.99.0", - "sass-embedded-darwin-x64": "1.99.0", - "sass-embedded-linux-arm": "1.99.0", - "sass-embedded-linux-arm64": "1.99.0", - "sass-embedded-linux-musl-arm": "1.99.0", - "sass-embedded-linux-musl-arm64": "1.99.0", - "sass-embedded-linux-musl-riscv64": "1.99.0", - "sass-embedded-linux-musl-x64": "1.99.0", - "sass-embedded-linux-riscv64": "1.99.0", - "sass-embedded-linux-x64": "1.99.0", - "sass-embedded-unknown-all": "1.99.0", - "sass-embedded-win32-arm64": "1.99.0", - "sass-embedded-win32-x64": "1.99.0" + "sass-embedded-all-unknown": "1.100.0", + "sass-embedded-android-arm": "1.100.0", + "sass-embedded-android-arm64": "1.100.0", + "sass-embedded-android-riscv64": "1.100.0", + "sass-embedded-android-x64": "1.100.0", + "sass-embedded-darwin-arm64": "1.100.0", + "sass-embedded-darwin-x64": "1.100.0", + "sass-embedded-linux-arm": "1.100.0", + "sass-embedded-linux-arm64": "1.100.0", + "sass-embedded-linux-musl-arm": "1.100.0", + "sass-embedded-linux-musl-arm64": "1.100.0", + "sass-embedded-linux-musl-riscv64": "1.100.0", + "sass-embedded-linux-musl-x64": "1.100.0", + "sass-embedded-linux-riscv64": "1.100.0", + "sass-embedded-linux-x64": "1.100.0", + "sass-embedded-unknown-all": "1.100.0", + "sass-embedded-win32-arm64": "1.100.0", + "sass-embedded-win32-x64": "1.100.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From 3f305820b96bbe975484c94c7bff808aa9e5a19b Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Thu, 11 Jun 2026 21:27:48 +0000 Subject: [PATCH 08/22] Update Dart Sass version and release --- CHANGELOG.md | 8 ++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 48 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4d669a6..46cb4de9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +## 1.101.0 + +* **Potentially breaking bug fix:** The Node package importer now properly + supports resolving import-only variants of Sass files declared in the + `exports`, `sass`, and `style` fields of `package.json`. Previously, these + files were ignored even when loaded via `@import`, so any code relying on + loading module-system-only files this way may break. + ## 1.100.0 * Writing two compound selectors adjacent to one another without any whitespace diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index 2cd1794e..d721c646 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.100.0", + "version": "1.101.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.100.0" + "sass": "1.101.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index a19c512a..f0c7b847 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.100.0", + "version": "1.101.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index 986fa04d..dbf285bd 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.100.0", + "version": "1.101.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 1c525e72..13ddb4ab 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.100.0", + "version": "1.101.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 032b7d4d..5c3079e2 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.100.0", + "version": "1.101.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index bbeeb524..3358df51 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.100.0", + "version": "1.101.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index a0b1005b..50801daa 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.100.0", + "version": "1.101.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index d17f87d6..c829d5b4 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 9c7b6802..7fec1dd5 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index f387eca7..4e9cff5f 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index 3ebcdb20..400e841c 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 3d7f8313..d6d89ddb 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index bb7c64f3..82ee9d80 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 5a6f9cf9..3b2c67bc 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index a9941b8f..3afc8be4 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.100.0", + "version": "1.101.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index bd683137..4b098c80 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.100.0", + "version": "1.101.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.100.0" + "sass": "1.101.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index 3a2fd206..94e5aa41 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.100.0", + "version": "1.101.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 358b8bf2..8aae26df 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.100.0", + "version": "1.101.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index f4f5ec79..d2af307a 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.100.0", + "version": "1.101.0", "protocol-version": "3.2.0", - "compiler-version": "1.100.0", + "compiler-version": "1.101.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.100.0", - "sass-embedded-android-arm": "1.100.0", - "sass-embedded-android-arm64": "1.100.0", - "sass-embedded-android-riscv64": "1.100.0", - "sass-embedded-android-x64": "1.100.0", - "sass-embedded-darwin-arm64": "1.100.0", - "sass-embedded-darwin-x64": "1.100.0", - "sass-embedded-linux-arm": "1.100.0", - "sass-embedded-linux-arm64": "1.100.0", - "sass-embedded-linux-musl-arm": "1.100.0", - "sass-embedded-linux-musl-arm64": "1.100.0", - "sass-embedded-linux-musl-riscv64": "1.100.0", - "sass-embedded-linux-musl-x64": "1.100.0", - "sass-embedded-linux-riscv64": "1.100.0", - "sass-embedded-linux-x64": "1.100.0", - "sass-embedded-unknown-all": "1.100.0", - "sass-embedded-win32-arm64": "1.100.0", - "sass-embedded-win32-x64": "1.100.0" + "sass-embedded-all-unknown": "1.101.0", + "sass-embedded-android-arm": "1.101.0", + "sass-embedded-android-arm64": "1.101.0", + "sass-embedded-android-riscv64": "1.101.0", + "sass-embedded-android-x64": "1.101.0", + "sass-embedded-darwin-arm64": "1.101.0", + "sass-embedded-darwin-x64": "1.101.0", + "sass-embedded-linux-arm": "1.101.0", + "sass-embedded-linux-arm64": "1.101.0", + "sass-embedded-linux-musl-arm": "1.101.0", + "sass-embedded-linux-musl-arm64": "1.101.0", + "sass-embedded-linux-musl-riscv64": "1.101.0", + "sass-embedded-linux-musl-x64": "1.101.0", + "sass-embedded-linux-riscv64": "1.101.0", + "sass-embedded-linux-x64": "1.101.0", + "sass-embedded-unknown-all": "1.101.0", + "sass-embedded-win32-arm64": "1.101.0", + "sass-embedded-win32-x64": "1.101.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From feda063874b762bf4b889fd59dec1372d7f7387c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jun 2026 13:51:42 -0700 Subject: [PATCH 09/22] Bump typescript from 5.9.3 to 6.0.3 (#430) * Bump typescript from 5.9.3 to 6.0.3 Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.9.3 to 6.0.3. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.9.3...v6.0.3) --- updated-dependencies: - dependency-name: typescript dependency-version: 6.0.3 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * add missing 'types' field to tsconfig.json' * Update ts-jest --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Carlos Co-authored-by: Jennifer Thakar --- package.json | 4 ++-- tsconfig.json | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index d2af307a..92d39596 100644 --- a/package.json +++ b/package.json @@ -91,9 +91,9 @@ "simple-git": "^3.15.1", "source-map-js": "^1.0.2", "tar": "^7.4.3", - "ts-jest": "^29.0.5", + "ts-jest": "^29.4.11", "ts-node": "^10.2.1", - "typescript": "^5.0.2", + "typescript": "^6.0.3", "yaml": "^2.2.1", "yargs": "^17.2.1" } diff --git a/tsconfig.json b/tsconfig.json index 91520088..62d6d6bf 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,7 +7,9 @@ "rootDir": ".", "useUnknownInCatchVariables": false, "declarationDir": "_types", - "lib": ["DOM"] + "lib": ["DOM"], + "types": ["node", "jest"], + "moduleResolution": "bundler", }, "include": [ "package.json", From 09219c45e11cd01eba85cb6c0035092245455d69 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jun 2026 13:30:27 -0700 Subject: [PATCH 10/22] Bump actions/checkout from 6 to 7 (#433) Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 6 +++--- .github/workflows/release.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4f3bb83f..213d524f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: actions/setup-node@v6 with: node-version: 'lts/*' @@ -46,7 +46,7 @@ jobs: fail-fast: false steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: actions/setup-node@v6 with: node-version: ${{ matrix.node-version }} @@ -89,7 +89,7 @@ jobs: node_version: lts/-2 steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: dart-lang/setup-dart@v1 with: {sdk: stable} - uses: actions/setup-node@v6 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e82f96ec..2362d3f4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: actions/setup-node@v6 with: node-version: 'lts/*' From e4321a168c61ddd9a0f8a110d3164eb2449a8260 Mon Sep 17 00:00:00 2001 From: Natalie Weizenbaum Date: Wed, 8 Jul 2026 21:25:13 +0000 Subject: [PATCH 11/22] Reformat with the latest Prettier (#436) --- lib/src/value/color.ts | 5 +---- tool/prepare-optional-release.ts | 6 +----- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/lib/src/value/color.ts b/lib/src/value/color.ts index c9dc79fa..2b0d53ca 100644 --- a/lib/src/value/color.ts +++ b/lib/src/value/color.ts @@ -87,10 +87,7 @@ type PolarColorSpace = ColorSpaceHsl | ColorSpaceHwb | ColorSpaceLch; * colors. */ type HueInterpolationMethod = - | 'decreasing' - | 'increasing' - | 'longer' - | 'shorter'; + 'decreasing' | 'increasing' | 'longer' | 'shorter'; /** * Methods by which colors in bounded spaces can be mapped to within their diff --git a/tool/prepare-optional-release.ts b/tool/prepare-optional-release.ts index 9b7d695e..299568e1 100644 --- a/tool/prepare-optional-release.ts +++ b/tool/prepare-optional-release.ts @@ -8,11 +8,7 @@ import * as pkg from '../package.json'; import * as utils from './utils'; export type DartPlatform = - | 'android' - | 'linux' - | 'linux-musl' - | 'macos' - | 'windows'; + 'android' | 'linux' | 'linux-musl' | 'macos' | 'windows'; export type DartArch = 'x64' | 'arm' | 'arm64' | 'riscv64'; const argv = yargs(process.argv.slice(2)) From 3994086fa4e0bf7c2752c25bb7d1398f3a1b4799 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Jul 2026 14:35:57 -0700 Subject: [PATCH 12/22] Bump @types/node from 25.9.5 to 26.1.1 (#437) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 25.9.5 to 26.1.1. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 26.1.0 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 92d39596..bd4c3458 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "@types/buffer-builder": "^0.2.0", "@types/google-protobuf": "^3.7.2", "@types/jest": "^30.0.0", - "@types/node": "^25.0.3", + "@types/node": "^26.1.1", "@types/shelljs": "^0.10.0", "@types/supports-color": "^8.1.1", "@types/tar": "^7.0.87", From 437785843bae4c4d736122e1ce756f883de516dc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Jul 2026 14:48:52 -0700 Subject: [PATCH 13/22] Bump actions/setup-node from 6 to 7 (#440) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6 to 7. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/setup-node dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 6 +++--- .github/workflows/release.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 213d524f..aaab1168 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,7 @@ jobs: steps: - uses: actions/checkout@v7 - - uses: actions/setup-node@v6 + - uses: actions/setup-node@v7 with: node-version: 'lts/*' check-latest: true @@ -47,7 +47,7 @@ jobs: steps: - uses: actions/checkout@v7 - - uses: actions/setup-node@v6 + - uses: actions/setup-node@v7 with: node-version: ${{ matrix.node-version }} check-latest: true @@ -92,7 +92,7 @@ jobs: - uses: actions/checkout@v7 - uses: dart-lang/setup-dart@v1 with: {sdk: stable} - - uses: actions/setup-node@v6 + - uses: actions/setup-node@v7 with: {node-version: "${{ matrix.node_version }}"} - name: Check out Dart Sass diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2362d3f4..9e664560 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/checkout@v7 - - uses: actions/setup-node@v6 + - uses: actions/setup-node@v7 with: node-version: 'lts/*' check-latest: true From 7932fd801974f5b9909a0c6959da8721fdcb88b3 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Thu, 23 Jul 2026 21:59:35 +0000 Subject: [PATCH 14/22] Update Dart Sass version and release --- CHANGELOG.md | 48 +++++++++++++++++++++++++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++------------ 20 files changed, 88 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 46cb4de9..348ec5a3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,51 @@ +## 1.101.7 + +* No user-visible changes. + +## 1.101.6 + +* No user-visible changes. + +## 1.101.5 + +* No user-visible changes. + +## 1.101.4 + +* Avoid emitting `rgb()` or `rgba()` functions with non-percent decimal + channels. Older browsers only support integer values or (potentially decimal) + percentages for these functions, so in order to preserve + backwards-compatibility while retaining full precision for modern browsers, + legacy colors that contain at least one non-integer channel will now use + percentages for their channels (for example, `rgb(0%, 100%, 50%)` rather than + `rgb(0, 255, 127.5)`). + +* Fix a bug where the values of plain-CSS `if()` expressions were emitted using + their `meta.inspect()` format rather than their CSS serialization format. + +## 1.101.3 + +* No user-visible changes. + +## 1.101.2 + +* Fix a bug where the deprecation warning for vendor-prefixed `expression()` + functions would incorrectly indicate whether or not the function would be + invalid Sass in Dart Sass 2.0.0. + +## 1.101.1 + +* Sass stack trace entries are now always either absolute URLs, absolute paths, + or paths relative to the current working directory. Previously, if a + stylesheet was loaded using a relative URL (as from a load path), that + relative URL was listed even if it couldn't be resolved relative to the + current working directory. However, this created potential ambiguities, so + this behavior has been removed. + +### Command Line Interface + +* `--watch` mode now handles atomically-written files more gracefully. + ## 1.101.0 * **Potentially breaking bug fix:** The Node package importer now properly diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index d721c646..da7665f2 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.101.0", + "version": "1.101.7", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.101.0" + "sass": "1.101.7" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index f0c7b847..c3299507 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.101.0", + "version": "1.101.7", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index dbf285bd..3502d04e 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.101.0", + "version": "1.101.7", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 13ddb4ab..942fd681 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.101.0", + "version": "1.101.7", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 5c3079e2..7823b6fe 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.101.0", + "version": "1.101.7", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 3358df51..0020aed2 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.101.0", + "version": "1.101.7", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 50801daa..619cef8e 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.101.0", + "version": "1.101.7", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index c829d5b4..bcb9f405 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 7fec1dd5..d1988e0b 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index 4e9cff5f..f07b026a 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index 400e841c..93bc8bc9 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index d6d89ddb..f048c561 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 82ee9d80..3aef7ff3 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 3b2c67bc..298a5769 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index 3afc8be4..a38c96b1 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.101.0", + "version": "1.101.7", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 4b098c80..16cc9808 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.101.0", + "version": "1.101.7", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.101.0" + "sass": "1.101.7" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index 94e5aa41..e3af1c6b 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.101.0", + "version": "1.101.7", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 8aae26df..66bbb3a1 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.101.0", + "version": "1.101.7", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index bd4c3458..24a8bfbe 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.101.0", + "version": "1.101.7", "protocol-version": "3.2.0", - "compiler-version": "1.101.0", + "compiler-version": "1.101.7", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.101.0", - "sass-embedded-android-arm": "1.101.0", - "sass-embedded-android-arm64": "1.101.0", - "sass-embedded-android-riscv64": "1.101.0", - "sass-embedded-android-x64": "1.101.0", - "sass-embedded-darwin-arm64": "1.101.0", - "sass-embedded-darwin-x64": "1.101.0", - "sass-embedded-linux-arm": "1.101.0", - "sass-embedded-linux-arm64": "1.101.0", - "sass-embedded-linux-musl-arm": "1.101.0", - "sass-embedded-linux-musl-arm64": "1.101.0", - "sass-embedded-linux-musl-riscv64": "1.101.0", - "sass-embedded-linux-musl-x64": "1.101.0", - "sass-embedded-linux-riscv64": "1.101.0", - "sass-embedded-linux-x64": "1.101.0", - "sass-embedded-unknown-all": "1.101.0", - "sass-embedded-win32-arm64": "1.101.0", - "sass-embedded-win32-x64": "1.101.0" + "sass-embedded-all-unknown": "1.101.7", + "sass-embedded-android-arm": "1.101.7", + "sass-embedded-android-arm64": "1.101.7", + "sass-embedded-android-riscv64": "1.101.7", + "sass-embedded-android-x64": "1.101.7", + "sass-embedded-darwin-arm64": "1.101.7", + "sass-embedded-darwin-x64": "1.101.7", + "sass-embedded-linux-arm": "1.101.7", + "sass-embedded-linux-arm64": "1.101.7", + "sass-embedded-linux-musl-arm": "1.101.7", + "sass-embedded-linux-musl-arm64": "1.101.7", + "sass-embedded-linux-musl-riscv64": "1.101.7", + "sass-embedded-linux-musl-x64": "1.101.7", + "sass-embedded-linux-riscv64": "1.101.7", + "sass-embedded-linux-x64": "1.101.7", + "sass-embedded-unknown-all": "1.101.7", + "sass-embedded-win32-arm64": "1.101.7", + "sass-embedded-win32-x64": "1.101.7" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From de6ceb9fd42ee9a86d4d987815d5801bf4a6a5e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=AA=E3=81=A4=E3=81=8D?= Date: Fri, 24 Jul 2026 16:59:03 -0700 Subject: [PATCH 15/22] Use gamma 2.40 for display-referred rec2020 (#418) Also update colorjs.io to 0.7.0 --- lib/src/value/color.ts | 171 ++++++++++++++++++++--------------------- lib/src/value/utils.ts | 16 ++-- package.json | 4 +- 3 files changed, 95 insertions(+), 96 deletions(-) diff --git a/lib/src/value/color.ts b/lib/src/value/color.ts index 2b0d53ca..f0e0b65f 100644 --- a/lib/src/value/color.ts +++ b/lib/src/value/color.ts @@ -114,30 +114,19 @@ function getColorSpace(options: ChannelOptions): KnownColorSpace { throw valueError('No color space found'); } -/** - * Convert from the ColorJS representation of a missing component (`NaN`) to - * `null`. - */ -function NaNtoNull(val: number): number | null { - return Number.isNaN(val) ? null : val; -} - -/** - * Convert from the ColorJS representation of a missing component (`NaN`) to - * `0`. - */ -function NaNtoZero(val: number): number { - return Number.isNaN(val) ? 0 : val; +/** Convert from sRGB (0-1) to RGB (0-255) units. */ +function coordToRgb(val: number | null): number | null { + return val === null ? val : val * 255; } -/** Convert from sRGB (0-1) to RGB (0-255) units. */ -function coordToRgb(val: number): number { - return val * 255; +/** Convert from RGB (0-255) to sRGB (0-1) units. */ +function rgbToCoord(val: number | null): number | null { + return val === null ? val : val / 255; } /** Normalize `hue` values to be within the range `[0, 360)`. */ -function normalizeHue(val: number): number { - return positiveMod(val, 360); +function normalizeHue(val: number | null): number | null { + return val === null ? val : positiveMod(val, 360); } /** @@ -265,24 +254,24 @@ function isPolarColorSpace(space: KnownColorSpace): space is PolarColorSpace { } /** - * Convert from ColorJS coordinates (which use `NaN` for missing components, and - * a range of `0-1` for `rgb` channel values) to Sass Color coordinates (which - * use `null` for missing components, and a range of `0-255` for `rgb` channel - * values). + * Convert from ColorJS coordinates (which use a range of `0-1` for `rgb` + * channel values) to Sass Color coordinates (which use a range of `0-255` for + * `rgb` channel values). */ function decodeCoordsFromColorJs( - coords: [number, number, number], // ColorJS coordinates + coords: [number | null, number | null, number | null], // ColorJS coordinates isRgb = false, // Whether this color is in the `rgb` color space ): [number | null, number | null, number | null] { let newCoords = coords; // If this color is in the `rgb` space, convert channel values to `0-255` - if (isRgb) newCoords = newCoords.map(coordToRgb) as [number, number, number]; - // Convert `NaN` values to `null` - return newCoords.map(NaNtoNull) as [ - number | null, - number | null, - number | null, - ]; + if (isRgb) { + newCoords = newCoords.map(coordToRgb) as [ + number | null, + number | null, + number | null, + ]; + } + return newCoords; } /** Returns `true` if `val` is a `number` or `null`. */ @@ -451,10 +440,10 @@ export class SassColor extends Value { const space = options.space ?? getColorSpace(options); this.setChannelIds(space); if (space === 'rgb') this.isRgb = true; - let alpha: number; + let alpha: number | null; if (options.alpha === null) { if (!options.space) emitNullAlphaDeprecation(); - alpha = NaN; + alpha = null; } else if (options.alpha === undefined) { alpha = 1; } else { @@ -464,14 +453,18 @@ export class SassColor extends Value { switch (space) { case 'rgb': case 'srgb': { - const red = options.red ?? NaN; - const green = options.green ?? NaN; - const blue = options.blue ?? NaN; + const red = options.red ?? null; + const green = options.green ?? null; + const blue = options.blue ?? null; if (this.isRgb) { this.color = new Color({ spaceId: encodeSpaceForColorJs(space), // convert from 0-255 to 0-1 - coords: [red / 255, green / 255, blue / 255], + coords: [red, green, blue].map(rgbToCoord) as [ + number | null, + number | null, + number | null, + ], alpha, }); } else { @@ -493,21 +486,23 @@ export class SassColor extends Value { this.color = new Color({ spaceId: encodeSpaceForColorJs(space), coords: [ - options.red ?? NaN, - options.green ?? NaN, - options.blue ?? NaN, + options.red ?? null, + options.green ?? null, + options.blue ?? null, ], alpha, }); break; case 'hsl': { - let hue = normalizeHue(options.hue ?? NaN); - let saturation = options.saturation ?? NaN; - const lightness = options.lightness ?? NaN; - if (!Number.isNaN(saturation) && fuzzyLessThan(saturation, 0)) { + let hue = normalizeHue(options.hue ?? null); + let saturation = options.saturation ?? null; + const lightness = options.lightness ?? null; + if (saturation !== null && fuzzyLessThan(saturation, 0)) { saturation = Math.abs(saturation); - hue = (hue + 180) % 360; + if (hue !== null) { + hue = (hue + 180) % 360; + } } this.color = new Color({ @@ -519,9 +514,9 @@ export class SassColor extends Value { } case 'hwb': { - const hue = normalizeHue(options.hue ?? NaN); - const whiteness = options.whiteness ?? NaN; - const blackness = options.blackness ?? NaN; + const hue = normalizeHue(options.hue ?? null); + const whiteness = options.whiteness ?? null; + const blackness = options.blackness ?? null; this.color = new Color({ spaceId: encodeSpaceForColorJs(space), coords: [hue, whiteness, blackness], @@ -532,9 +527,9 @@ export class SassColor extends Value { case 'lab': case 'oklab': { - const lightness = options.lightness ?? NaN; - const a = options.a ?? NaN; - const b = options.b ?? NaN; + const lightness = options.lightness ?? null; + const a = options.a ?? null; + const b = options.b ?? null; this.color = new Color({ spaceId: encodeSpaceForColorJs(space), coords: [lightness, a, b], @@ -545,12 +540,14 @@ export class SassColor extends Value { case 'lch': case 'oklch': { - const lightness = options.lightness ?? NaN; - let chroma = options.chroma ?? NaN; - let hue = normalizeHue(options.hue ?? NaN); - if (!Number.isNaN(chroma) && fuzzyLessThan(chroma, 0)) { + const lightness = options.lightness ?? null; + let chroma = options.chroma ?? null; + let hue = normalizeHue(options.hue ?? null); + if (chroma !== null && fuzzyLessThan(chroma, 0)) { chroma = Math.abs(chroma); - hue = (hue + 180) % 360; + if (hue !== null) { + hue = (hue + 180) % 360; + } } this.color = new Color({ @@ -566,23 +563,16 @@ export class SassColor extends Value { case 'xyz-d50': this.color = new Color({ spaceId: encodeSpaceForColorJs(space), - coords: [options.x ?? NaN, options.y ?? NaN, options.z ?? NaN], + coords: [options.x ?? null, options.y ?? null, options.z ?? null], alpha, }); break; } - - // @TODO Waiting on new release of ColorJS that includes allowing `alpha` - // to be `NaN` on initial construction. - // Fixed in: https://github.com/LeaVerou/color.js/commit/08b39c180565ae61408ad737d91bd71a1f79d3df - if (Number.isNaN(alpha)) { - this.color.alpha = NaN; - } } /** This color's alpha channel, between `0` and `1`. */ get alpha(): number { - return NaNtoZero(this.color.alpha); + return this.color.alpha ?? 0; } /** The name of this color's color space. */ @@ -607,9 +597,13 @@ export class SassColor extends Value { get channelsOrNull(): List { let coords = this.color.coords; if (this.space === 'rgb') { - coords = coords.map(coordToRgb) as [number, number, number]; + coords = coords.map(coordToRgb) as [ + number | null, + number | null, + number | null, + ]; } - return List(coords.map(NaNtoNull)); + return List(coords); } /** @@ -621,9 +615,13 @@ export class SassColor extends Value { get channels(): List { let coords = this.color.coords; if (this.space === 'rgb') { - coords = coords.map(coordToRgb) as [number, number, number]; + coords = coords.map(coordToRgb) as [ + number | null, + number | null, + number | null, + ]; } - return List(coords.map(NaNtoZero)); + return List(coords.map(val => val ?? 0)); } /** @@ -633,8 +631,7 @@ export class SassColor extends Value { */ get red(): number { emitColor4ApiGetterDeprecation('red'); - const val = NaNtoZero(coordToRgb(this.color.srgb.red)); - return fuzzyRound(val); + return fuzzyRound(coordToRgb(this.color.srgb.red)) ?? 0; } /** @@ -644,8 +641,7 @@ export class SassColor extends Value { */ get green(): number { emitColor4ApiGetterDeprecation('green'); - const val = NaNtoZero(coordToRgb(this.color.srgb.green)); - return fuzzyRound(val); + return fuzzyRound(coordToRgb(this.color.srgb.green)) ?? 0; } /** @@ -655,8 +651,7 @@ export class SassColor extends Value { */ get blue(): number { emitColor4ApiGetterDeprecation('blue'); - const val = NaNtoZero(coordToRgb(this.color.srgb.blue)); - return fuzzyRound(val); + return fuzzyRound(coordToRgb(this.color.srgb.blue)) ?? 0; } /** @@ -666,7 +661,7 @@ export class SassColor extends Value { */ get hue(): number { emitColor4ApiGetterDeprecation('hue'); - return NaNtoZero(this.color.hsl.hue); + return this.color.hsl.hue ?? 0; } /** @@ -676,7 +671,7 @@ export class SassColor extends Value { */ get saturation(): number { emitColor4ApiGetterDeprecation('saturation'); - return NaNtoZero(this.color.hsl.saturation); + return this.color.hsl.saturation ?? 0; } /** @@ -686,7 +681,7 @@ export class SassColor extends Value { */ get lightness(): number { emitColor4ApiGetterDeprecation('lightness'); - return NaNtoZero(this.color.hsl.lightness); + return this.color.hsl.lightness ?? 0; } /** @@ -696,7 +691,7 @@ export class SassColor extends Value { */ get whiteness(): number { emitColor4ApiGetterDeprecation('whiteness'); - return NaNtoZero(this.color.hwb.whiteness); + return this.color.hwb.whiteness ?? 0; } /** @@ -706,7 +701,7 @@ export class SassColor extends Value { */ get blackness(): number { emitColor4ApiGetterDeprecation('blackness'); - return NaNtoZero(this.color.hwb.blackness); + return this.color.hwb.blackness ?? 0; } assertColor(): SassColor { @@ -768,7 +763,7 @@ export class SassColor extends Value { channel(channel: ChannelNameXyz, options: {space: ColorSpaceXyz}): number; channel(channel: ChannelName, options?: {space: KnownColorSpace}): number { if (channel === 'alpha') return this.alpha; - let val: number; + let val: number | null; const space = options?.space ?? this.space; validateChannelInSpace(channel, space); if (options?.space) { @@ -783,7 +778,7 @@ export class SassColor extends Value { }); } if (space === 'rgb') val = coordToRgb(val); - return NaNtoZero(val); + return val ?? 0; } /** @@ -793,13 +788,13 @@ export class SassColor extends Value { * [missing channel]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#missing_color_components */ isChannelMissing(channel: ChannelName): boolean { - if (channel === 'alpha') return Number.isNaN(this.color.alpha); + if (channel === 'alpha') return this.color.alpha === null; validateChannelInSpace(channel, this.space); - return Number.isNaN( + return ( this.color.get({ space: this.color.spaceId, coordId: encodeChannelForColorJs(channel), - }), + }) === null ); } @@ -906,7 +901,7 @@ export class SassColor extends Value { [this.channel0Id]: coords[0], [this.channel1Id]: coords[1], [this.channel2Id]: coords[2], - alpha: NaNtoNull(this.color.alpha), + alpha: this.color.alpha, }); } @@ -1140,11 +1135,11 @@ export class SassColor extends Value { coords = this.color .to('srgb') .coords.map(coordToRgb) - .map(fuzzyRound) as [number, number, number]; + .map(fuzzyRound) as [number | null, number | null, number | null]; otherCoords = other.color .to('srgb') .coords.map(coordToRgb) - .map(fuzzyRound) as [number, number, number]; + .map(fuzzyRound) as [number | null, number | null, number | null]; } return ( fuzzyEquals(coords[0], otherCoords[0]) && diff --git a/lib/src/value/utils.ts b/lib/src/value/utils.ts index 7844c810..8f054675 100644 --- a/lib/src/value/utils.ts +++ b/lib/src/value/utils.ts @@ -16,7 +16,10 @@ export const precision = 10; const epsilon = 10 ** (-precision - 1); /** Whether `num1` and `num2` are equal within `epsilon`. */ -export function fuzzyEquals(num1: number, num2: number): boolean { +export function fuzzyEquals(num1: number | null, num2: number | null): boolean { + if (num1 === null || num2 === null) { + return false; + } return Math.abs(num1 - num2) < epsilon; } @@ -25,10 +28,8 @@ export function fuzzyEquals(num1: number, num2: number): boolean { * * Two numbers that `fuzzyEquals` each other must have the same hash code. */ -export function fuzzyHashCode(num: number): number { - return !isFinite(num) || isNaN(num) - ? hash(num) - : hash(Math.round(num / epsilon)); +export function fuzzyHashCode(num: number | null): number { + return num === null ? hash(num) : hash(Math.round(num / epsilon)); } /** Whether `num1` < `num2`, within `epsilon`. */ @@ -72,7 +73,10 @@ export function fuzzyAsInt(num: number): number | null { * * If `num` `fuzzyEquals` `x.5`, rounds away from zero. */ -export function fuzzyRound(num: number): number { +export function fuzzyRound(num: number | null): number | null { + if (num === null) { + return num; + } if (num > 0) { return fuzzyLessThan(num % 1, 0.5) ? Math.floor(num) : Math.ceil(num); } else { diff --git a/package.json b/package.json index 24a8bfbe..17e437ab 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "dist/**/*" ], "engines": { - "node": ">=16.0.0" + "node": ">=20.19.0" }, "bin": { "sass": "dist/bin/sass.js" @@ -62,7 +62,7 @@ }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", - "colorjs.io": "^0.5.0", + "colorjs.io": "^0.7.0", "immutable": "^5.1.5", "rxjs": "^7.4.0", "supports-color": "^8.1.1", From 07d78038a47ce35b8aa2ff8fd49594553a73f632 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Sat, 25 Jul 2026 00:20:24 +0000 Subject: [PATCH 16/22] Update Dart Sass version and release --- CHANGELOG.md | 5 ++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 45 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 348ec5a3..c4e517c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +## 1.102.0 + +* Use the 2.4 gamma transfer function for rec2020, as specified by the latest + draft of CSS Color 4. + ## 1.101.7 * No user-visible changes. diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index da7665f2..871bab98 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.101.7", + "version": "1.102.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.101.7" + "sass": "1.102.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index c3299507..993c1757 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.101.7", + "version": "1.102.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index 3502d04e..699eefb4 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.101.7", + "version": "1.102.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 942fd681..e4dce4ea 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.101.7", + "version": "1.102.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 7823b6fe..7e61c313 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.101.7", + "version": "1.102.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 0020aed2..94872a7a 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.101.7", + "version": "1.102.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 619cef8e..ea6e7554 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.101.7", + "version": "1.102.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index bcb9f405..c0c79805 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index d1988e0b..7d293913 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index f07b026a..e5156829 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index 93bc8bc9..7310605a 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index f048c561..21683469 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 3aef7ff3..9ecab1f2 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 298a5769..37480297 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index a38c96b1..422c2296 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.101.7", + "version": "1.102.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 16cc9808..8a73417b 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.101.7", + "version": "1.102.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.101.7" + "sass": "1.102.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index e3af1c6b..f5410f6a 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.101.7", + "version": "1.102.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 66bbb3a1..c77b44b0 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.101.7", + "version": "1.102.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 17e437ab..91e4cd90 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.101.7", + "version": "1.102.0", "protocol-version": "3.2.0", - "compiler-version": "1.101.7", + "compiler-version": "1.102.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.101.7", - "sass-embedded-android-arm": "1.101.7", - "sass-embedded-android-arm64": "1.101.7", - "sass-embedded-android-riscv64": "1.101.7", - "sass-embedded-android-x64": "1.101.7", - "sass-embedded-darwin-arm64": "1.101.7", - "sass-embedded-darwin-x64": "1.101.7", - "sass-embedded-linux-arm": "1.101.7", - "sass-embedded-linux-arm64": "1.101.7", - "sass-embedded-linux-musl-arm": "1.101.7", - "sass-embedded-linux-musl-arm64": "1.101.7", - "sass-embedded-linux-musl-riscv64": "1.101.7", - "sass-embedded-linux-musl-x64": "1.101.7", - "sass-embedded-linux-riscv64": "1.101.7", - "sass-embedded-linux-x64": "1.101.7", - "sass-embedded-unknown-all": "1.101.7", - "sass-embedded-win32-arm64": "1.101.7", - "sass-embedded-win32-x64": "1.101.7" + "sass-embedded-all-unknown": "1.102.0", + "sass-embedded-android-arm": "1.102.0", + "sass-embedded-android-arm64": "1.102.0", + "sass-embedded-android-riscv64": "1.102.0", + "sass-embedded-android-x64": "1.102.0", + "sass-embedded-darwin-arm64": "1.102.0", + "sass-embedded-darwin-x64": "1.102.0", + "sass-embedded-linux-arm": "1.102.0", + "sass-embedded-linux-arm64": "1.102.0", + "sass-embedded-linux-musl-arm": "1.102.0", + "sass-embedded-linux-musl-arm64": "1.102.0", + "sass-embedded-linux-musl-riscv64": "1.102.0", + "sass-embedded-linux-musl-x64": "1.102.0", + "sass-embedded-linux-riscv64": "1.102.0", + "sass-embedded-linux-x64": "1.102.0", + "sass-embedded-unknown-all": "1.102.0", + "sass-embedded-win32-arm64": "1.102.0", + "sass-embedded-win32-x64": "1.102.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From 0fd3bd012446aa638930509fa5a00668c51c3725 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Jul 2026 16:08:25 -0700 Subject: [PATCH 17/22] Bump typescript from 6.0.3 to 7.0.2 (#438) * Bump typescript from 6.0.3 to 7.0.2 Bumps [typescript](https://github.com/microsoft/TypeScript) from 6.0.3 to 7.0.2. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Commits](https://github.com/microsoft/TypeScript/commits) --- updated-dependencies: - dependency-name: typescript dependency-version: 7.0.2 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * Use both TS6 and TS7 This follows the instructions laid out in [this blog post]. [this blog post]: https://devblogs.microsoft.com/typescript/announcing-typescript-7-0/#running-side-by-side-with-typescript-6.0 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Natalie Weizenbaum --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 91e4cd90..81339f90 100644 --- a/package.json +++ b/package.json @@ -83,6 +83,7 @@ "@types/tar": "^7.0.87", "@types/varint": "^6.0.1", "@types/yargs": "^17.0.4", + "@typescript/native": "npm:typescript@^7.0.2", "extract-zip": "^2.0.1", "gts": "^7.0.0", "jest": "^30.0.3", @@ -93,7 +94,7 @@ "tar": "^7.4.3", "ts-jest": "^29.4.11", "ts-node": "^10.2.1", - "typescript": "^6.0.3", + "typescript": "npm:@typescript/typescript6@^6.0.2", "yaml": "^2.2.1", "yargs": "^17.2.1" } From cb3b9f06f9cb650ac05b0d0913728e84f575d1d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 13:38:43 -0700 Subject: [PATCH 18/22] Bump dart-lang/setup-dart from 1 to 1.7.2 (#441) Bumps [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) from 1 to 1.7.2. - [Release notes](https://github.com/dart-lang/setup-dart/releases) - [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md) - [Commits](https://github.com/dart-lang/setup-dart/compare/v1...v1.7.2) --- updated-dependencies: - dependency-name: dart-lang/setup-dart dependency-version: 1.7.2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index aaab1168..2e22054f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,7 +51,7 @@ jobs: with: node-version: ${{ matrix.node-version }} check-latest: true - - uses: dart-lang/setup-dart@v1 + - uses: dart-lang/setup-dart@v1.7.2 with: {sdk: stable} - run: dart --version @@ -90,7 +90,7 @@ jobs: steps: - uses: actions/checkout@v7 - - uses: dart-lang/setup-dart@v1 + - uses: dart-lang/setup-dart@v1.7.2 with: {sdk: stable} - uses: actions/setup-node@v7 with: {node-version: "${{ matrix.node_version }}"} From ecc08020d75e3003786e06532a3c651c97198762 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Thu, 20 Aug 2026 22:40:02 +0000 Subject: [PATCH 19/22] Update Dart Sass version and release --- CHANGELOG.md | 11 ++++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 51 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4e517c1..eb74f2b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +## 1.103.1 + +* No user-visible changes. + +## 1.103.0 + +* **Potentially breaking compatibility fix:** Colors now preserve "analogous + sets" of missing channels during conversions, per the CSS spec. For example, + `color.to-space(lch(50% none none), lab)` now returns `lab(50% none none)` + instead of `lab(50% 0 0)`. + ## 1.102.0 * Use the 2.4 gamma transfer function for rec2020, as specified by the latest diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index 871bab98..dd6d50e6 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.102.0", + "version": "1.103.1", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.102.0" + "sass": "1.103.1" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index 993c1757..1bd01df4 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.102.0", + "version": "1.103.1", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index 699eefb4..f31fb468 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.102.0", + "version": "1.103.1", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index e4dce4ea..51008adb 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.102.0", + "version": "1.103.1", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 7e61c313..cafbc9f9 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.102.0", + "version": "1.103.1", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 94872a7a..cf68807e 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.102.0", + "version": "1.103.1", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index ea6e7554..13681c82 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.102.0", + "version": "1.103.1", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index c0c79805..4b693000 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 7d293913..952877e8 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index e5156829..1552e495 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index 7310605a..fe03fcae 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 21683469..b4818d0c 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 9ecab1f2..d52f7c63 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 37480297..13b96ff1 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index 422c2296..0ab9ded8 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.102.0", + "version": "1.103.1", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 8a73417b..ba1715d1 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.102.0", + "version": "1.103.1", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.102.0" + "sass": "1.103.1" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index f5410f6a..4e0eb217 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.102.0", + "version": "1.103.1", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index c77b44b0..ccbffb89 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.102.0", + "version": "1.103.1", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 81339f90..19ee3459 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.102.0", + "version": "1.103.1", "protocol-version": "3.2.0", - "compiler-version": "1.102.0", + "compiler-version": "1.103.1", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.102.0", - "sass-embedded-android-arm": "1.102.0", - "sass-embedded-android-arm64": "1.102.0", - "sass-embedded-android-riscv64": "1.102.0", - "sass-embedded-android-x64": "1.102.0", - "sass-embedded-darwin-arm64": "1.102.0", - "sass-embedded-darwin-x64": "1.102.0", - "sass-embedded-linux-arm": "1.102.0", - "sass-embedded-linux-arm64": "1.102.0", - "sass-embedded-linux-musl-arm": "1.102.0", - "sass-embedded-linux-musl-arm64": "1.102.0", - "sass-embedded-linux-musl-riscv64": "1.102.0", - "sass-embedded-linux-musl-x64": "1.102.0", - "sass-embedded-linux-riscv64": "1.102.0", - "sass-embedded-linux-x64": "1.102.0", - "sass-embedded-unknown-all": "1.102.0", - "sass-embedded-win32-arm64": "1.102.0", - "sass-embedded-win32-x64": "1.102.0" + "sass-embedded-all-unknown": "1.103.1", + "sass-embedded-android-arm": "1.103.1", + "sass-embedded-android-arm64": "1.103.1", + "sass-embedded-android-riscv64": "1.103.1", + "sass-embedded-android-x64": "1.103.1", + "sass-embedded-darwin-arm64": "1.103.1", + "sass-embedded-darwin-x64": "1.103.1", + "sass-embedded-linux-arm": "1.103.1", + "sass-embedded-linux-arm64": "1.103.1", + "sass-embedded-linux-musl-arm": "1.103.1", + "sass-embedded-linux-musl-arm64": "1.103.1", + "sass-embedded-linux-musl-riscv64": "1.103.1", + "sass-embedded-linux-musl-x64": "1.103.1", + "sass-embedded-linux-riscv64": "1.103.1", + "sass-embedded-linux-x64": "1.103.1", + "sass-embedded-unknown-all": "1.103.1", + "sass-embedded-win32-arm64": "1.103.1", + "sass-embedded-win32-x64": "1.103.1" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From 191d6aa12225c39b88933c7b6d8101c1cb080ea9 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Thu, 3 Sep 2026 23:33:15 +0000 Subject: [PATCH 20/22] Update Dart Sass version and release --- CHANGELOG.md | 9 +++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 49 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index eb74f2b0..51370e4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +## 1.104.0 + +* **Potentially breaking compatibility fix:** Colors now convert the special + values NaN and negative zero, as well as infinity and negative infinity for + polar-hue channels, to 0 as per the CSS spec. + +* The special value negative zero is now serialized as `-0` instead of `0` for + greater compatibility when using it in CSS calculations. + ## 1.103.1 * No user-visible changes. diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index dd6d50e6..e64c3bc7 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.103.1", + "version": "1.104.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.103.1" + "sass": "1.104.0" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index 1bd01df4..11bb9b75 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.103.1", + "version": "1.104.0", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index f31fb468..ba4e3929 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.103.1", + "version": "1.104.0", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 51008adb..2a7c8036 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.103.1", + "version": "1.104.0", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index cafbc9f9..561f8cd8 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.103.1", + "version": "1.104.0", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index cf68807e..6101e805 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.103.1", + "version": "1.104.0", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 13681c82..a71175de 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.103.1", + "version": "1.104.0", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index 4b693000..61d8b63e 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 952877e8..089717b8 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index 1552e495..26541cd0 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index fe03fcae..ea3cd3ad 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index b4818d0c..50f51391 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index d52f7c63..9fa5ba5c 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 13b96ff1..f7758938 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index 0ab9ded8..b8569a3c 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.103.1", + "version": "1.104.0", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index ba1715d1..62384c23 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.103.1", + "version": "1.104.0", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.103.1" + "sass": "1.104.0" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index 4e0eb217..c1f2087e 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.103.1", + "version": "1.104.0", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index ccbffb89..03835586 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.103.1", + "version": "1.104.0", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 19ee3459..70aca029 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.103.1", + "version": "1.104.0", "protocol-version": "3.2.0", - "compiler-version": "1.103.1", + "compiler-version": "1.104.0", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.103.1", - "sass-embedded-android-arm": "1.103.1", - "sass-embedded-android-arm64": "1.103.1", - "sass-embedded-android-riscv64": "1.103.1", - "sass-embedded-android-x64": "1.103.1", - "sass-embedded-darwin-arm64": "1.103.1", - "sass-embedded-darwin-x64": "1.103.1", - "sass-embedded-linux-arm": "1.103.1", - "sass-embedded-linux-arm64": "1.103.1", - "sass-embedded-linux-musl-arm": "1.103.1", - "sass-embedded-linux-musl-arm64": "1.103.1", - "sass-embedded-linux-musl-riscv64": "1.103.1", - "sass-embedded-linux-musl-x64": "1.103.1", - "sass-embedded-linux-riscv64": "1.103.1", - "sass-embedded-linux-x64": "1.103.1", - "sass-embedded-unknown-all": "1.103.1", - "sass-embedded-win32-arm64": "1.103.1", - "sass-embedded-win32-x64": "1.103.1" + "sass-embedded-all-unknown": "1.104.0", + "sass-embedded-android-arm": "1.104.0", + "sass-embedded-android-arm64": "1.104.0", + "sass-embedded-android-riscv64": "1.104.0", + "sass-embedded-android-x64": "1.104.0", + "sass-embedded-darwin-arm64": "1.104.0", + "sass-embedded-darwin-x64": "1.104.0", + "sass-embedded-linux-arm": "1.104.0", + "sass-embedded-linux-arm64": "1.104.0", + "sass-embedded-linux-musl-arm": "1.104.0", + "sass-embedded-linux-musl-arm64": "1.104.0", + "sass-embedded-linux-musl-riscv64": "1.104.0", + "sass-embedded-linux-musl-x64": "1.104.0", + "sass-embedded-linux-riscv64": "1.104.0", + "sass-embedded-linux-x64": "1.104.0", + "sass-embedded-unknown-all": "1.104.0", + "sass-embedded-win32-arm64": "1.104.0", + "sass-embedded-win32-x64": "1.104.0" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0", From dbfd5a243ba55ed42e3cfee3d7db7292a7ed3c5f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Sep 2026 15:54:08 -0700 Subject: [PATCH 21/22] Bump dart-lang/setup-dart from 1.7.2 to 1.8.1 (#444) Bumps [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) from 1.7.2 to 1.8.1. - [Release notes](https://github.com/dart-lang/setup-dart/releases) - [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md) - [Commits](https://github.com/dart-lang/setup-dart/compare/v1.7.2...v1.8.1) --- updated-dependencies: - dependency-name: dart-lang/setup-dart dependency-version: 1.8.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2e22054f..d0312000 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,7 +51,7 @@ jobs: with: node-version: ${{ matrix.node-version }} check-latest: true - - uses: dart-lang/setup-dart@v1.7.2 + - uses: dart-lang/setup-dart@v1.8.1 with: {sdk: stable} - run: dart --version @@ -90,7 +90,7 @@ jobs: steps: - uses: actions/checkout@v7 - - uses: dart-lang/setup-dart@v1.7.2 + - uses: dart-lang/setup-dart@v1.8.1 with: {sdk: stable} - uses: actions/setup-node@v7 with: {node-version: "${{ matrix.node_version }}"} From aa4ed87107d34c26aaf4fdf864669e13a7df4192 Mon Sep 17 00:00:00 2001 From: Sass Bot Date: Sat, 12 Sep 2026 07:50:08 +0000 Subject: [PATCH 22/22] Update Dart Sass version and release --- CHANGELOG.md | 21 +++++++++++++++ npm/all-unknown/package.json | 4 +-- npm/android-arm/package.json | 2 +- npm/android-arm64/package.json | 2 +- npm/android-riscv64/package.json | 2 +- npm/android-x64/package.json | 2 +- npm/darwin-arm64/package.json | 2 +- npm/darwin-x64/package.json | 2 +- npm/linux-arm/package.json | 2 +- npm/linux-arm64/package.json | 2 +- npm/linux-musl-arm/package.json | 2 +- npm/linux-musl-arm64/package.json | 2 +- npm/linux-musl-riscv64/package.json | 2 +- npm/linux-musl-x64/package.json | 2 +- npm/linux-riscv64/package.json | 2 +- npm/linux-x64/package.json | 2 +- npm/unknown-all/package.json | 4 +-- npm/win32-arm64/package.json | 2 +- npm/win32-x64/package.json | 2 +- package.json | 40 ++++++++++++++--------------- 20 files changed, 61 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 51370e4f..fa700ccb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +## 1.104.1 + +* Fix a bug where loud comments before `@use` rules could be emitted multiple + times under certain circumstances. + +* Fix a bug in which an invalid selector at the end of an indented syntax + stylesheet would cause the parser to crash instead of emitting a useful error + message. + +### Command Line Interface + +* Many-to-many compilations no longer compile any files that appear in the + output directory if the output directory is also within the source directory. + This fixes a bug where `--watch` mode could enter an infinite loop recompiling + the same CSS file over and over. + +* Sass now sets the modification time of output files to the time compilation + *started* rather than the time it *ended*. This ensures that, if a source file + is modified during compilation, `--watch` and `--update` mode will recompile + the outputs to include the new source file contents. + ## 1.104.0 * **Potentially breaking compatibility fix:** Colors now convert the special diff --git a/npm/all-unknown/package.json b/npm/all-unknown/package.json index e64c3bc7..c7535f96 100644 --- a/npm/all-unknown/package.json +++ b/npm/all-unknown/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-all-unknown", - "version": "1.104.0", + "version": "1.104.1", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!x64" ], "dependencies": { - "sass": "1.104.0" + "sass": "1.104.1" } } diff --git a/npm/android-arm/package.json b/npm/android-arm/package.json index 11bb9b75..6b68cdcc 100644 --- a/npm/android-arm/package.json +++ b/npm/android-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm", - "version": "1.104.0", + "version": "1.104.1", "description": "The android-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-arm64/package.json b/npm/android-arm64/package.json index ba4e3929..e0563a9f 100644 --- a/npm/android-arm64/package.json +++ b/npm/android-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-arm64", - "version": "1.104.0", + "version": "1.104.1", "description": "The android-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-riscv64/package.json b/npm/android-riscv64/package.json index 2a7c8036..df860337 100644 --- a/npm/android-riscv64/package.json +++ b/npm/android-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-riscv64", - "version": "1.104.0", + "version": "1.104.1", "description": "The android-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/android-x64/package.json b/npm/android-x64/package.json index 561f8cd8..9d89dff6 100644 --- a/npm/android-x64/package.json +++ b/npm/android-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-android-x64", - "version": "1.104.0", + "version": "1.104.1", "description": "The android-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 6101e805..1164a521 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-arm64", - "version": "1.104.0", + "version": "1.104.1", "description": "The darwin-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index a71175de..d123e1e8 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-darwin-x64", - "version": "1.104.0", + "version": "1.104.1", "description": "The darwin-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index 61d8b63e..467d3182 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index 089717b8..7ab022a1 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-arm64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm/package.json b/npm/linux-musl-arm/package.json index 26541cd0..6e4acb62 100644 --- a/npm/linux-musl-arm/package.json +++ b/npm/linux-musl-arm/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-musl-arm binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-arm64/package.json b/npm/linux-musl-arm64/package.json index ea3cd3ad..170dc11d 100644 --- a/npm/linux-musl-arm64/package.json +++ b/npm/linux-musl-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-arm64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-musl-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-riscv64/package.json b/npm/linux-musl-riscv64/package.json index 50f51391..3835436e 100644 --- a/npm/linux-musl-riscv64/package.json +++ b/npm/linux-musl-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-riscv64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-musl-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-musl-x64/package.json b/npm/linux-musl-x64/package.json index 9fa5ba5c..396b113d 100644 --- a/npm/linux-musl-x64/package.json +++ b/npm/linux-musl-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-musl-x64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-musl-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index f7758938..5fad3080 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-riscv64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-riscv64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index b8569a3c..e66d4d2a 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-linux-x64", - "version": "1.104.0", + "version": "1.104.1", "description": "The linux-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/unknown-all/package.json b/npm/unknown-all/package.json index 62384c23..fc294769 100644 --- a/npm/unknown-all/package.json +++ b/npm/unknown-all/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-unknown-all", - "version": "1.104.0", + "version": "1.104.1", "description": "The pure js optional dependency for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -12,6 +12,6 @@ "!win32" ], "dependencies": { - "sass": "1.104.0" + "sass": "1.104.1" } } diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index c1f2087e..ed480467 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-arm64", - "version": "1.104.0", + "version": "1.104.1", "description": "The win32-arm64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index 03835586..132114a2 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "sass-embedded-win32-x64", - "version": "1.104.0", + "version": "1.104.1", "description": "The win32-x64 binary for sass-embedded", "repository": "sass/embedded-host-node", "author": "Google Inc.", diff --git a/package.json b/package.json index 70aca029..d595f8c2 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,8 @@ { "name": "sass-embedded", - "version": "1.104.0", + "version": "1.104.1", "protocol-version": "3.2.0", - "compiler-version": "1.104.0", + "compiler-version": "1.104.1", "description": "Node.js library that communicates with Embedded Dart Sass using the Embedded Sass protocol", "repository": "sass/embedded-host-node", "author": "Google Inc.", @@ -41,24 +41,24 @@ "test": "jest" }, "optionalDependencies": { - "sass-embedded-all-unknown": "1.104.0", - "sass-embedded-android-arm": "1.104.0", - "sass-embedded-android-arm64": "1.104.0", - "sass-embedded-android-riscv64": "1.104.0", - "sass-embedded-android-x64": "1.104.0", - "sass-embedded-darwin-arm64": "1.104.0", - "sass-embedded-darwin-x64": "1.104.0", - "sass-embedded-linux-arm": "1.104.0", - "sass-embedded-linux-arm64": "1.104.0", - "sass-embedded-linux-musl-arm": "1.104.0", - "sass-embedded-linux-musl-arm64": "1.104.0", - "sass-embedded-linux-musl-riscv64": "1.104.0", - "sass-embedded-linux-musl-x64": "1.104.0", - "sass-embedded-linux-riscv64": "1.104.0", - "sass-embedded-linux-x64": "1.104.0", - "sass-embedded-unknown-all": "1.104.0", - "sass-embedded-win32-arm64": "1.104.0", - "sass-embedded-win32-x64": "1.104.0" + "sass-embedded-all-unknown": "1.104.1", + "sass-embedded-android-arm": "1.104.1", + "sass-embedded-android-arm64": "1.104.1", + "sass-embedded-android-riscv64": "1.104.1", + "sass-embedded-android-x64": "1.104.1", + "sass-embedded-darwin-arm64": "1.104.1", + "sass-embedded-darwin-x64": "1.104.1", + "sass-embedded-linux-arm": "1.104.1", + "sass-embedded-linux-arm64": "1.104.1", + "sass-embedded-linux-musl-arm": "1.104.1", + "sass-embedded-linux-musl-arm64": "1.104.1", + "sass-embedded-linux-musl-riscv64": "1.104.1", + "sass-embedded-linux-musl-x64": "1.104.1", + "sass-embedded-linux-riscv64": "1.104.1", + "sass-embedded-linux-x64": "1.104.1", + "sass-embedded-unknown-all": "1.104.1", + "sass-embedded-win32-arm64": "1.104.1", + "sass-embedded-win32-x64": "1.104.1" }, "dependencies": { "@bufbuild/protobuf": "^2.5.0",