@@ -47,16 +47,18 @@ jobs:
4747 if-no-files-found : error
4848
4949 test :
50- name : ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.reactor.name }}
50+ name : ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.reactor.name }} ${{ matrix.arch.name }}
5151 needs : build
52- runs-on : ${{ matrix.os.runs-on }}
52+ runs-on : ${{ matrix.os.runs-on[matrix.arch.matrix] }}
5353 container : ${{ matrix.os.container[matrix.python.docker] }}
5454 strategy :
5555 fail-fast : false
5656 matrix :
5757 os :
5858 - name : 🐧
59- runs-on : ubuntu-latest
59+ matrix : linux
60+ runs-on :
61+ intel : ubuntu-latest
6062 python_platform : linux
6163 container :
6264 " 2.7 " : docker://python:2.7-buster
@@ -73,56 +75,69 @@ jobs:
7375 " pypy3.9 " : docker://pypy:3.9-bookworm
7476 " pypy3.10 " : docker://pypy:3.10-bookworm
7577 - name : 🪟
76- runs-on : windows-latest
78+ matrix : windows
79+ runs-on :
80+ intel : windows-latest
7781 python_platform : win32
7882 - name : 🍎
79- runs-on : macos-12
83+ matrix : macos
84+ runs-on :
85+ arm : macos-latest
86+ intel : macos-13
8087 python_platform : darwin
8188 python :
8289 - name : CPython 2.7
8390 tox : py27
91+ major-dot-minor : 2.7
8492 action : 2.7
8593 docker : 2.7
8694 implementation : cpython
8795 major : 2
8896 - name : CPython 3.6
8997 tox : py36
98+ major-dot-minor : 3.6
9099 action : 3.6
91100 docker : 3.6
92101 implementation : cpython
93102 major : 3
94103 - name : CPython 3.7
95104 tox : py37
105+ major-dot-minor : 3.7
96106 action : 3.7
97107 docker : 3.7
98108 implementation : cpython
99109 major : 3
100110 - name : CPython 3.8
101111 tox : py38
112+ major-dot-minor : 3.8
102113 action : 3.8
103114 docker : 3.8
104115 implementation : cpython
105116 major : 3
106117 - name : CPython 3.9
107118 tox : py39
119+ major-dot-minor : 3.9
108120 action : 3.9
109121 docker : 3.9
110122 implementation : cpython
111123 major : 3
112124 - name : CPython 3.10
113125 tox : py310
126+ major-dot-minor : " 3.10"
114127 action : " 3.10"
115128 docker : " 3.10"
116129 implementation : cpython
117130 major : 3
118131 - name : CPython 3.11
119132 tox : py311
133+ major-dot-minor : " 3.11"
120134 action : " 3.11"
121135 docker : " 3.11"
122136 implementation : cpython
123137 major : 3
124138 - name : CPython 3.12
125139 tox : py312
140+ major-dot-minor : " 3.12"
126141 action : " 3.12"
127142 docker : " 3.12"
128143 implementation : cpython
@@ -137,24 +152,28 @@ jobs:
137152# major: 2
138153 - name : PyPy 3.7
139154 tox : pypy37
155+ major-dot-minor : 3.7
140156 action : pypy-3.7
141157 docker : pypy3.7
142158 implementation : pypy
143159 major : 3
144160 - name : PyPy 3.8
145161 tox : pypy38
162+ major-dot-minor : 3.8
146163 action : pypy-3.8
147164 docker : pypy3.8
148165 implementation : pypy
149166 major : 3
150167 - name : PyPy 3.9
151168 tox : pypy39
169+ major-dot-minor : 3.9
152170 action : pypy-3.9
153171 docker : pypy3.9
154172 implementation : pypy
155173 major : 3
156174 - name : PyPy 3.10
157175 tox : pypy310
176+ major-dot-minor : " 3.10"
158177 action : pypy-3.10
159178 docker : pypy3.10
160179 implementation : pypy
@@ -172,6 +191,15 @@ jobs:
172191 - name : asyncio
173192 tox : asyncio
174193 dependencies : asyncio
194+ arch :
195+ - name : ARM
196+ matrix : arm
197+ setup-python :
198+ architecture : arm64
199+ - name : Intel
200+ matrix : intel
201+ setup-python :
202+ architecture : x64
175203 exclude :
176204 - python :
177205 major : 2
@@ -190,11 +218,11 @@ jobs:
190218 reactor :
191219 tox : pyside2
192220 - python :
193- action : " 3.11"
221+ major-dot-minor : " 3.11"
194222 reactor :
195223 tox : pyside2
196224 - python :
197- action : " 3.12"
225+ major-dot-minor : " 3.12"
198226 reactor :
199227 tox : pyside2
200228 - python :
@@ -209,6 +237,30 @@ jobs:
209237 implementation : pypy
210238 reactor :
211239 tox : pyside2
240+ - os :
241+ matrix : linux
242+ arch :
243+ matrix : arm
244+ - os :
245+ matrix : windows
246+ arch :
247+ matrix : arm
248+ - os :
249+ matrix : macos
250+ python :
251+ major-dot-minor : " 3.6"
252+ arch :
253+ matrix : arm
254+ - os :
255+ matrix : macos
256+ python :
257+ major-dot-minor : " 3.7"
258+ arch :
259+ matrix : arm
260+ - arch :
261+ matrix : arm
262+ reactor :
263+ tox : pyside2
212264 steps :
213265 - uses : actions/checkout@v4
214266 - name : Enable Problem Matchers
@@ -227,7 +279,7 @@ jobs:
227279 # CPython -> 3.9.0-alpha - 3.9.X
228280 # PyPy -> pypy-3.7
229281 python-version : ${{ fromJSON(format('["{0}", "{1}"]', format('{0}.0-alpha - {0}.X', matrix.python.action), matrix.python.action))[startsWith(matrix.python.action, 'pypy')] }}
230- architecture : x64
282+ architecture : ${{ matrix.arch.setup-python.architecture }}
231283 - name : Report Python information
232284 shell : bash
233285 run : |
0 commit comments