Skip to content

Commit 5d6ef5b

Browse files
weinbe58claude
andauthored
build(ci): add Windows x86_64 wheel to release pipeline (#345)
* build(ci): add Windows x86_64 wheel to release pipeline Add windows-latest / x86_64-pc-windows-msvc to the release workflow matrix so PyPI receives a Windows wheel alongside the existing Linux and macOS wheels. The stage_clib.sh script already handles Windows naming conventions (.exe, .dll, .lib) via the MINGW case, and patch_pyproject_data.py uses pathlib which is cross-platform. Closes #270 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * ci: add Rust toolchain setup and explicit bash shell for Windows builds Add dtolnay/rust-toolchain@stable and Swatinem/rust-cache@v2 steps to ensure cargo is available on all platforms (including Windows). Also add explicit shell: bash to the "Build CLI + C library" step so just can find a POSIX shell on Windows runners. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 6e045bc commit 5d6ef5b

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

.github/workflows/release.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,17 @@ jobs:
3030
target: x86_64-apple-darwin
3131
- os: macos-14
3232
target: aarch64-apple-darwin
33+
- os: windows-latest
34+
target: x86_64-pc-windows-msvc
3335
runs-on: ${{ matrix.os }}
3436

3537
steps:
3638
- uses: actions/checkout@v6
3739

40+
- uses: dtolnay/rust-toolchain@stable
41+
42+
- uses: Swatinem/rust-cache@v2
43+
3844
- name: Install uv
3945
uses: astral-sh/setup-uv@v7
4046

@@ -50,6 +56,7 @@ jobs:
5056
# runs, so they get included in the wheel via data = "dist-data".
5157
- name: Build CLI + C library
5258
if: ${{ !startsWith(matrix.target, 'aarch64-unknown-linux') }}
59+
shell: bash
5360
run: just build-cli stage-clib
5461

5562
# For Linux aarch64 cross-compilation, the CLI crate must be
@@ -74,6 +81,7 @@ jobs:
7481
run: uv run python scripts/patch_pyproject_data.py patch
7582

7683
# manylinux_2_28 targets glibc 2.28+ (AlmaLinux 8 / Ubuntu 20.04+).
84+
# Ignored on non-Linux platforms.
7785
- name: Build wheel
7886
uses: PyO3/maturin-action@v1
7987
with:

0 commit comments

Comments
 (0)