Skip to content

Commit dbf2316

Browse files
authored
Merge pull request #1351 from ngoldbaum/3.14t
Add 3.14t wheel builds by skipping PyLIEF install
2 parents 6cb7d34 + c816eb0 commit dbf2316

File tree

4 files changed

+40
-21
lines changed

4 files changed

+40
-21
lines changed

.github/workflows/llvmlite_linux-64_wheel_builder.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
shell: bash -elx {0}
3939
strategy:
4040
matrix:
41-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
41+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
4242
fail-fast: false
4343

4444
steps:
@@ -66,6 +66,7 @@ jobs:
6666
"3.12") echo "PYTHON_PATH=cp312-cp312" >> "$GITHUB_ENV" ;;
6767
"3.13") echo "PYTHON_PATH=cp313-cp313" >> "$GITHUB_ENV" ;;
6868
"3.14") echo "PYTHON_PATH=cp314-cp314" >> "$GITHUB_ENV" ;;
69+
"3.14t") echo "PYTHON_PATH=cp314-cp314t" >> "$GITHUB_ENV" ;;
6970
*) echo "Invalid Python version" && exit 1 ;;
7071
esac
7172
@@ -120,7 +121,7 @@ jobs:
120121
shell: bash -elx {0}
121122
strategy:
122123
matrix:
123-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
124+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
124125
fail-fast: false
125126
steps:
126127
- name: Clone repository
@@ -161,7 +162,7 @@ jobs:
161162
shell: bash -elx {0}
162163
strategy:
163164
matrix:
164-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
165+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
165166
fail-fast: false
166167

167168
steps:
@@ -201,7 +202,10 @@ jobs:
201202
fi
202203
203204
echo "Installing lief for distribution testing"
204-
"${PYTHON_PATH}" -m pip install -v lief
205+
# TODO: make unconditional when PyLIEF ships free-threaded wheels
206+
if [[ "${{ matrix.python-version }}" != *t ]]; then
207+
"${PYTHON_PATH}" -m pip install -v lief
208+
fi
205209
206210
echo "Using wheel: $whl"
207211
"${PYTHON_PATH}" -m pip install -v "$whl"
@@ -219,7 +223,7 @@ jobs:
219223
shell: bash -elx {0}
220224
strategy:
221225
matrix:
222-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
226+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
223227
fail-fast: false
224228
steps:
225229
- name: Setup Miniconda

.github/workflows/llvmlite_linux-aarch64_wheel_builder.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
shell: bash -elx {0}
3939
strategy:
4040
matrix:
41-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
41+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
4242
fail-fast: false
4343

4444
steps:
@@ -66,6 +66,7 @@ jobs:
6666
"3.12") echo "PYTHON_PATH=cp312-cp312" >> "$GITHUB_ENV" ;;
6767
"3.13") echo "PYTHON_PATH=cp313-cp313" >> "$GITHUB_ENV" ;;
6868
"3.14") echo "PYTHON_PATH=cp314-cp314" >> "$GITHUB_ENV" ;;
69+
"3.14t") echo "PYTHON_PATH=cp314-cp314t" >> "$GITHUB_ENV" ;;
6970
*) echo "Invalid Python version" && exit 1 ;;
7071
esac
7172
@@ -117,7 +118,7 @@ jobs:
117118
shell: bash -elx {0}
118119
strategy:
119120
matrix:
120-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
121+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
121122
fail-fast: false
122123
steps:
123124
- name: Clone repository
@@ -158,7 +159,7 @@ jobs:
158159
shell: bash -elx {0}
159160
strategy:
160161
matrix:
161-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
162+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
162163
fail-fast: false
163164

164165
steps:
@@ -198,7 +199,10 @@ jobs:
198199
fi
199200
200201
echo "Installing lief for distribution testing"
201-
"${PYTHON_PATH}" -m pip install -v lief
202+
# TODO: make unconditional when PyLIEF ships free-threaded wheels
203+
if [[ "${{ matrix.python-version }}" != *t ]]; then
204+
"${PYTHON_PATH}" -m pip install -v lief
205+
fi
202206
203207
echo "Using wheel: $whl"
204208
"${PYTHON_PATH}" -m pip install -v "$whl"
@@ -216,7 +220,7 @@ jobs:
216220
shell: bash -elx {0}
217221
strategy:
218222
matrix:
219-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
223+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
220224
fail-fast: false
221225
steps:
222226
- name: Setup Miniconda

