11name : CI
2-
2+ # Run on master, tags, or any pull request
33on :
4+ schedule :
5+ - cron : ' 0 2 * * *' # Daily at 2 AM UTC (8 PM CST)
46 push :
57 branches : [master]
68 tags : ["*"]
79 pull_request :
8-
10+ concurrency :
11+ # Skip intermediate builds: always.
12+ # Cancel intermediate builds: only if it is a pull request build.
13+ group : ${{ github.workflow }}-${{ github.ref }}
14+ cancel-in-progress : ${{ startsWith(github.ref, 'refs/pull/') }}
915jobs :
1016 test :
1117 name : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}
@@ -14,36 +20,56 @@ jobs:
1420 fail-fast : false
1521 matrix :
1622 version :
17- - " 1.6"
18- - " 1"
19- - " nightly"
23+ - " 1.6" # earliest supported release
24+ - " 1" # Latest Release
25+ - " nightly" # test on nightly since we use a lot of internals that might break
2026 os :
2127 - ubuntu-latest
2228 - macOS-latest
2329 - windows-latest
2430 arch :
2531 - x64
32+ - x86
33+ exclude :
34+ # Test 32-bit only on Linux
35+ - os : macOS-latest
36+ arch : x86
37+ - os : windows-latest
38+ arch : x86
39+ include :
40+ # Add specific version used to run the reference tests.
41+ # Must be kept in sync with version check in `test/runtests.jl`,
42+ # and with the branch protection rules on the repository which
43+ # require this specific job to pass on all PRs
44+ # (see Settings > Branches > Branch protection rules).
45+ - os : ubuntu-latest
46+ version : 1.10.6
47+ arch : x64
2648 steps :
27- - uses : actions/checkout@v2
28- - uses : julia-actions/setup-julia@v1
49+ - uses : actions/checkout@v4
50+ - uses : julia-actions/setup-julia@v2
2951 with :
3052 version : ${{ matrix.version }}
3153 arch : ${{ matrix.arch }}
32- - name : Cache artifacts
33- uses : actions/cache@v1
54+ - uses : actions/cache@v4
3455 env :
3556 cache-name : cache-artifacts
3657 with :
3758 path : ~/.julia/artifacts
38- key : ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
59+ key : ${{ runner.os }}-${{ matrix.arch }}- test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
3960 restore-keys : |
40- ${{ runner.os }}-test-${{ env.cache-name }}-
41- ${{ runner.os }}-test-
61+ ${{ runner.os }}-${{ matrix.arch }}-test-${{ env.cache-name }}-
62+ ${{ runner.os }}-${{ matrix.arch }}-test-
63+ ${{ runner.os }}-${{ matrix.arch }}-
4264 ${{ runner.os }}-
4365 - uses : julia-actions/julia-buildpkg@latest
66+ - run : |
67+ git config --global user.name Tester
68+ git config --global user.email [email protected] 4469 - uses : julia-actions/julia-runtest@latest
4570 - uses : julia-actions/julia-processcoverage@v1
46- - uses : codecov/codecov-action@v1
71+ - uses : codecov/codecov-action@v5
4772 with :
48- file : ./lcov.info
49- flags : unittests
73+ files : lcov.info
74+ token : ${{ secrets.CODECOV_TOKEN }}
75+ fail_ci_if_error : false
0 commit comments