1111jobs :
1212 build_wheel_linux :
1313 name : Build wheels on Linux (${{ matrix.wheel_arch }})
14- runs-on : ubuntu-20 .04
14+ runs-on : ubuntu-22 .04
1515 strategy :
1616 fail-fast : false
1717 matrix :
@@ -29,16 +29,17 @@ jobs:
2929 python-version : ' 3.9'
3030
3131 - name : Build wheels (manylinux)
32- uses : pypa/cibuildwheel@v2.21.3
32+ uses : pypa/cibuildwheel@v2.23.1
3333 env :
3434 CIBW_BEFORE_BUILD : " yum install -y flex bison libxml2-devel zlib-devel cairo-devel && pip install -U cmake pip setuptools wheel && python setup.py build_c_core"
3535 CIBW_BUILD : " *-manylinux_${{ matrix.wheel_arch }}"
36+ CIBW_ENABLE : pypy
3637 # Skip tests for Python 3.10 onwards because SciPy does not have
3738 # 32-bit wheels for Linux.
3839 CIBW_TEST_SKIP : " cp310-manylinux_i686 cp311-manylinux_i686 cp312-manylinux_i686 cp313-manylinux_i686"
3940
4041 - name : Build wheels (musllinux)
41- uses : pypa/cibuildwheel@v2.21.3
42+ uses : pypa/cibuildwheel@v2.23.1
4243 env :
4344 CIBW_BEFORE_BUILD : " apk add flex bison libxml2-dev zlib-dev cairo-dev && pip install -U cmake pip setuptools wheel && python setup.py build_c_core"
4445 CIBW_BUILD : " *-musllinux_${{ matrix.wheel_arch }}"
@@ -51,24 +52,20 @@ jobs:
5152
5253 build_wheel_linux_aarch64_manylinux :
5354 name : Build wheels on Linux (aarch64/manylinux)
54- runs-on : ubuntu-20.04
55- if : github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
55+ runs-on : ubuntu-22.04-arm
5656 steps :
5757 - uses : actions/checkout@v4
5858 with :
5959 submodules : true
6060 fetch-depth : 0
6161
62- - name : Set up QEMU
63- id : qemu
64- uses : docker/setup-qemu-action@v3
65-
6662 - name : Build wheels (manylinux)
67- uses : pypa/cibuildwheel@v2.21.3
63+ uses : pypa/cibuildwheel@v2.23.1
6864 env :
6965 CIBW_BEFORE_BUILD : " yum install -y flex bison libxml2-devel zlib-devel cairo-devel && pip install -U cmake pip setuptools wheel && python setup.py build_c_core"
7066 CIBW_ARCHS_LINUX : aarch64
7167 CIBW_BUILD : " *-manylinux_aarch64"
68+ CIBW_ENABLE : pypy
7269
7370 - uses : actions/upload-artifact@v4
7471 with :
@@ -77,20 +74,15 @@ jobs:
7774
7875 build_wheel_linux_aarch64_musllinux :
7976 name : Build wheels on Linux (aarch64/musllinux)
80- runs-on : ubuntu-20.04
81- if : github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
77+ runs-on : ubuntu-22.04-arm
8278 steps :
8379 - uses : actions/checkout@v4
8480 with :
8581 submodules : true
8682 fetch-depth : 0
8783
88- - name : Set up QEMU
89- id : qemu
90- uses : docker/setup-qemu-action@v3
91-
9284 - name : Build wheels (musllinux)
93- uses : pypa/cibuildwheel@v2.21.3
85+ uses : pypa/cibuildwheel@v2.23.1
9486 env :
9587 CIBW_BEFORE_BUILD : " apk add flex bison libxml2-dev zlib-dev cairo-dev && pip install -U cmake pip setuptools wheel && python setup.py build_c_core"
9688 CIBW_ARCHS_LINUX : aarch64
@@ -159,10 +151,11 @@ jobs:
159151 cmake --install .
160152
161153 - name : Build wheels
162- uses : pypa/cibuildwheel@v2.21.3
154+ uses : pypa/cibuildwheel@v2.23.1
163155 env :
164156 CIBW_ARCHS_MACOS : " ${{ matrix.wheel_arch }}"
165157 CIBW_BEFORE_BUILD : " pip install -U setuptools && python setup.py build_c_core"
158+ CIBW_ENABLE : pypy
166159 CIBW_ENVIRONMENT : " LDFLAGS=-L$HOME/local/lib"
167160 IGRAPH_CMAKE_EXTRA_ARGS : -DCMAKE_OSX_ARCHITECTURES=${{ matrix.cmake_arch }} ${{ matrix.cmake_extra_args }} -DCMAKE_PREFIX_PATH=$HOME/local
168161
@@ -173,7 +166,7 @@ jobs:
173166
174167 build_wheel_wasm :
175168 name : Build wheels for WebAssembly
176- runs-on : ubuntu-20 .04
169+ runs-on : ubuntu-22 .04
177170
178171 steps :
179172 - uses : actions/checkout@v4
@@ -261,18 +254,19 @@ jobs:
261254 shell : cmd
262255
263256 - name : Build wheels
264- uses : pypa/cibuildwheel@v2.21.3
257+ uses : pypa/cibuildwheel@v2.23.1
265258 env :
266259 CIBW_BEFORE_BUILD : " pip install -U setuptools && python setup.py build_c_core"
267260 CIBW_BUILD : " *-${{ matrix.wheel_arch }}"
261+ CIBW_ENABLE : pypy
268262 CIBW_TEST_COMMAND : " cd /d {project} && pip install --prefer-binary \" .[test]\" && python -m pytest tests"
269263 # Skip tests for Python 3.10 onwards because SciPy does not have
270264 # 32-bit wheels for Linux.
271265 CIBW_TEST_SKIP : " cp310-win32 cp311-win32 cp312-win32 cp313-win32"
272266 IGRAPH_CMAKE_EXTRA_ARGS : -DCMAKE_BUILD_TYPE=RelWithDebInfo -DVCPKG_TARGET_TRIPLET=${{ matrix.vcpkg_arch }}-windows-static-md -DCMAKE_TOOLCHAIN_FILE=c:/vcpkg/scripts/buildsystems/vcpkg.cmake -A ${{ matrix.cmake_arch }}
273267 IGRAPH_EXTRA_LIBRARY_PATH : C:/vcpkg/installed/${{ matrix.vcpkg_arch }}-windows-static-md/lib/
274268 IGRAPH_STATIC_EXTENSION : True
275- IGRAPH_EXTRA_LIBRARIES : libxml2,lzma,zlib,iconv,charset
269+ IGRAPH_EXTRA_LIBRARIES : libxml2,lzma,zlib,iconv,charset,bcrypt
276270 IGRAPH_EXTRA_DYNAMIC_LIBRARIES : wsock32,ws2_32
277271
278272 - uses : actions/upload-artifact@v4
@@ -327,7 +321,7 @@ jobs:
327321 # for the "Test" step below.
328322 build_with_sanitizer :
329323 name : Build with sanitizers for debugging purposes
330- runs-on : ubuntu-20.04
324+ runs-on : ubuntu-latest
331325 env :
332326 IGRAPH_CMAKE_EXTRA_ARGS : -DFORCE_COLORED_OUTPUT=ON
333327 steps :
@@ -381,5 +375,5 @@ jobs:
381375 ASAN_OPTIONS : " detect_stack_use_after_return=1"
382376 LSAN_OPTIONS : " suppressions=etc/lsan-suppr.txt:print_suppressions=false"
383377 run : |
384- LD_PRELOAD=/lib/x86_64-linux-gnu/libasan.so.5:/lib/x86_64-linux-gnu/libubsan.so.1 python -m pytest --capture=sys tests
385-
378+ sudo sysctl vm.mmap_rnd_bits=28
379+ LD_PRELOAD=/lib/x86_64-linux-gnu/libasan.so.8:/lib/x86_64-linux-gnu/libubsan.so.1 python -m pytest --capture=sys tests
0 commit comments