.github/workflows/llvmlite_osx-arm64_wheel_builder.yml

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
shell: bash -elx {0}
3838
strategy:
3939
matrix:
40-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
40+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
4141
fail-fast: false
4242

4343
steps:
@@ -49,7 +49,6 @@ jobs:
4949
- name: Setup Miniconda
5050
uses: conda-incubator/setup-miniconda@835234971496cad1653abb28a638a281cf32541f # v3.2.0
5151
with:
52-
python-version: ${{ matrix.python-version }}
5352
auto-update-conda: true
5453
auto-activate-base: true
5554

@@ -65,6 +64,12 @@ jobs:
6564

6665
- name: Install build dependencies
6766
run: |
67+
if [[ "${{ matrix.python-version }}" == *t ]]; then
68+
PY_VER=${{ matrix.python-version }}
69+
conda install -c conda-forge python-freethreading="${PY_VER%t}"
70+
else
71+
conda install -c defaults python="${{ matrix.python-version }}"
72+
fi
6873
if [ "${{ inputs.llvmdev_run_id }}" != "" ]; then
6974
CHAN="file://${{ github.workspace }}/llvmdev_conda_packages"
7075
conda install -c defaults -c "$CHAN" "llvmdev=${{ env.FALLBACK_LLVMDEV_VERSION }}"
@@ -125,7 +130,7 @@ jobs:
125130
shell: bash -elx {0}
126131
strategy:
127132
matrix:
128-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
133+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
129134
fail-fast: false
130135
steps:
131136
- name: Clone repository
@@ -161,7 +166,7 @@ jobs:
161166
shell: bash -elx {0}
162167
strategy:
163168
matrix:
164-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
169+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
165170
fail-fast: false
166171

167172
steps:
@@ -185,7 +190,10 @@ jobs:
185190
"$PYTHON_PATH" -m venv .venv && source .venv/bin/activate
186191
python -m pip install --upgrade pip wheel
187192
echo "Installing lief for distribution testing"
188-
python -m pip install -v lief
193+
# TODO: make unconditional when PyLIEF ships free-threaded wheels
194+
if [[ "${{ matrix.python-version }}" != *t ]]; then
195+
python -m pip install -v lief
196+
fi
189197
cd dist && python -m pip install -v ./*.whl
190198
DYLIB_PATH=$(find "$(python -c "import llvmlite; print(llvmlite.__path__[0])")" -name "libllvmlite.dylib")
191199
echo "Found dylib at: $DYLIB_PATH" && otool -L "$DYLIB_PATH"
@@ -201,7 +209,7 @@ jobs:
201209
shell: bash -elx {0}
202210
strategy:
203211
matrix:
204-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
212+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
205213
fail-fast: false
206214
steps:
207215
- name: Setup Miniconda

.github/workflows/llvmlite_win-64_wheel_builder.yml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
shell: bash -elx {0}
3939
strategy:
4040
matrix:
41-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
41+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
4242
fail-fast: false
4343

4444
steps:
@@ -114,7 +114,7 @@ jobs:
114114
shell: bash -elx {0}
115115
strategy:
116116
matrix:
117-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
117+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
118118
fail-fast: false
119119
steps:
120120
- name: Clone repository
@@ -154,7 +154,7 @@ jobs:
154154
shell: bash -elx {0}
155155
strategy:
156156
matrix:
157-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
157+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
158158
fail-fast: false
159159

160160
steps:
@@ -178,7 +178,10 @@ jobs:
178178
python -m pip install --upgrade pip wheel
179179
180180
echo "Installing lief for distribution testing"
181-
python -m pip install -v lief
181+
# TODO: make unconditional when PyLIEF ships free-threaded wheels
182+
if [[ "${{ matrix.python-version }}" != *t ]]; then
183+
python -m pip install -v lief
184+
fi
182185
183186
# Install wheel and run tests
184187
cd dist
@@ -200,7 +203,7 @@ jobs:
200203
shell: bash -elx {0}
201204
strategy:
202205
matrix:
203-
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
206+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
204207
fail-fast: false
205208
steps:
206209
- name: Setup Miniconda

0 commit comments

Comments
 (0)