Skip to content

Commit 07c7f5f

Browse files
authored
Add windows arm64 wheelbuilding (#73)
* add arm64 builds & tests, run workflow * skip cp39 and cp310 on arm64 windows * add v5 python-setup for arm64 windows Updated Python setup action for Windows ARM architecture. * fix typo * print env variables for windows to debug * fix pwsh command before build * run SET * Specify architecture for MSVC developer prompt * add arch option to msvc action * remove SET * uncomment skipped sections, remove fork branch trigger * update CHANGELOG.rst Added version 1.0.1-dev section with a note about Windows arm64 wheel support.
1 parent 34c171b commit 07c7f5f

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

.github/workflows/ci.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@ jobs:
6969
python-version: "3.10"
7070
- os: "windows-latest"
7171
python-version: "3.10"
72+
- os: "windows-11-arm"
73+
python-version: "3.11"
7274
steps:
7375
- uses: actions/checkout@v4
7476
with:
@@ -83,6 +85,8 @@ jobs:
8385
- name: Set MSVC developer prompt
8486
uses: ilammy/msvc-dev-cmd@v1
8587
if: runner.os == 'Windows'
88+
with:
89+
arch: ${{ matrix.os == 'windows-11-arm' && 'arm64' || 'x64' }}
8690
- name: Install build dependencies (MacOS)
8791
run: brew install make
8892
if: runner.os == 'macOS'
@@ -170,6 +174,7 @@ jobs:
170174
- macos-13
171175
- macos-latest
172176
- windows-latest
177+
- windows-11-arm
173178
cibw_archs_linux: ["x86_64"]
174179
build_sdist: [true]
175180
include:
@@ -180,7 +185,11 @@ jobs:
180185
with:
181186
submodules: recursive
182187
fetch-depth: 0 # Fetch everything to get accurately versioned tag.
183-
- uses: actions/setup-python@v2 # Some issues where caused by higher versions.
188+
- if: ${{ matrix.os == 'windows-11-arm' }}
189+
uses: actions/setup-python@v5
190+
name: Install Python
191+
- if: ${{ matrix.os != 'windows-11-arm' }}
192+
uses: actions/setup-python@v2 # Some issues where caused by higher versions.
184193
name: Install Python
185194
- name: Install cibuildwheel twine build
186195
run: python -m pip install cibuildwheel twine build
@@ -190,6 +199,8 @@ jobs:
190199
- name: Set MSVC developer prompt
191200
uses: ilammy/msvc-dev-cmd@v1
192201
if: runner.os == 'Windows'
202+
with:
203+
arch: ${{ matrix.os == 'windows-11-arm' && 'arm64' || 'x64' }}
193204
- name: Set up QEMU
194205
if: ${{runner.os == 'Linux' && matrix.cibw_archs_linux == 'aarch64'}}
195206
uses: docker/setup-qemu-action@v3
@@ -199,7 +210,7 @@ jobs:
199210
run: cibuildwheel --output-dir dist
200211
env:
201212
# Skip 32 bit, macosx_arm64 causes issues on cpython 3.9
202-
CIBW_SKIP: "*-win32 *-manylinux_i686 cp38-macosx_arm64"
213+
CIBW_SKIP: "*-win32 *-manylinux_i686 cp38-macosx_arm64 cp39-win_arm64 cp310-win_arm64"
203214
CIBW_ARCHS_LINUX: ${{ matrix.cibw_archs_linux }}
204215
CIBW_TEST_REQUIRES: "pytest"
205216
# Simple tests that requires the project to be build correctly

CHANGELOG.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ Changelog
77
.. This document is user facing. Please word the changes in such a way
88
.. that users understand how the changes affect the new version.
99
10+
version 1.0.1-dev
11+
-----------------
12+
+ Wheels are now built for Windows arm64 architectures.
13+
1014
version 1.0.0
1115
-----------------
1216
The library has been running without issues as a dependency in quite a few

0 commit comments

Comments
 (0)