@@ -22,32 +22,32 @@ jobs:
2222
2323 steps :
2424 - name : Checkout repo
25- uses : actions/checkout@v3
26- with :
27- submodules : true
25+ uses : actions/checkout@v5
2826
2927 - name : Install Python
30- uses : actions/setup-python@v4
28+ uses : actions/setup-python@v5
3129 with :
32- python-version : 3.7
30+ python-version : ' 3.10 '
3331
3432 - name : Build wheel
3533 run : |
3634 pip install wheel
3735 python setup.py bdist_wheel
38- - uses : actions/upload-artifact@v3
36+
37+ - name : Upload wheel artifact
38+ uses : actions/upload-artifact@v4
3939 with :
40+ name : nrtest-swmm-wheel
4041 path : nrtest-swmm/dist/*.whl
41-
42-
42+
4343
4444 build_wheels :
4545 runs-on : ${{ matrix.os }}
4646 strategy :
4747 fail-fast : false
4848 matrix :
49- os : [ubuntu-latest, windows-2022 , macos-12 ]
50- pyver : [cp38, cp39, cp310, cp311, cp312]
49+ os : [ubuntu-latest, windows-latest , macos-latest ]
50+ pyver : [cp39, cp310, cp311, cp312, cp313 ]
5151
5252 steps :
5353 - name : Checkout repo
@@ -56,10 +56,11 @@ jobs:
5656 submodules : true
5757
5858 - name : Build wheels
59- uses : pypa/cibuildwheel@v2.17.0
59+ uses : pypa/cibuildwheel@v3.1.4
6060 with :
6161 package-dir : ./swmm-toolkit
6262 env :
63+ MACOSX_DEPLOYMENT_TARGET : " 11.0"
6364 CIBW_TEST_COMMAND : " pytest {package}/tests"
6465 CIBW_BEFORE_TEST : pip install -r {package}/test-requirements.txt
6566 # mac needs ninja to build
@@ -70,31 +71,31 @@ jobs:
7071 # configure cibuildwheel to build native archs ('auto'), and some emulated ones
7172 CIBW_ARCHS_LINUX : x86_64
7273 CIBW_ARCHS_WINDOWS : AMD64
73- CIBW_ARCHS_MACOS : x86_64
74+ CIBW_ARCHS_MACOS : x86_64 arm64
7475 # only build current supported python: https://devguide.python.org/versions/
7576 # don't build pypy or musllinux to save build time. TODO: find a good way to support those archs
7677 CIBW_BUILD : ${{matrix.pyver}}-*
77- CIBW_SKIP : cp36-* cp37 -* pp* *-musllinux*
78+ CIBW_SKIP : cp38 -* pp* *-musllinux*
7879 # Will avoid testing on emulated architectures
7980 # Skip trying to test arm64 builds on Intel Macs
80- CIBW_TEST_SKIP : " *-*linux_{aarch64,ppc64le,s390x} *-macosx_arm64 *- macosx_universal2:arm64"
81+ CIBW_TEST_SKIP : " *-*linux_{aarch64,ppc64le,s390x} *-macosx_universal2:arm64"
8182 CIBW_BUILD_VERBOSITY : 1
8283
83- - uses : actions/upload-artifact@v3
84+ - uses : actions/upload-artifact@v4
8485 with :
86+ name : wheels-${{ matrix.os }}-${{ matrix.pyver }}
8587 path : ./wheelhouse/*.whl
8688
8789 build_cross_wheels :
88- runs-on : ${{ matrix.os }}
90+ runs-on : ubuntu-latest
8991 strategy :
9092 fail-fast : false
9193 matrix :
92- os : [ubuntu-latest,macos-12]
93- pyver : [cp38, cp39, cp310, cp311, cp312]
94+ pyver : [cp39, cp310, cp311, cp312, cp313]
9495
9596 steps :
9697 - name : Checkout repo
97- uses : actions/checkout@v3
98+ uses : actions/checkout@v5
9899 with :
99100 submodules : true
100101
@@ -105,7 +106,7 @@ jobs:
105106 platforms : all
106107
107108 - name : Build wheels
108- uses : pypa/cibuildwheel@v2.17.0
109+ uses : pypa/cibuildwheel@v3.1.4
109110 with :
110111 package-dir : ./swmm-toolkit
111112 env :
@@ -114,13 +115,13 @@ jobs:
114115 CIBW_BEFORE_BUILD_LINUX : rm -f $(which swig) && rm -f $(which swig4.0)
115116 # configure cibuildwheel to build native archs ('auto'), and some emulated ones
116117 CIBW_ARCHS_LINUX : aarch64
117- CIBW_ARCHS_MACOS : arm64
118118 # only build current supported python: https://devguide.python.org/versions/
119119 # don't build pypy or musllinux to save build time. TODO: find a good way to support those archs
120120 CIBW_BUILD : ${{matrix.pyver}}-*
121- CIBW_SKIP : cp36-* cp37-* pp* *-musllinux*
121+ CIBW_SKIP : cp-*38 pp* *-musllinux*
122122 CIBW_BUILD_VERBOSITY : 1
123123
124- - uses : actions/upload-artifact@v3
124+ - uses : actions/upload-artifact@v4
125125 with :
126+ name : wheels-linux-aarch64-${{ matrix.pyver }}
126127 path : ./wheelhouse/*.whl
0 commit comments