|
12 | 12 | pull_request: |
13 | 13 | workflow_dispatch: |
14 | 14 |
|
| 15 | +permissions: |
| 16 | + contents: read |
| 17 | + |
15 | 18 | jobs: |
16 | 19 | test: |
17 | 20 | runs-on: ${{ matrix.os }} |
18 | 21 | timeout-minutes: 60 |
19 | 22 | strategy: |
20 | 23 | fail-fast: false |
21 | 24 | matrix: |
22 | | - # include '1.6' here to test info message about lts tag existing |
23 | | - julia-version: ['1.0.5', '1.2', '^1.5.0-beta1', '1', '1.6', 'lts', 'pre'] |
24 | | - julia-arch: [x64, x86] |
25 | | - os: [ubuntu-latest, macOS-latest, windows-latest] |
| 25 | + julia-version: |
| 26 | + - '1.0.5' |
| 27 | + - '1.2' |
| 28 | + - '^1.5.0-beta1' |
| 29 | + - '1' |
| 30 | + - '1.6' |
| 31 | + - '1.10' # include '1.10' here to test info message about lts tag existing |
| 32 | + - 'lts' |
| 33 | + - 'pre' |
| 34 | + julia-wordsize: |
| 35 | + - 64 |
| 36 | + - 32 |
| 37 | + os: |
| 38 | + - ubuntu-latest |
| 39 | + - windows-latest |
| 40 | + - macos-15-intel # Intel |
| 41 | + - macos-latest # Apple Silicon |
26 | 42 | # 32-bit Julia binaries are not available on macOS |
27 | 43 | exclude: |
28 | | - - os: macOS-latest |
29 | | - julia-arch: x86 |
30 | | - include: |
31 | | - - os: macOS-latest |
32 | | - julia-arch: aarch64 |
33 | | - julia-version: 'lts' |
34 | | - - os: macOS-latest |
35 | | - julia-arch: aarch64 |
36 | | - julia-version: '1' |
37 | | - |
| 44 | + - os: macos-15-intel # Intel |
| 45 | + julia-wordsize: 32 |
| 46 | + - os: macos-latest # Apple Silicon |
| 47 | + julia-wordsize: 32 |
| 48 | + # Julia versions prior to 1.8 do not have native builds for Apple Silicon |
| 49 | + - os: macos-latest # Apple Silicon |
| 50 | + julia-version: '1.0.5' |
| 51 | + - os: macos-latest # Apple Silicon |
| 52 | + julia-version: '1.2' |
| 53 | + - os: macos-latest # Apple Silicon |
| 54 | + julia-version: '1.6' |
38 | 55 | steps: |
39 | 56 | - uses: actions/checkout@v6.0.2 |
| 57 | + with: |
| 58 | + persist-credentials: false |
40 | 59 |
|
41 | 60 | - uses: actions/setup-node@v6 |
42 | 61 | if: ${{ ! startsWith(github.ref, 'refs/heads/releases') }} |
|
55 | 74 | uses: ./ |
56 | 75 | with: |
57 | 76 | version: ${{ matrix.julia-version }} |
58 | | - arch: ${{ matrix.julia-arch }} |
| 77 | + # If `julia-wordsize` is 32, then we set `arch` to `x86`, because we know that |
| 78 | + # Tier 1 32-bit builds of Julia are only available for x86. |
| 79 | + # |
| 80 | + # If `julia-wordsize` is 64, then we set `arch` to `${{ runner.arch }}`, which |
| 81 | + # GitHub will automatically expand to the correct value (`x86_64` or `aarch64`) |
| 82 | + # based on the architecture of the underlying GitHub Runner (virtual machine). |
| 83 | + arch: ${{ matrix.julia-wordsize == '32' && 'x86' || runner.arch }} |
| 84 | + |
59 | 85 | - run: julia --version |
60 | 86 | - run: julia --compile=min -O0 -e 'import InteractiveUtils; InteractiveUtils.versioninfo()' |
61 | 87 | - name: "Check that the correct julia is used and that archive mtimes are maintained" |
|
0 commit comments