@@ -28,7 +28,7 @@ concurrency:
2828jobs :
2929 interpreter :
3030 name : Interpreter (Debug)
31- runs-on : ubuntu-latest
31+ runs-on : ubuntu-22.04
3232 timeout-minutes : 90
3333 steps :
3434 - uses : actions/checkout@v4
6161 - true
6262 - false
6363 llvm :
64- - 18
64+ - 19
6565 include :
6666 - target : i686-pc-windows-msvc/msvc
6767 architecture : Win32
@@ -85,19 +85,19 @@ jobs:
8585 compiler : clang
8686 - target : x86_64-unknown-linux-gnu/gcc
8787 architecture : x86_64
88- runner : ubuntu-latest
88+ runner : ubuntu-22.04
8989 compiler : gcc
9090 - target : x86_64-unknown-linux-gnu/clang
9191 architecture : x86_64
92- runner : ubuntu-latest
92+ runner : ubuntu-22.04
9393 compiler : clang
9494 - target : aarch64-unknown-linux-gnu/gcc
9595 architecture : aarch64
96- runner : ubuntu-latest
96+ runner : ubuntu-22.04
9797 compiler : gcc
9898 - target : aarch64-unknown-linux-gnu/clang
9999 architecture : aarch64
100- runner : ubuntu-latest
100+ runner : ubuntu-22.04
101101 compiler : clang
102102 env :
103103 CC : ${{ matrix.compiler }}
@@ -121,10 +121,15 @@ jobs:
121121 choco install llvm --allow-downgrade --no-progress --version ${{ matrix.llvm }}.1.0
122122 ./PCbuild/build.bat --experimental-jit ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }}
123123
124+ # The `find` line is required as a result of https://github.com/actions/runner-images/issues/9966.
125+ # This is a bug in the macOS runner image where the pre-installed Python is installed in the same
126+ # directory as the Homebrew Python, which causes the build to fail for macos-13. This line removes
127+ # the symlink to the pre-installed Python so that the Homebrew Python is used instead.
124128 - name : Native macOS
125129 if : runner.os == 'macOS'
126130 run : |
127131 brew update
132+ find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete
128133 brew install llvm@${{ matrix.llvm }}
129134 SDKROOT="$(xcrun --show-sdk-path)" \
130135 ./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--enable-optimizations --with-lto' }}
@@ -164,16 +169,20 @@ jobs:
164169 jit-with-disabled-gil :
165170 name : Free-Threaded (Debug)
166171 needs : interpreter
167- runs-on : ubuntu-latest
172+ runs-on : ubuntu-22.04
173+ strategy :
174+ matrix :
175+ llvm :
176+ - 19
168177 steps :
169178 - uses : actions/checkout@v4
170179 - uses : actions/setup-python@v5
171180 with :
172181 python-version : ' 3.11'
173182 - name : Build with JIT enabled and GIL disabled
174183 run : |
175- sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh 18
176- export PATH="$(llvm-config-18 --bindir):$PATH"
184+ sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
185+ export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
177186 ./configure --enable-experimental-jit --with-pydebug --disable-gil
178187 make all --jobs 4
179188 - name : Run tests
0 commit comments