Skip to content

Commit 75d20a7

Browse files
committed
Update workflow pins
Mandated changes to how artifacts are uploaded and downloaded. Added osx-arm64 builds. Also removed python3.7 builds and extended to python3.12.
1 parent aaa9e01 commit 75d20a7

File tree

2 files changed

+35
-34
lines changed

2 files changed

+35
-34
lines changed

.github/workflows/release.yml

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -34,36 +34,42 @@ jobs:
3434
name: Build
3535
runs-on: ${{ matrix.os }}
3636
strategy:
37+
fail-fast: false
3738
matrix:
3839
include:
40+
- { os: ubuntu-latest, python: '3.12', arch: x64, conda: true}
3941
- { os: ubuntu-latest, python: '3.11', arch: x64, conda: true}
4042
- { os: ubuntu-latest, python: '3.10', arch: x64, conda: true }
4143
- { os: ubuntu-latest, python: '3.9', arch: x64, conda: true }
4244
- { os: ubuntu-latest, python: '3.8', arch: x64, conda: true }
43-
- { os: ubuntu-latest, python: '3.7', arch: x64, conda: true }
4445

45-
- { os: macos-11, python: '3.11', arch: x64, conda: true }
46-
- { os: macos-11, python: '3.10', arch: x64, conda: true }
47-
- { os: macos-11, python: '3.9', arch: x64, conda: true }
48-
- { os: macos-11, python: '3.8', arch: x64, conda: true }
49-
- { os: macos-11, python: '3.7', arch: x64, conda: true }
46+
- { os: macos-13, python: '3.12', arch: x64, conda: true }
47+
- { os: macos-13, python: '3.11', arch: x64, conda: true }
48+
- { os: macos-13, python: '3.10', arch: x64, conda: true }
49+
- { os: macos-13, python: '3.9', arch: x64, conda: true }
50+
- { os: macos-13, python: '3.8', arch: x64, conda: true }
5051

52+
- { os: macos-latest, python: '3.12', arch: arm64, conda: true }
53+
- { os: macos-latest, python: '3.11', arch: arm64, conda: true }
54+
- { os: macos-latest, python: '3.10', arch: arm64, conda: true }
55+
- { os: macos-latest, python: '3.9', arch: arm64, conda: true }
56+
57+
- { os: windows-latest, python: '3.12', arch: x64, conda: true }
5158
- { os: windows-latest, python: '3.11', arch: x64, conda: true }
5259
- { os: windows-latest, python: '3.10', arch: x64, conda: true }
5360
- { os: windows-latest, python: '3.9', arch: x64, conda: true }
5461
- { os: windows-latest, python: '3.8', arch: x64, conda: true }
55-
- { os: windows-latest, python: '3.7', arch: x64, conda: true }
5662

63+
- { os: windows-latest, python: '3.12', arch: x86, conda: false } # conda not yet available
5764
- { os: windows-latest, python: '3.11', arch: x86, conda: false } # conda not yet available
5865
- { os: windows-latest, python: '3.10', arch: x86, conda: true }
5966
- { os: windows-latest, python: '3.9', arch: x86, conda: true }
6067
- { os: windows-latest, python: '3.8', arch: x86, conda: true }
61-
- { os: windows-latest, python: '3.7', arch: x86, conda: true }
6268

6369
if: github.repository == 'labscript-suite/labscript-c-extensions' && (github.event_name != 'create' || github.event.ref_type != 'branch')
6470
steps:
6571
- name: Checkout
66-
uses: actions/checkout@v3
72+
uses: actions/checkout@v4
6773
with:
6874
fetch-depth: 0
6975

@@ -72,7 +78,7 @@ jobs:
7278
run: git tag -d $(git tag --points-at HEAD)
7379

7480
- name: Install Python
75-
uses: actions/setup-python@v4
81+
uses: actions/setup-python@v5
7682
with:
7783
python-version: ${{ matrix.python }}
7884
architecture: ${{ matrix.arch }}
@@ -92,9 +98,9 @@ jobs:
9298
9399
- name: Upload Artifact
94100
if: strategy.job-index == 0 || (env.PURE == 'false' && runner.os != 'Linux')
95-
uses: actions/upload-artifact@v3
101+
uses: actions/upload-artifact@v4
96102
with:
97-
name: dist
103+
name: dist-${{ matrix.os }}_${{ matrix.arch }}-py${{ matrix.python}}
98104
path: ./dist
99105

