Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
f6fea3a
Fix the sass_api release (#2557)
nex3 Apr 2, 2025
52221c0
Fix canonicalize paths containing `..` (#2561)
ntkme Apr 3, 2025
1adf814
Switch to OSS windows-11-arm runner (#2563)
ntkme Apr 21, 2025
087a685
Stop releasing the Bazel repo (#2565)
nex3 Apr 21, 2025
3b8afa2
Fix top-level nesting selectors in loaded plain CSS (#2560)
nex3 Apr 21, 2025
c4b0138
Bump protoc_plugin from 21.1.2 to 22.0.1 and protobuf to 4.0.0 (#2554)
dependabot[bot] Apr 26, 2025
735109f
Deprecate passing a relative URL to `compileString()` *et al* (#2567)
nex3 Apr 30, 2025
1a5e0ee
Fix off-by-one error in Interpolation.spanForElement() (#2568)
jonathan-conder May 6, 2025
90b6b39
Remove useless `_currentCallable` property in the evaluate visitor (#…
stof May 7, 2025
7f54226
Disallow passing functions/mixins across compilations (#2544)
ntkme May 8, 2025
a81cd73
Properly handle dev changelogs in bump-version-* tasks
nex3 May 6, 2025
6edc11e
Support empty custom properties
nex3 May 8, 2025
c6b2163
Merge pull request #2572 from sass/empty-custom-prop
nex3 May 9, 2025
4e9e206
Allow the Node.js pkg importer to return the same URL multiple times …
nex3 May 16, 2025
e7b70e2
Remove ia32 support on dart 3.8 (#2579)
ntkme May 21, 2025
9a5b4f5
Properly add `ParenthesizedExpression` for comma-separated lists
nex3 May 30, 2025
3c9a501
Fix sass-parser compatibility with the latest PostCSS
nex3 May 30, 2025
394fbe5
Merge pull request #2583 from sass/list-parens
nex3 May 30, 2025
4498007
Bump jest-extended from 4.0.2 to 5.0.3 in /pkg/sass-parser (#2582)
dependabot[bot] Jun 2, 2025
c2532cc
Bump lints from 5.1.1 to 6.0.0 (#2581)
dependabot[bot] Jun 2, 2025
1250380
release 1.89.2 for an embedded-host-node fix (#2585)
Goodwine Jun 9, 2025
a42380f
Bump jest-extended from 5.0.3 to 6.0.0 in /pkg/sass-parser (#2587)
dependabot[bot] Jun 9, 2025
b27c3ae
Fix CI by pinning postcss version to 8.5.5 and disable app armor for …
Goodwine Jul 9, 2025
d3e1abf
Bump jest from 29.7.0 to 30.0.4 in /pkg/sass-parser (#2603)
dependabot[bot] Jul 14, 2025
008bbef
Update embedded-host-node release pipeline (#2609)
ntkme Jul 21, 2025
02fa098
Bump @types/jest from 29.5.14 to 30.0.0 in /pkg/sass-parser (#2591)
dependabot[bot] Aug 4, 2025
d6f4f17
Allow unused configurations to go past `@forward` (#2600)
nex3 Aug 5, 2025
8f1c24a
Bump expect from 29.7.0 to 30.0.5 in /pkg/sass-parser (#2611)
dependabot[bot] Aug 13, 2025
e55398a
Bump actions/checkout from 4 to 5 in /.github/util/initialize (#2621)
dependabot[bot] Aug 18, 2025
e0b2a50
Bump actions/checkout from 4 to 5 (#2620)
dependabot[bot] Aug 18, 2025
1df71a5
Print non-integer number at full precision in inspect mode (#2615)
ntkme Aug 20, 2025
6607204
Use official dart riscv64 docker image (#2619)
ntkme Aug 25, 2025
6878709
Deprecate misplaced rest arguments (#2623)
nex3 Aug 25, 2025
dc923ed
Update Jest snapshot URLs (#2628)
nex3 Aug 28, 2025
c61b098
Fix `@extend` through mixed `@import` and `@use` (#2627)
nex3 Aug 28, 2025
6d3d928
Delete source maps when source files are deleted in watch mode (#2626)
nex3 Aug 28, 2025
9009a64
Implement the new mixed declaration/comment/at-rule behavior (#2629)
nex3 Aug 28, 2025
87e2e1c
Add support for the plain CSS type() function (#2630)
nex3 Aug 29, 2025
473d83a
Merge branch 'main' of github.com:sass/dart-sass into merge-main
nex3 Sep 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/util/initialize/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ runs:
# downloading repo via GitHub API.
- name: Check out the language repo
if: github.event_name != 'pull_request'
uses: actions/checkout@v4
uses: actions/checkout@v5
with: {repository: sass/sass, path: build/language}

- name: Generate Dart from protobuf
Expand Down
44 changes: 3 additions & 41 deletions .github/workflows/build-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,24 +21,18 @@ jobs:
- image: docker.io/library/dart
platform: linux/amd64
target: linux-x64
- image: docker.io/library/dart
platform: linux/amd64
target: linux-ia32
- image: docker.io/library/dart
platform: linux/arm64
target: linux-arm64
- image: docker.io/library/dart
platform: linux/arm/v7
target: linux-arm
- image: docker.io/library/debian:trixie-slim
- image: docker.io/library/dart
platform: linux/riscv64
target: linux-riscv64
- image: ghcr.io/dart-musl/dart
platform: linux/amd64
target: linux-x64-musl
- image: ghcr.io/dart-musl/dart
platform: linux/amd64
target: linux-ia32-musl
- image: ghcr.io/dart-musl/dart
platform: linux/arm64
target: linux-arm64-musl
Expand All @@ -51,9 +45,6 @@ jobs:
- image: ghcr.io/dart-android/dart
platform: linux/amd64
target: android-x64
- image: ghcr.io/dart-android/dart
platform: linux/amd64
target: android-ia32
- image: ghcr.io/dart-android/dart
platform: linux/arm64
target: android-arm64
Expand All @@ -65,7 +56,7 @@ jobs:
target: android-riscv64

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5

- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}
Expand All @@ -74,7 +65,7 @@ jobs:
run: docker run --privileged --rm registry.fedoraproject.org/fedora-minimal /bin/sh -c "microdnf install --assumeyes --nodocs --setopt=install_weak_deps=False qemu-user-static systemd-udev && mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc && /usr/lib/systemd/systemd-binfmt --unregister && /usr/lib/systemd/systemd-binfmt"

- name: Build
if: matrix.image != 'ghcr.io/dart-android/dart' && matrix.image != 'docker.io/library/debian:trixie-slim'
if: matrix.image != 'ghcr.io/dart-android/dart'
run: |
docker run --rm -i \
--platform ${{ matrix.platform }} \
Expand Down Expand Up @@ -102,35 +93,6 @@ jobs:
dart run grinder pkg-standalone-${{ matrix.target }}
EOF

# https://github.com/dart-lang/dart-docker/issues/96#issuecomment-1669860829
# There is no official riscv64 dart container image yet, build on debian:trixie instead.
# The setup is adopted from: https://github.com/dart-lang/dart-docker/blob/main/Dockerfile-debian.template
- name: Build
if: matrix.image == 'docker.io/library/debian:trixie-slim'
run: |
DART_CHANNEL=stable
DART_VERSION=$(curl -fsSL https://storage.googleapis.com/dart-archive/channels/$DART_CHANNEL/release/latest/VERSION | yq .version)
curl -fsSLO "https://storage.googleapis.com/dart-archive/channels/$DART_CHANNEL/release/$DART_VERSION/sdk/dartsdk-${{ matrix.target }}-release.zip"

docker run --rm -i \
--platform ${{ matrix.platform }} \
--volume "$PWD:$PWD" \
--workdir "$PWD" \
${{ matrix.image }} <<'EOF'
set -e
apt-get update
apt-get install -y --no-install-recommends bind9-dnsutils ca-certificates curl git openssh-client unzip

export DART_SDK=/usr/lib/dart
export PATH=$DART_SDK/bin:/root/.pub-cache/bin:$PATH

SDK="dartsdk-${{ matrix.target }}-release.zip"
unzip "$SDK" && mv dart-sdk "$DART_SDK" && rm "$SDK"

dart pub get
dart run grinder pkg-standalone-${{ matrix.target }}
EOF

- name: Generate artifact attestation
if: github.ref_type == 'tag'
uses: actions/attest-build-provenance@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
runner: macos-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5

- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}
Expand Down
6 changes: 2 additions & 4 deletions .github/workflows/build-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,11 @@ jobs:
include:
- arch: x64
runner: windows-latest
- arch: ia32
runner: windows-latest
- arch: arm64
runner: windows-arm64
runner: windows-11-arm

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5

- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
if: "github.ref_type == 'tag' && github.event.repository.fork == false"

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/release-sass-api.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# This has to be a separate workflow to satisfy pub.dev's somewhat draconian
# requirements for when and how GitHub actions are allowed publish packages.
# Specifically, it requires that each publish action be triggered by a tag that
# contains the version number for that action, so we can't just publish sass_api
# as part of the standard sass release flow because that was triggered by a tag
# with the sass version number.
name: Release sass-api

on:
push:
tags: ['sass-api-[0-9]+.[0-9]+.*']

jobs:
deploy_sass_api:
if: github.event.repository.fork == false
name: Deploy sass_api
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

- name: Deploy
run: dart run grinder deploy-sass-api
env:
PUB_CREDENTIALS: "${{ secrets.PUB_CREDENTIALS }}"
GH_TOKEN: "${{ secrets.GH_TOKEN }}"
GH_USER: sassbot
63 changes: 22 additions & 41 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
needs: [build_linux, build_macos, build_windows]

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand Down Expand Up @@ -63,7 +63,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand All @@ -73,59 +73,39 @@ jobs:
UPDATE_SASS_SASS_REPO: false
NPM_TOKEN: "${{ secrets.NPM_TOKEN }}"

deploy_bazel:
name: Deploy Bazel
runs-on: ubuntu-latest
needs: [deploy_npm]

steps:
- uses: actions/checkout@v4
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

- name: Deploy
run: dart run grinder update-bazel
env:
GH_TOKEN: "${{ secrets.GH_TOKEN }}"
GH_USER: sassbot

deploy_pub:
name: Deploy Pub
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
# We have to use this rather than the implicit GitHub token so that
# pushing a new tag triggers another action.
token: ${{ secrets.GH_TOKEN }}
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

- name: Deploy
run: dart run grinder protobuf pkg-pub-deploy
env: {PUB_CREDENTIALS: "${{ secrets.PUB_CREDENTIALS }}"}

deploy_sass_api:
name: Deploy sass_api
runs-on: ubuntu-latest
needs: [deploy_pub]

steps:
- uses: actions/checkout@v4
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

- name: Deploy
run: dart run grinder deploy-sass-api
env:
PUB_CREDENTIALS: "${{ secrets.PUB_CREDENTIALS }}"
GH_TOKEN: "${{ secrets.GH_TOKEN }}"
GH_USER: sassbot
- name: Get Sass API version
id: sass-api-version
run: |
echo "version=$(cat pkg/sass_api/pubspec.yaml | sed -nE 's/version: (.*)/\1/p')" | tee --append "$GITHUB_OUTPUT"
# This should be /-separated rather than hyphenated, but pub.dev doesn't
# currently allow that (dart-lang/pub-dev#8690).
- run: git tag sass-api-${{ steps.sass-api-version.outputs.version }}
- run: git push --tag

deploy_sass_parser:
name: Deploy sass-parser
runs-on: ubuntu-latest
needs: [deploy_npm]

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
token: ${{ secrets.GH_TOKEN }}
# Set up .npmrc file to publish to npm
Expand Down Expand Up @@ -162,7 +142,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: dart-lang/setup-dart@v1
- run: dart pub get

Expand All @@ -177,7 +157,7 @@ jobs:
runs-on: windows-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand All @@ -191,7 +171,7 @@ jobs:
needs: [deploy_npm]

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
repository: sass/sass-site
token: ${{ secrets.SASS_SITE_TOKEN }}
Expand Down Expand Up @@ -219,7 +199,7 @@ jobs:
needs: [deploy_github]

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
repository: sass/embedded-host-node
token: ${{ secrets.GH_TOKEN }}
Expand All @@ -236,7 +216,8 @@ jobs:
for dir in $(ls npm); do
cat "npm/$dir/package.json" |
jq --arg version ${{ steps.version.outputs.version }} '
.version |= $version
.version |= $version |
if (.dependencies.sass) then .dependencies.sass |= $version end
' > package.json.tmp &&
mv package.json.tmp "npm/$dir/package.json"
done
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test-vendor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
bootstrap_version: [4, 5]

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand All @@ -29,7 +29,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand All @@ -45,7 +45,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand All @@ -62,7 +62,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ./.github/util/initialize
with: {github-token: "${{ github.token }}"}

Expand Down
Loading
Loading