@@ -16,10 +16,10 @@ jobs:
1616 lint :
1717 runs-on : ubuntu-latest
1818 steps :
19- - uses : actions/checkout@v3
19+ - uses : actions/checkout@v6
2020
2121 - name : Set up Python
22- uses : actions/setup-python@v4
22+ uses : actions/setup-python@v6
2323 with :
2424 python-version : 3.9
2525
@@ -57,29 +57,13 @@ jobs:
5757 runs-on : ${{ matrix.os }}
5858 strategy :
5959 matrix :
60- os : [macos-latest, ubuntu-latest, windows-latest]
61- python-version : [36, 37, 38, 39, 310, 311, 312]
62- cibw-arch : [auto, aarch64]
63- exclude :
64- - os : macos-latest
65- cibw-arch : aarch64
66- - os : windows-latest
67- cibw-arch : aarch64
60+ os : [macos-latest, ubuntu-latest, windows-latest, ubuntu-24.04-arm]
6861
6962 steps :
70- - uses : actions/checkout@v3
71-
72- - name : Set up QEMU
73- if : runner.os == 'Linux'
74- uses : docker/setup-qemu-action@v3
75- with :
76- platforms : all
63+ - uses : actions/checkout@v6
7764
7865 - name : Build wheels
79- uses : pypa/cibuildwheel@v2.16.2
80- env :
81- CIBW_BUILD : cp${{matrix.python-version}}-*
82- CIBW_ARCHS_LINUX : ${{ matrix.cibw-arch }}
66+ uses : pypa/cibuildwheel@v3.4.1
8367
8468 - name : Build sdist
8569 run : |
@@ -93,42 +77,38 @@ jobs:
9377 if : runner.os == 'Linux'
9478
9579 - name : Upload Binaries
96- uses : actions/upload-artifact@v3
80+ uses : actions/upload-artifact@v7
9781 with :
98- name : wheels
99- path : wheelhouse
82+ name : wheels-${{ matrix.os }}
83+ path : ./ wheelhouse/*.whl
10084
10185 test-wheels :
10286 needs : [build-wheels]
10387 runs-on : ${{ matrix.os }}
10488 strategy :
10589 matrix :
106- python-version : [3.7, 3. 8, 3.9, '3.10', '3.11', '3.12']
107- os : [macos-latest, ubuntu-latest, windows-latest]
90+ python-version : [3.8, 3.9, '3.10', '3.11', '3.12', '3.13', '3.14 ']
91+ os : [macos-latest, ubuntu-latest, windows-latest, ubuntu-24.04-arm ]
10892
10993 steps :
110- - uses : actions/checkout@v3
94+ - uses : actions/checkout@v6
11195 with :
11296 path : implicit_source
113- - uses : actions/download-artifact@v3
97+ - uses : actions/download-artifact@v8
11498 with :
115- name : wheels
99+ name : wheels-${{ matrix.os }}
116100 - name : Set up Python ${{ matrix.python-version }}
117- uses : actions/setup-python@v4
101+ uses : actions/setup-python@v6
118102 with :
119103 python-version : ${{ matrix.python-version }}
120104 - name : Install dependencies
121105 run : |
122106 python -m pip install --upgrade pip
123107 pip install pytest
124108 pip install -r implicit_source/requirements.txt
125- - name : Install h5py
126- run : pip install h5py
127-
128109 - name : Install ANN Libraries
129110 run : pip install annoy nmslib
130- if : ${{ matrix.python-version != '3.12' && matrix.python-version != '3.11' && runner.os == 'Linux' }}
131-
111+ if : ${{ matrix.python-version != '3.14' && runner.os == 'Linux' }}
132112 - name : Install wheel
133113 run : |
134114 pip install --force-reinstall --no-deps --no-index --find-links . implicit
@@ -142,15 +122,16 @@ jobs:
142122 if : " startsWith(github.ref, 'refs/tags/')"
143123 needs : [test-wheels]
144124 steps :
145- - uses : actions/download-artifact@v3
125+ - uses : actions/download-artifact@v8
146126 with :
147- name : wheels
127+ pattern : wheels-*
128+ merge-multiple : true
148129 - name : Create GitHub Release
149130 uses : fnkr/github-action-ghr@v1.3
150131 env :
151132 GHR_PATH : .
152133 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
153- - uses : actions/setup-python@v2
134+ - uses : actions/setup-python@v6
154135 with :
155136 python-version : 3.9
156137 - name : Push to PyPi
0 commit comments