Skip to content

Commit f1e7d00

Browse files
committed
Merge branch 'simple-cycle-binding-v3' of github.com:GenieTim/python-igraph into simple-cycle-binding-v3
2 parents b8a922d + 80e8c20 commit f1e7d00

File tree

9 files changed

+154
-120
lines changed

9 files changed

+154
-120
lines changed

.all-contributorsrc

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -603,6 +603,33 @@
603603
"contributions": [
604604
"code"
605605
]
606+
},
607+
{
608+
"login": "m1-s",
609+
"name": "Michael Schneider",
610+
"avatar_url": "https://avatars.githubusercontent.com/u/94642227?v=4",
611+
"profile": "https://github.com/m1-s",
612+
"contributions": [
613+
"code"
614+
]
615+
},
616+
{
617+
"login": "aothms",
618+
"name": "Thomas Krijnen",
619+
"avatar_url": "https://avatars.githubusercontent.com/u/1096535?v=4",
620+
"profile": "http://thomaskrijnen.com/",
621+
"contributions": [
622+
"code"
623+
]
624+
},
625+
{
626+
"login": "GenieTim",
627+
"name": "Tim Bernhard",
628+
"avatar_url": "https://avatars.githubusercontent.com/u/8596965?v=4",
629+
"profile": "https://github.com/GenieTim",
630+
"contributions": [
631+
"code"
632+
]
606633
}
607634
],
608635
"contributorsPerLine": 7

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<!-- Please disclose any use of LLMs (ChatGPT, Copilot, Gemini, etc.) during the preparation of this PR. -->
2+
3+
<!-- The following text must be left intact and the box checked before the PR can be merged. -->
4+
5+
- [ ] By submitting this pull request, I assign the copyright of my contribution to _The igraph development team_.

.github/workflows/build.yml

Lines changed: 18 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
jobs:
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

Comments
 (0)