Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
24 changes: 12 additions & 12 deletions .github/workflows/aarch64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Build Crystal
uses: docker://jhass/crystal:1.0.0-alpine-build
with:
args: make crystal
- name: Upload Crystal executable
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: crystal-aarch64-musl
path: |
Expand All @@ -30,9 +30,9 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Download Crystal executable
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: crystal-aarch64-musl
- name: Mark downloaded compiler as executable
Expand All @@ -47,9 +47,9 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Download Crystal executable
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: crystal-aarch64-musl
- name: Mark downloaded compiler as executable
Expand All @@ -63,13 +63,13 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Build Crystal
uses: docker://jhass/crystal:1.0.0-build
with:
args: make crystal
- name: Upload Crystal executable
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: crystal-aarch64-gnu
path: |
Expand All @@ -81,9 +81,9 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Download Crystal executable
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: crystal-aarch64-gnu
- name: Mark downloaded compiler as executable
Expand All @@ -98,9 +98,9 @@ jobs:
if: github.repository == 'crystal-lang/crystal'
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Download Crystal executable
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: crystal-aarch64-gnu
- name: Mark downloaded compiler as executable
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/crystal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
image: crystallang/crystal

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: Install dependencies
run: shards install
- name: Run tests
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/interpreter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,48 +11,48 @@

jobs:
test-interpreter_spec:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.11.2-build
name: "Test Interpreter"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Test interpreter_spec
run: make interpreter_spec junit_output=.junit/interpreter_spec.xml

build-interpreter:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.11.2-build
name: Build interpreter
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Build compiler
run: make interpreter=1 release=1

- name: Upload compiler artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: crystal-interpreter
path: |
.build/crystal

test-interpreter-std_spec:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
needs: build-interpreter
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.11.2-build
strategy:
matrix:
part: [0, 1, 2, 3]
name: "Test std_spec with interpreter (${{ matrix.part }})"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Download compiler artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: crystal-interpreter
path: .build/
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
flags: "USE_PCRE1=true"
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Prepare System
run: bin/ci prepare_system
Expand All @@ -57,7 +57,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Prepare System
run: bin/ci prepare_system
Expand All @@ -75,7 +75,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Prepare System
run: bin/ci prepare_system
Expand All @@ -96,7 +96,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Prepare System
run: bin/ci prepare_system
Expand All @@ -115,7 +115,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Prepare System
run: bin/ci prepare_system
Expand All @@ -130,7 +130,7 @@ jobs:
run: echo $GITHUB_SHA > ./docs/revision.txt

- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@v6
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/llvm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,58 +11,58 @@

jobs:
llvm_test:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
include:
- llvm_version: "13.0.0"
llvm_ubuntu_version: "20.04"
- llvm_version: "14.0.0"
llvm_ubuntu_version: "18.04"
- llvm_version: "15.0.6"
llvm_ubuntu_version: "18.04"
- llvm_version: "16.0.3"
llvm_ubuntu_version: "22.04"
- llvm_version: "17.0.6"
llvm_ubuntu_version: "22.04"
name: "LLVM ${{ matrix.llvm_version }}"
steps:
- name: Checkout Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Cache LLVM
id: cache-llvm
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ./llvm
key: llvm-${{ matrix.llvm_version }}
if: "${{ !env.ACT }}"

- name: Install LLVM ${{ matrix.llvm_version }}
run: |
mkdir -p llvm
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ matrix.llvm_version }}/clang+llvm-${{ matrix.llvm_version }}-x86_64-linux-gnu-ubuntu-${{ matrix.llvm_ubuntu_version }}.tar.xz" > llvm.tar.xz
tar x --xz -C llvm --strip-components=1 -f llvm.tar.xz
if: steps.cache-llvm.outputs.cache-hit != 'true'

- name: Set up LLVM
run: |
sudo apt-get install -y libtinfo5
echo "PATH=$(pwd)/llvm/bin:$PATH" >> $GITHUB_ENV
echo "LLVM_CONFIG=$(pwd)/llvm/bin/llvm-config" >> $GITHUB_ENV
echo "LD_LIBRARY_PATH=$(pwd)/llvm/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV

- name: Install Crystal
uses: crystal-lang/install-crystal@v1
with:
crystal: "1.11.2"

- name: Build libllvm_ext
run: make -B deps

- name: Test compiler_spec
run: make compiler_spec junit_output=.junit/compiler_spec.xml

- name: Integration test
run: make crystal std_spec threads=1 junit_output=.junit/std_spec.xml

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
8 changes: 4 additions & 4 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,29 +12,29 @@

jobs:
x86_64-darwin-test:
runs-on: macos-13
runs-on: macos-15
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- uses: cachix/install-nix-action@v26
- uses: cachix/install-nix-action@v31
with:
install_url: https://releases.nixos.org/nix/nix-2.9.2/install
extra_nix_config: |
experimental-features = nix-command
- uses: cachix/cachix-action@v14
- uses: cachix/cachix-action@v17
with:
name: crystal-ci
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'

- name: Prepare System
run: bin/ci prepare_system

- name: Prepare Build
run: bin/ci prepare_build

- name: Test
run: bin/ci build

- name: Test interpreter
run: bin/ci with_build_env 'make interpreter_spec'

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
4 changes: 2 additions & 2 deletions .github/workflows/msbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ jobs:
runs-on: windows-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6

- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v1.0.2
uses: microsoft/setup-msbuild@v3

- name: Restore NuGet packages
working-directory: ${{env.GITHUB_WORKSPACE}}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/openssl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
container: crystallang/crystal:1.11.2-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Uninstall openssl 1.1
run: apk del openssl-dev
- name: Upgrade alpine-keys
Expand All @@ -30,7 +30,7 @@ jobs:
container: crystallang/crystal:1.11.2-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Uninstall openssl
run: apk del openssl-dev
- name: Install openssl 1.1.1
Expand All @@ -45,7 +45,7 @@ jobs:
container: crystallang/crystal:1.11.2-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Uninstall openssl
run: apk del openssl-dev openssl-libs-static
- name: Upgrade alpine-keys
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/regex-engine.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
container: crystallang/crystal:1.11.2-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Remove PCRE2
run: apk del pcre2-dev
- name: Assert using PCRE
Expand All @@ -28,7 +28,7 @@ jobs:
container: crystallang/crystal:1.11.2-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Assert using PCRE2
run: bin/crystal eval 'abort unless Regex::Engine == Regex::PCRE2'
- name: Assert select PCRE
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/smoke.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:

steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Build fresh compiler
run: bin/ci with_build_env make
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/wasm32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ jobs:
container: crystallang/crystal:1.11.2-build
steps:
- name: Download Crystal source
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Install wasmtime
uses: mwilliamson/setup-wasmtime-action@v2
uses: mwilliamson/setup-wasmtime-action@v3
with:
wasmtime-version: "2.0.0"

Expand Down
Loading
Loading