100106
- name: Set Variables for Conda Build
@@ -110,19 +116,13 @@ jobs:
110116
111117
- name: Install Miniconda
112118
if: matrix.conda
113-
uses: conda-incubator/setup-miniconda@v2
119+
uses: conda-incubator/setup-miniconda@v3
114120
with:
115121
auto-update-conda: true
116122
python-version: ${{ matrix.python }}
117123
architecture: ${{ matrix.arch }}
118124
miniconda-version: "latest"
119125

120-
- name: Workaround conda-build incompatibility with xcode 12+
121-
if: runner.os == 'macOS'
122-
uses: maxim-lobanov/setup-xcode@v1
123-
with:
124-
xcode-version: 11.7
125-
126126
- name: Conda package (Unix)
127127
if: (matrix.conda && runner.os != 'Windows')
128128
shell: bash -l {0}
@@ -139,9 +139,9 @@ jobs:
139139
140140
- name: Upload Artifact
141141
if: matrix.conda
142-
uses: actions/upload-artifact@v3
142+
uses: actions/upload-artifact@v4
143143
with:
144-
name: conda_packages
144+
name: conda_packages-${{ matrix.os }}_${{ matrix.arch }}-py${{ matrix.python}}
145145
path: ./conda_packages
146146

147147

@@ -152,7 +152,7 @@ jobs:
152152
steps:
153153
- name: Checkout
154154
if: env.PURE == 'false'
155-
uses: actions/checkout@v3
155+
uses: actions/checkout@v4
156156
with:
157157
fetch-depth: 0
158158

@@ -162,14 +162,14 @@ jobs:
162162

163163
- name: Build Manylinux Wheels
164164
if: env.PURE == 'false'
165-
uses: RalfG/python-wheels-manylinux-build@v0.4.2
165+
uses: RalfG/python-wheels-manylinux-build@v0.7.1
166166
with:
167167
python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311'
168168
pre-build-command: 'git config --global --add safe.directory "*"'
169169

170170
- name: Upload Artifact
171171
if: env.PURE == 'false'
172-
uses: actions/upload-artifact@v3
172+
uses: actions/upload-artifact@v4
173173
with:
174174
name: dist
175175
path: dist/*manylinux*.whl
@@ -180,17 +180,19 @@ jobs:
180180
needs: [build, manylinux]
181181
steps:
182182

183-
- name: Download Artifact
184-
uses: actions/download-artifact@v3
183+
- name: Download Wheels and Source
184+
uses: actions/download-artifact@v4
185185
with:
186-
name: dist
186+
pattern: dist*
187187
path: ./dist
188+
merge-multiple: true
188189

189-
- name: Download Artifact
190-
uses: actions/download-artifact@v3
190+
- name: Download Conda Packages
191+
uses: actions/download-artifact@v4
191192
with:
192-
name: conda_packages
193+
pattern: conda_packages-*
193194
path: ./conda_packages
195+
merge-multiple: true
194196

195197
- name: Get Version Number
196198
if: github.event.ref_type == 'tag'
@@ -225,7 +227,7 @@ jobs:
225227
password: ${{ secrets.pypi }}
226228

227229
- name: Install Miniconda
228-
uses: conda-incubator/setup-miniconda@v2
230+
uses: conda-incubator/setup-miniconda@v3
229231
with:
230232
auto-update-conda: true
231233

pyproject.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,13 @@ license = {file = 'LICENSE.txt'}
2525
classifiers = [
2626
"License :: OSI Approved :: BSD License",
2727
"Programming Language :: Python :: 3 :: Only",
28-
"Programming Language :: Python :: 3.6",
29-
"Programming Language :: Python :: 3.7",
3028
"Programming Language :: Python :: 3.8",
3129
"Programming Language :: Python :: 3.9",
3230
"Programming Language :: Python :: 3.10",
3331
"Programming Language :: Python :: 3.11",
32+
"Programming Language :: Python :: 3.12",
3433
]
35-
requires-python = ">=3.6"
34+
requires-python = ">=3.8"
3635
dependencies = [
3736
"importlib_metadata",
3837
"numpy>=1.15",

0 commit comments

Comments
 (0)