Skip to content

Commit 6f3014a

Browse files
authored
Merge branch 'master' into fix-segfault
2 parents 56926f6 + 0080cae commit 6f3014a

File tree

5 files changed

+19
-13
lines changed

5 files changed

+19
-13
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ jobs:
293293
debug: ${{ matrix.python-debug }}
294294

295295
- name: Update CMake
296-
uses: jwlawson/actions-setup-cmake@v2.0
296+
uses: jwlawson/actions-setup-cmake@v2.1
297297

298298
- name: Valgrind cache
299299
if: matrix.valgrind
@@ -561,7 +561,7 @@ jobs:
561561
run: python3 -m pip install --upgrade pip
562562

563563
- name: Update CMake
564-
uses: jwlawson/actions-setup-cmake@v2.0
564+
uses: jwlawson/actions-setup-cmake@v2.1
565565

566566
- name: Configure
567567
shell: bash
@@ -897,7 +897,7 @@ jobs:
897897
${{ matrix.python == '3.13' && runner.os == 'Windows' }}
898898
899899
- name: Update CMake
900-
uses: jwlawson/actions-setup-cmake@v2.0
900+
uses: jwlawson/actions-setup-cmake@v2.1
901901

902902
- name: Prepare MSVC
903903
uses: ilammy/[email protected]
@@ -947,7 +947,7 @@ jobs:
947947
architecture: x86
948948

949949
- name: Update CMake
950-
uses: jwlawson/actions-setup-cmake@v2.0
950+
uses: jwlawson/actions-setup-cmake@v2.1
951951

952952
- name: Prepare MSVC
953953
uses: ilammy/[email protected]
@@ -998,7 +998,7 @@ jobs:
998998
run: python3 -m pip install -r tests/requirements.txt
999999

10001000
- name: Update CMake
1001-
uses: jwlawson/actions-setup-cmake@v2.0
1001+
uses: jwlawson/actions-setup-cmake@v2.1
10021002

10031003
- name: Configure C++20
10041004
run: >
@@ -1180,7 +1180,7 @@ jobs:
11801180
python-version: ${{ matrix.python }}
11811181

11821182
- name: Update CMake
1183-
uses: jwlawson/actions-setup-cmake@v2.0
1183+
uses: jwlawson/actions-setup-cmake@v2.1
11841184

11851185
- name: Install ninja-build tool
11861186
uses: seanmiddleditch/gha-setup-ninja@v6

.github/workflows/configure.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464
# An action for adding a specific version of CMake:
6565
# https://github.com/jwlawson/actions-setup-cmake
6666
- name: Setup CMake ${{ matrix.cmake }}
67-
uses: jwlawson/actions-setup-cmake@v2.0
67+
uses: jwlawson/actions-setup-cmake@v2.1
6868
with:
6969
cmake-version: ${{ matrix.cmake }}
7070

.github/workflows/upstream.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
run: sudo apt-get install libboost-dev
3737

3838
- name: Update CMake
39-
uses: jwlawson/actions-setup-cmake@v2.0
39+
uses: jwlawson/actions-setup-cmake@v2.1
4040

4141
- name: Run pip installs
4242
run: |

tests/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ numpy~=1.22.2; platform_python_implementation=="CPython" and python_version=="3.
1010
numpy~=1.26.0; platform_python_implementation=="CPython" and python_version>="3.11" and python_version<"3.13" and platform_machine!="ARM64"
1111
numpy>=2.3.0; platform_python_implementation=="CPython" and python_version>="3.11" and platform_machine=="ARM64"
1212
numpy~=2.2.0; platform_python_implementation=="CPython" and python_version=="3.13" and platform_machine!="ARM64"
13-
numpy==2.4.0; platform_python_implementation=="CPython" and python_version>="3.14"
13+
numpy>=2.4.0; platform_python_implementation=="CPython" and python_version>="3.14"
1414
pytest>=6
1515
pytest-timeout
1616
scipy~=1.5.4; platform_python_implementation=="CPython" and python_version<"3.10"

tests/test_with_catch/test_subinterpreter.cpp

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -501,15 +501,21 @@ TEST_CASE("Per-Subinterpreter GIL") {
501501

502502
// wait for something to set sync to our thread number
503503
// we are holding our subinterpreter's GIL
504-
while (sync != num)
505-
std::this_thread::sleep_for(std::chrono::microseconds(1));
504+
{
505+
py::gil_scoped_release nogil;
506+
while (sync != num)
507+
std::this_thread::sleep_for(std::chrono::microseconds(1));
508+
}
506509

507510
// now change it so the next thread can move on
508511
++sync;
509512

510513
// but keep holding the GIL until after the next thread moves on as well
511-
while (sync == num + 1)
512-
std::this_thread::sleep_for(std::chrono::microseconds(1));
514+
{
515+
py::gil_scoped_release nogil;
516+
while (sync == num + 1)
517+
std::this_thread::sleep_for(std::chrono::microseconds(1));
518+
}
513519

514520
// one last check before quitting the thread, the internals should be different
515521
auto sub_int

0 commit comments

Comments
 (0)