forked from sass/dart-sass
-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into feature.shared-resources
* main: Update the pubspec and changelog for sass/embedded-host-node#266 (sass#2158) Add wait time before update website (sass#2153) Make meta.apply() an AsyncBuiltInCallable (sass#2152) Upload releases for musl-libc and android (sass#2149) Escape unprintable 0x7F (delete control character) (sass#2144) Bump dartdoc from 7.0.2 to 8.0.2 (sass#2146)
- Loading branch information
Showing
17 changed files
with
952 additions
and
645 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
name: Build for android | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
|
||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- arch: x64 | ||
lib: lib64 | ||
platform: linux/amd64 | ||
- arch: ia32 | ||
lib: lib | ||
platform: linux/amd64 | ||
- arch: arm64 | ||
lib: lib64 | ||
platform: linux/arm64 | ||
- arch: arm | ||
lib: lib | ||
platform: linux/arm64 | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v3 | ||
with: | ||
image: tonistiigi/binfmt:master # need qemu >= 7.0.0 | ||
|
||
- name: Compile Protobuf | ||
run: | | ||
docker run --rm -i \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
docker.io/library/dart <<'EOF' | ||
set -e | ||
curl -fsSL -H "Authorization: Bearer ${{ github.token }}" "https://github.com/bufbuild/buf/releases/latest/download/buf-$(uname -s)-$(uname -m).tar.gz" | tar -xzC /usr/local --strip-components 1 | ||
dart pub get | ||
dart run grinder protobuf | ||
EOF | ||
- name: Build | ||
run: | | ||
docker run --rm -i \ | ||
--platform ${{ matrix.platform }} \ | ||
--privileged \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
ghcr.io/dart-android/dart <<'EOF' | ||
set -e | ||
export DART_SDK=/system/${{ matrix.lib }}/dart | ||
export PATH=$DART_SDK/bin:$PATH | ||
dart pub get | ||
dart run grinder pkg-standalone-android-${{ matrix.arch }} | ||
EOF | ||
- name: Upload Artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: build-android-${{ matrix.arch }} | ||
path: build/*.tar.gz | ||
if-no-files-found: error | ||
compression-level: 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
name: Build for linux-musl | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
|
||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- arch: x64 | ||
platform: linux/amd64 | ||
- arch: ia32 | ||
platform: linux/386 | ||
- arch: arm64 | ||
platform: linux/arm64 | ||
- arch: arm | ||
platform: linux/arm/v7 | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v3 | ||
|
||
- name: Compile Protobuf | ||
run: | | ||
docker run --rm -i \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
docker.io/library/dart <<'EOF' | ||
set -e | ||
curl -fsSL -H "Authorization: Bearer ${{ github.token }}" "https://github.com/bufbuild/buf/releases/latest/download/buf-$(uname -s)-$(uname -m).tar.gz" | tar -xzC /usr/local --strip-components 1 | ||
dart pub get | ||
dart run grinder protobuf | ||
EOF | ||
# https://gitlab.com/qemu-project/qemu/-/issues/1729 | ||
# | ||
# There is a bug in qemu's mremap causing pthread_getattr_np in musl to stuck in a loop on arm. | ||
# Unless qemu fixes the bug or we get a real linux-arm runner, we cannot build aot-snapshot | ||
# for arm on CI. So, we create a kernel snapshot for arm build in amd64 container instead. | ||
- name: Build | ||
run: | | ||
docker run --rm -i \ | ||
--platform ${{ matrix.arch == 'arm' && 'linux/amd64' || matrix.platform }} \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
ghcr.io/dart-musl/dart <<'EOF' | ||
set -e | ||
dart pub get | ||
dart run grinder pkg-standalone-linux-${{ matrix.arch }} | ||
# Rename the artifact from -linux- to -linux-musl- to avoid conflict with glibc builds. | ||
find build -name '*.tar.gz' -print0 | xargs -0 -n 1 -- sh -xc 'mv "$1" "$(echo "$1" | sed -e "s/linux/linux-musl/")"' -- | ||
EOF | ||
# The kernel snapshot created for arm in the previous step is bundling a glibc based dart runtime | ||
# due to how cli_pkg downloads the sdk for building non-native platforms. Therefore we need to | ||
# replace it with musl-libc based dart runtime to create a working linux-musl-arm package. | ||
- name: Fix Dart Runtime | ||
if: matrix.arch == 'arm' | ||
run: | | ||
docker run --rm -i \ | ||
--platform ${{ matrix.platform }} \ | ||
--volume $PWD:$PWD \ | ||
--workdir $PWD \ | ||
ghcr.io/dart-musl/dart <<'EOF' | ||
set -e | ||
apk add --no-cache tar | ||
cd build | ||
DART_RUNTIME=$(tar -tzf *.tar.gz --wildcards "*/src/dart") | ||
tar -xzf *.tar.gz | ||
cp $DART_SDK/bin/dart $DART_RUNTIME | ||
tar -czf *.tar.gz "$(dirname "$(dirname "$DART_RUNTIME")")" | ||
EOF | ||
- name: Upload Artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: build-linux-musl-${{ matrix.arch }} | ||
path: build/*.tar.gz | ||
if-no-files-found: error | ||
compression-level: 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
name: Build for linux | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
|
||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- arch: x64 | ||
platform: linux/amd64 | ||
- arch: ia32 | ||
platform: linux/amd64 | ||
- arch: arm | ||
platform: linux/arm/v7 | ||
- arch: arm64 | ||
platform: linux/arm64 | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v3 | ||
|
||
- name: Compile Protobuf | ||
run: | | ||
docker run --rm -i \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
docker.io/library/dart <<'EOF' | ||
set -e | ||
curl -fsSL -H "Authorization: Bearer ${{ github.token }}" "https://github.com/bufbuild/buf/releases/latest/download/buf-$(uname -s)-$(uname -m).tar.gz" | tar -xzC /usr/local --strip-components 1 | ||
dart pub get | ||
dart run grinder protobuf | ||
EOF | ||
- name: Build | ||
run: | | ||
docker run --rm -i \ | ||
--platform ${{ matrix.platform }} \ | ||
--volume "$PWD:$PWD" \ | ||
--workdir "$PWD" \ | ||
docker.io/library/dart:latest <<'EOF' | ||
set -e | ||
dart pub get | ||
dart run grinder pkg-standalone-linux-${{ matrix.arch }} | ||
EOF | ||
- name: Upload Artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: build-linux-${{ matrix.arch }} | ||
path: build/*.tar.gz | ||
if-no-files-found: error | ||
compression-level: 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
name: Build for macos | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
|
||
runs-on: ${{ matrix.runner }} | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- arch: x64 | ||
runner: macos-latest | ||
# https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/ | ||
- arch: arm64 | ||
runner: macos-latest-xlarge | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: ./.github/util/initialize | ||
with: {github-token: "${{ github.token }}"} | ||
|
||
- name: Build | ||
run: dart run grinder pkg-standalone-macos-${{ matrix.arch }} | ||
|
||
- name: Upload Artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: build-macos-${{ matrix.arch }} | ||
path: build/*.tar.gz | ||
if-no-files-found: error | ||
compression-level: 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
name: Build for windows | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
|
||
runs-on: ${{ matrix.runner }} | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- arch: x64 | ||
runner: windows-latest | ||
- arch: ia32 | ||
runner: windows-latest | ||
# The support of windows-arm64 dart-sdk is in beta. | ||
# TODO: Enable this once windows-arm64 support is stable. | ||
# - arch: arm64 | ||
# runner: windows-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: ./.github/util/initialize | ||
with: {github-token: "${{ github.token }}"} | ||
|
||
- name: Build | ||
run: dart run grinder pkg-standalone-windows-${{ matrix.arch }} | ||
|
||
- name: Upload Artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: build-windows-${{ matrix.arch }} | ||
path: build/*.zip | ||
if-no-files-found: error | ||
compression-level: 0 |
Oops, something went wrong.