44# :Author: Martin Thoma <info@martin-thoma.de>
55# :License: MIT License
66# :Copyright: © 2020 Martin Thoma
7- # :Copyright: © 2020, 2021, 2022, 2023, 2024 Lele Gaifax
7+ # :Copyright: © 2020, 2021, 2022, 2023, 2024, 2025 Lele Gaifax
88#
99
1010# For more information see:
5252 run : |
5353 make -C docs doctest -e PYTHON=$(which python3)
5454
55+ - name : Typing stub tests
56+ run : |
57+ stubtest rapidjson
58+
5559 debug-tests :
5660 name : Memory leak tests, on current debug build Python
5761 runs-on : ubuntu-latest
6569 with :
6670 submodules : recursive
6771
68- - uses : deadsnakes/action@v3.1 .0
72+ - uses : deadsnakes/action@v3.2 .0
6973 with :
7074 python-version : ${{ matrix.python-version }}
7175 debug : true
@@ -84,15 +88,15 @@ jobs:
8488 strategy :
8589 matrix :
8690 os :
87- - ubuntu-22 .04
88- - macos-12
89- - windows-2019
91+ - ubuntu-24 .04
92+ - macos-13
93+ - windows-2025
9094 arch :
9195 - auto
9296 include :
93- - os : ubuntu-22 .04
97+ - os : ubuntu-24 .04
9498 arch : aarch64
95- # - os: ubuntu-22 .04
99+ # - os: ubuntu-24 .04
96100 # arch: ppc64le
97101 - os : macos-14
98102 arch : arm64
@@ -114,13 +118,16 @@ jobs:
114118 name : Set up QEMU
115119
116120 - name : Build wheels
117- uses : pypa/cibuildwheel@v2.16.5
121+ uses : pypa/cibuildwheel@v3.1.3
118122 env :
119123 CIBW_ARCHS_LINUX : ${{ matrix.arch }}
120124 CIBW_ARCHS_MACOS : ${{ matrix.arch }}
121125 CIBW_TEST_REQUIRES : " pytest pytest-benchmark pytz"
122126 CIBW_TEST_COMMAND : " pytest -sv {project}/tests"
123- CIBW_SKIP : " cp2* cp33* cp34* cp35* cp36* pp* cp310-manylinux_i686 cp311-manylinux_i686 cp312-manylinux_i686 *-musllinux_*"
127+ CIBW_SKIP : " cp2* cp33* cp34* cp35* cp36* cp38* pp* cp310-manylinux_i686 cp311-manylinux_i686 cp312-manylinux_i686 *-musllinux_*"
128+ # Skip tests on emulated hardware, take too long or not supported
129+ CIBW_TEST_SKIP : " *-*linux_{aarch64,ppc64le} *-macosx_*:arm64"
130+ CIBW_ENABLE : cpython-prerelease
124131 CIBW_ENVIRONMENT : " PIP_ONLY_BINARY=numpy"
125132 # CIBW_BEFORE_BUILD: python -m pip install oldest-supported-numpy
126133 # CIBW_PRERELEASE_PYTHONS: True
@@ -136,8 +143,12 @@ jobs:
136143 # needs: build_wheels
137144 # runs-on: ubuntu-latest
138145
139- # # Upload to PyPI on every tag starting with 'v'
140- # if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v')
146+ # Upload to PyPI on every tag starting with 'v'
147+ # FIXME: for some reason, the job is skipped, although the configuration is
148+ # almost identical to the one I use on pglast... let's try to temporarily
149+ # remove the condition
150+ # langmm: Disabled until name change for fork
151+ # # if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v')
141152
142153 # steps:
143154 # - uses: actions/download-artifact@v4
0 commit comments