@@ -30,11 +30,20 @@ jobs:
3030 - " 3.14"
3131 - " 3.14t"
3232
33- # Recall the macOS builds upload built wheels so all supported versions
33+ # Recall the macOS and windows builds upload built wheels so all supported versions
3434 # need to run on mac.
3535 os :
3636 - ubuntu-latest
3737 - macos-latest
38+ - windows-latest
39+ - windows-11-arm
40+ exclude :
41+ # 3.10 not available for windows arm
42+ - os : windows-11-arm
43+ python-version : " 3.10"
44+ # 3.14t not available for windows arm
45+ - os : windows-11-arm
46+ python-version : " 3.14t"
3847 steps :
3948 - uses : actions/checkout@v6
4049 - name : Set up Python
@@ -90,13 +99,14 @@ jobs:
9099 ARCHFLAGS : " -arch x86_64 -arch arm64"
91100
92101 - name : Check greenlet build
102+ if : ${{ ! startsWith(runner.os, 'Windows') }}
93103 run : |
94104 ls -l dist
95105 twine check dist/*
96106 - name : Store greenlet wheel
97107 uses : actions/upload-artifact@v5
98108 with :
99- name : greenlet-${{ runner .os }}-${{ matrix.python-version }}.whl
109+ name : greenlet-${{ matrix .os }}-${{ matrix.python-version }}.whl
100110 path : dist/*whl
101111 - name : Test
102112 run : |
@@ -132,7 +142,7 @@ jobs:
132142 # We cannot 'uses: pypa/gh-action-pypi-publish@v1.4.1' because
133143 # that's apparently a container action, and those don't run on
134144 # the Mac.
135- if : github.event_name == 'push' && startsWith(github.ref, 'refs/tags') && startsWith(runner.os, 'Mac')
145+ if : ${{ github.event_name == 'push' && startsWith(github.ref, 'refs/tags') && ( startsWith(runner.os, 'Mac') || startsWith(runner.os, 'Windows')) }}
136146 env :
137147 TWINE_PASSWORD : ${{ secrets.TWINE_PASSWORD }}
138148 run : |
0 commit comments