@@ -40,60 +40,20 @@ jobs:
4040 echo 'matrix_os=["macos-13", "ubuntu-22.04", "windows-2022"]' >> $GITHUB_OUTPUT
4141 fi
4242
43- whl_3_8 :
44- name : Build / ${{ matrix.os }} / Python 3.${{ matrix.minor }}
43+ wheels :
44+ name : Build / ${{ matrix.os }} / Python 3.${{ matrix.python. minor }}
4545 needs : matrix_config
4646 strategy :
4747 fail-fast : false
4848 matrix :
4949 os : ${{ fromJson(needs.matrix_config.outputs.matrix_os) }}
50- minor : [8]
51- runs-on : ${{ matrix.os }}
52- steps :
53- - uses : actions/checkout@master
54- - uses : actions/setup-python@master
55- - run : echo '::add-matcher::.github/problem-matchers/gcc.json'
56- if : startsWith(matrix.os, 'macos-') || startsWith(matrix.os, 'ubuntu-')
57- - run : echo '::add-matcher::.github/problem-matchers/msvc.json'
58- if : startsWith(matrix.os, 'windows-')
59-
60- - uses : pypa/cibuildwheel@v2.16.2
61- if : matrix.os != 'macos-13-xlarge'
62- with :
63- output-dir : dist
64- env :
65- CIBW_BUILD : cp3${{ matrix.minor }}-*
66- CIBW_ARCHS_WINDOWS : x86 AMD64
67- CIBW_ARCHS_MACOS : x86_64
68- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_08.txt
69- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_08.txt
70- CIBW_TEST_COMMAND : pytest {project}
71-
72- - run : pip install pipx
73- if : matrix.os == 'macos-13-xlarge'
74- - uses : pypa/cibuildwheel@v2.16.2
75- if : matrix.os == 'macos-13-xlarge'
76- with :
77- output-dir : dist
78- env :
79- CIBW_BUILD : cp3${{ matrix.minor }}-macosx_arm64
80- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_08.txt
81- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_08.txt
82- CIBW_TEST_COMMAND : pytest {project}/test
83-
84- - uses : actions/upload-artifact@v3
85- with :
86- name : dist
87- path : dist
50+ python :
51+ - {minor: 8, req_build: 'requirements-build-3_08.txt', req_test: 'requirements-dev-3_08.txt'}
52+ - {minor: 9, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
53+ - {minor: 10, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
54+ - {minor: 11, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
55+ - {minor: 12, req_build: 'requirements-build-3_12.txt', req_test: 'requirements-dev-3_12.txt'}
8856
89- whl_3_9_to_3_11 :
90- name : Build / ${{ matrix.os }} / Python 3.${{ matrix.minor }}
91- needs : matrix_config
92- strategy :
93- fail-fast : false
94- matrix :
95- os : ${{fromJson(needs.matrix_config.outputs.matrix_os)}}
96- minor : [9, 10, 11]
9757 runs-on : ${{ matrix.os }}
9858 steps :
9959 - uses : actions/checkout@master
@@ -108,11 +68,11 @@ jobs:
10868 with :
10969 output-dir : dist
11070 env :
111- CIBW_BUILD : cp3${{ matrix.minor }}-*
71+ CIBW_BUILD : cp3${{ matrix.python. minor }}-*
11272 CIBW_ARCHS_WINDOWS : x86 AMD64
11373 CIBW_ARCHS_MACOS : x86_64
114- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_11.txt
115- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_11.txt
74+ CIBW_BEFORE_BUILD : pip install -r {project}/${{ matrix.python.req_build }}
75+ CIBW_BEFORE_TEST : pip install -r {project}/${{ matrix.python.req_test }}
11676 CIBW_TEST_COMMAND : pytest {project}
11777
11878 - run : pip install pipx
@@ -122,68 +82,20 @@ jobs:
12282 with :
12383 output-dir : dist
12484 env :
125- CIBW_BUILD : cp3${{ matrix.minor }}-macosx_arm64
126- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_11.txt
127- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_11.txt
85+ CIBW_BUILD : cp3${{ matrix.python. minor }}-macosx_arm64
86+ CIBW_BEFORE_BUILD : pip install -r {project}/${{ matrix.python.req_build }}
87+ CIBW_BEFORE_TEST : pip install -r {project}/${{ matrix.python.req_test }}
12888 CIBW_TEST_COMMAND : pytest {project}/test
12989
13090 - uses : actions/upload-artifact@v3
13191 with :
13292 name : dist
13393 path : dist
13494
135- whl_3_12 :
136- name : Build / ${{ matrix.os }} / Python 3.${{ matrix.minor }}
137- needs : matrix_config
138- strategy :
139- fail-fast : false
140- matrix :
141- os : ${{fromJson(needs.matrix_config.outputs.matrix_os)}}
142- minor : [12]
143- runs-on : ${{ matrix.os }}
144- steps :
145- - uses : actions/checkout@master
146- - uses : actions/setup-python@master
147- - run : echo '::add-matcher::.github/problem-matchers/gcc.json'
148- if : startsWith(matrix.os, 'macos-') || startsWith(matrix.os, 'ubuntu-')
149- - run : echo '::add-matcher::.github/problem-matchers/msvc.json'
150- if : startsWith(matrix.os, 'windows-')
151-
152- - run : pip install pipx
153- if : startsWith(matrix.os, 'macos-')
154-
155- - uses : pypa/cibuildwheel@v2.16.2
156- if : matrix.os != 'macos-13-xlarge'
157- with :
158- output-dir : dist
159- env :
160- CIBW_BUILD : cp3${{ matrix.minor }}-*
161- CIBW_ARCHS_WINDOWS : x86 AMD64
162- CIBW_ARCHS_MACOS : x86_64
163- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_12.txt
164- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_12.txt
165- CIBW_TEST_COMMAND : pytest {project}
166- - uses : actions/upload-artifact@v3
167- with :
168- name : dist
169- path : dist
170-
171- - run : pip install pipx
172- if : matrix.os == 'macos-13-xlarge'
173- - uses : pypa/cibuildwheel@v2.16.2
174- if : matrix.os == 'macos-13-xlarge'
175- with :
176- output-dir : dist
177- env :
178- CIBW_BUILD : cp3${{ matrix.minor }}-macosx_arm64
179- CIBW_BEFORE_BUILD : pip install -r {project}/requirements-build-3_12.txt
180- CIBW_BEFORE_TEST : pip install -r {project}/requirements-dev-3_12.txt
181- CIBW_TEST_COMMAND : pytest {project}/test
182-
18395 upload :
18496 name : Publish
18597 if : github.event_name == 'release'
186- needs : [tar_gz, whl_3_8, whl_3_9_to_3_11, whl_3_12 ]
98+ needs : [tar_gz, wheels ]
18799 runs-on : ubuntu-latest
188100 steps :
189101 - uses : actions/download-artifact@v3
0 commit comments