Skip to content

Commit 3f88b0a

Browse files
committed
Merge branch 'master' into master_with_dummy_change
2 parents 3b95822 + 869cc1f commit 3f88b0a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+1214
-366
lines changed

.github/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ The valid options are:
135135
* Use `-G` and the name of a generator to use something different. `cmake
136136
--help` lists the generators available.
137137
- On Unix, setting `CMAKE_GENERATER=Ninja` in your environment will give
138-
you automatic mulithreading on all your CMake projects!
138+
you automatic multithreading on all your CMake projects!
139139
* Open the `CMakeLists.txt` with QtCreator to generate for that IDE.
140140
* You can use `-DCMAKE_EXPORT_COMPILE_COMMANDS=ON` to generate the `.json` file
141141
that some tools expect.

.github/dependabot.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,8 @@ updates:
44
- package-ecosystem: "github-actions"
55
directory: "/"
66
schedule:
7-
interval: "daily"
7+
interval: "weekly"
8+
groups:
9+
actions:
10+
patterns:
11+
- "*"

.github/workflows/ci.yml

Lines changed: 57 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,12 @@ jobs:
6969
runs-on: ${{ matrix.runs-on }}
7070

7171
steps:
72-
- uses: actions/checkout@v3
72+
- uses: actions/checkout@v4
7373

7474
- name: Setup Python ${{ matrix.python }}
75-
uses: actions/setup-python@v4
75+
uses: actions/setup-python@v5
7676
with:
7777
python-version: ${{ matrix.python }}
78-
allow-prereleases: true
7978

8079
- name: Setup Boost (Linux)
8180
# Can't use boost + define _
@@ -195,20 +194,21 @@ jobs:
195194
matrix:
196195
include:
197196
# TODO: Fails on 3.10, investigate
198-
- python-version: "3.9"
199-
python-debug: true
200-
valgrind: true
197+
# JOB DISABLED (NEEDS WORK): https://github.com/pybind/pybind11/issues/4889
198+
# - python-version: "3.9"
199+
# python-debug: true
200+
# valgrind: true
201201
- python-version: "3.11"
202202
python-debug: false
203203

204204
name: "🐍 ${{ matrix.python-version }}${{ matrix.python-debug && '-dbg' || '' }} (deadsnakes)${{ matrix.valgrind && ' • Valgrind' || '' }} • x64"
205205
runs-on: ubuntu-20.04
206206

207207
steps:
208-
- uses: actions/checkout@v3
208+
- uses: actions/checkout@v4
209209

210210
- name: Setup Python ${{ matrix.python-version }} (deadsnakes)
211-
uses: deadsnakes/action@v3.0.1
211+
uses: deadsnakes/action@v3.1.0
212212
with:
213213
python-version: ${{ matrix.python-version }}
214214
debug: ${{ matrix.python-debug }}
@@ -310,7 +310,7 @@ jobs:
310310
container: "silkeh/clang:${{ matrix.clang }}${{ matrix.container_suffix }}"
311311

312312
steps:
313-
- uses: actions/checkout@v3
313+
- uses: actions/checkout@v4
314314

315315
- name: Add wget and python3
316316
run: apt-get update && apt-get install -y python3-dev python3-numpy python3-pytest libeigen3-dev
@@ -344,7 +344,7 @@ jobs:
344344
container: nvidia/cuda:12.2.0-devel-ubuntu22.04
345345

346346
steps:
347-
- uses: actions/checkout@v3
347+
- uses: actions/checkout@v4
348348

349349
# tzdata will try to ask for the timezone, so set the DEBIAN_FRONTEND
350350
- name: Install 🐍 3
@@ -368,7 +368,7 @@ jobs:
368368
# container: centos:8
369369
#
370370
# steps:
371-
# - uses: actions/checkout@v3
371+
# - uses: actions/checkout@v4
372372
#
373373
# - name: Add Python 3 and a few requirements
374374
# run: yum update -y && yum install -y git python3-devel python3-numpy python3-pytest make environment-modules
@@ -413,7 +413,7 @@ jobs:
413413
# tzdata will try to ask for the timezone, so set the DEBIAN_FRONTEND
414414
DEBIAN_FRONTEND: 'noninteractive'
415415
steps:
416-
- uses: actions/checkout@v3
416+
- uses: actions/checkout@v4
417417

418418
- name: Add NVHPC Repo
419419
run: |
@@ -475,7 +475,7 @@ jobs:
475475
container: "gcc:${{ matrix.gcc }}"
476476

477477
steps:
478-
- uses: actions/checkout@v3
478+
- uses: actions/checkout@v4
479479

480480
- name: Add Python 3
481481
run: apt-get update; apt-get install -y python3-dev python3-numpy python3-pytest python3-pip libeigen3-dev
@@ -535,7 +535,7 @@ jobs:
535535
name: "🐍 3 • ICC latest • x64"
536536

537537
steps:
538-
- uses: actions/checkout@v3
538+
- uses: actions/checkout@v4
539539

540540
- name: Add apt repo
541541
run: |
@@ -639,7 +639,13 @@ jobs:
639639
container: "${{ matrix.container }}"
640640

641641
steps:
642-
- uses: actions/checkout@v3
642+
- name: Latest actions/checkout
643+
uses: actions/checkout@v4
644+
if: matrix.container != 'centos:7'
645+
646+
- name: Pin actions/checkout as required for centos:7
647+
uses: actions/checkout@v3
648+
if: matrix.container == 'centos:7'
643649

644650
- name: Add Python 3 (RHEL 7)
645651
if: matrix.container == 'centos:7'
@@ -687,7 +693,7 @@ jobs:
687693
container: i386/debian:buster
688694

689695
steps:
690-
- uses: actions/checkout@v1 # Required to run inside docker
696+
- uses: actions/checkout@v1 # v1 is required to run inside docker
691697

692698
- name: Install requirements
693699
run: |
@@ -730,9 +736,9 @@ jobs:
730736
runs-on: ubuntu-latest
731737

732738
steps:
733-
- uses: actions/checkout@v3
739+
- uses: actions/checkout@v4
734740

735-
- uses: actions/setup-python@v4
741+
- uses: actions/setup-python@v5
736742
with:
737743
python-version: "3.x"
738744

@@ -782,10 +788,10 @@ jobs:
782788
runs-on: windows-2019
783789

784790
steps:
785-
- uses: actions/checkout@v3
791+
- uses: actions/checkout@v4
786792

787793
- name: Setup Python ${{ matrix.python }}
788-
uses: actions/setup-python@v4
794+
uses: actions/setup-python@v5
789795
with:
790796
python-version: ${{ matrix.python }}
791797
architecture: x86
@@ -794,7 +800,7 @@ jobs:
794800
uses: jwlawson/[email protected]
795801

796802
- name: Prepare MSVC
797-
uses: ilammy/msvc-dev-cmd@v1.12.1
803+
uses: ilammy/msvc-dev-cmd@v1.13.0
798804
with:
799805
arch: x86
800806

@@ -835,10 +841,10 @@ jobs:
835841
runs-on: windows-2019
836842

837843
steps:
838-
- uses: actions/checkout@v3
844+
- uses: actions/checkout@v4
839845

840846
- name: Setup Python ${{ matrix.python }}
841-
uses: actions/setup-python@v4
847+
uses: actions/setup-python@v5
842848
with:
843849
python-version: ${{ matrix.python }}
844850
architecture: x86
@@ -847,7 +853,7 @@ jobs:
847853
uses: jwlawson/[email protected]
848854

849855
- name: Prepare MSVC
850-
uses: ilammy/msvc-dev-cmd@v1.12.1
856+
uses: ilammy/msvc-dev-cmd@v1.13.0
851857
with:
852858
arch: x86
853859

@@ -883,10 +889,10 @@ jobs:
883889
runs-on: windows-2022
884890

885891
steps:
886-
- uses: actions/checkout@v3
892+
- uses: actions/checkout@v4
887893

888894
- name: Setup Python ${{ matrix.python }}
889-
uses: actions/setup-python@v4
895+
uses: actions/setup-python@v5
890896
with:
891897
python-version: ${{ matrix.python }}
892898

@@ -953,20 +959,30 @@ jobs:
953959
mingw-w64-${{matrix.env}}-gcc
954960
mingw-w64-${{matrix.env}}-python-pip
955961
mingw-w64-${{matrix.env}}-python-numpy
956-
mingw-w64-${{matrix.env}}-python-scipy
957962
mingw-w64-${{matrix.env}}-cmake
958963
mingw-w64-${{matrix.env}}-make
959964
mingw-w64-${{matrix.env}}-python-pytest
960965
mingw-w64-${{matrix.env}}-eigen3
961966
mingw-w64-${{matrix.env}}-boost
962967
mingw-w64-${{matrix.env}}-catch
963968
964-
- uses: actions/checkout@v3
969+
- uses: msys2/setup-msys2@v2
970+
if: matrix.sys == 'mingw64'
971+
with:
972+
msystem: ${{matrix.sys}}
973+
install: >-
974+
git
975+
mingw-w64-${{matrix.env}}-python-scipy
976+
977+
- uses: actions/checkout@v4
965978

966979
- name: Configure C++11
967980
# LTO leads to many undefined reference like
968981
# `pybind11::detail::function_call::function_call(pybind11::detail::function_call&&)
969-
run: cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=11 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON -S . -B build
982+
run: >-
983+
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=11 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
984+
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
985+
-S . -B build
970986
971987
- name: Build C++11
972988
run: cmake --build build -j 2
@@ -984,7 +1000,10 @@ jobs:
9841000
run: git clean -fdx
9851001

9861002
- name: Configure C++14
987-
run: cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=14 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON -S . -B build2
1003+
run: >-
1004+
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=14 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
1005+
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
1006+
-S . -B build2
9881007
9891008
- name: Build C++14
9901009
run: cmake --build build2 -j 2
@@ -1002,7 +1021,10 @@ jobs:
10021021
run: git clean -fdx
10031022

10041023
- name: Configure C++17
1005-
run: cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=17 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON -S . -B build3
1024+
run: >-
1025+
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=17 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
1026+
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
1027+
-S . -B build3
10061028
10071029
- name: Build C++17
10081030
run: cmake --build build3 -j 2
@@ -1032,21 +1054,21 @@ jobs:
10321054
run: env
10331055

10341056
- name: Checkout
1035-
uses: actions/checkout@v3
1057+
uses: actions/checkout@v4
10361058

10371059
- name: Set up Clang
10381060
uses: egor-tensin/setup-clang@v1
10391061

10401062
- name: Setup Python ${{ matrix.python }}
1041-
uses: actions/setup-python@v4
1063+
uses: actions/setup-python@v5
10421064
with:
10431065
python-version: ${{ matrix.python }}
10441066

10451067
- name: Update CMake
10461068
uses: jwlawson/[email protected]
10471069

10481070
- name: Install ninja-build tool
1049-
uses: seanmiddleditch/gha-setup-ninja@v3
1071+
uses: seanmiddleditch/gha-setup-ninja@v4
10501072

10511073
- name: Run pip installs
10521074
run: |
@@ -1101,7 +1123,7 @@ jobs:
11011123
run: env
11021124

11031125
- name: Checkout
1104-
uses: actions/checkout@v3
1126+
uses: actions/checkout@v4
11051127

11061128
- name: Show Clang++ version before brew install llvm
11071129
run: clang++ --version

.github/workflows/configure.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ jobs:
4949
runs-on: ${{ matrix.runs-on }}
5050

5151
steps:
52-
- uses: actions/checkout@v3
52+
- uses: actions/checkout@v4
5353

5454
- name: Setup Python 3.7
55-
uses: actions/setup-python@v4
55+
uses: actions/setup-python@v5
5656
with:
5757
python-version: 3.7
5858
architecture: ${{ matrix.arch }}

.github/workflows/format.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ jobs:
2525
name: Format
2626
runs-on: ubuntu-latest
2727
steps:
28-
- uses: actions/checkout@v3
29-
- uses: actions/setup-python@v4
28+
- uses: actions/checkout@v4
29+
- uses: actions/setup-python@v5
3030
with:
3131
python-version: "3.x"
3232
- name: Add matchers
@@ -43,7 +43,7 @@ jobs:
4343
runs-on: ubuntu-latest
4444
container: silkeh/clang:15-bullseye
4545
steps:
46-
- uses: actions/checkout@v3
46+
- uses: actions/checkout@v4
4747

4848
- name: Install requirements
4949
run: apt-get update && apt-get install -y git python3-dev python3-pytest

.github/workflows/pip.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ jobs:
2828
runs-on: windows-latest
2929

3030
steps:
31-
- uses: actions/checkout@v3
31+
- uses: actions/checkout@v4
3232

3333
- name: Setup 🐍 3.6
34-
uses: actions/setup-python@v4
34+
uses: actions/setup-python@v5
3535
with:
3636
python-version: 3.6
3737

@@ -50,10 +50,10 @@ jobs:
5050
runs-on: ubuntu-latest
5151

5252
steps:
53-
- uses: actions/checkout@v3
53+
- uses: actions/checkout@v4
5454

5555
- name: Setup 🐍 3.8
56-
uses: actions/setup-python@v4
56+
uses: actions/setup-python@v5
5757
with:
5858
python-version: 3.8
5959

@@ -73,13 +73,13 @@ jobs:
7373
run: twine check dist/*
7474

7575
- name: Save standard package
76-
uses: actions/upload-artifact@v3
76+
uses: actions/upload-artifact@v4
7777
with:
7878
name: standard
7979
path: dist/pybind11-*
8080

8181
- name: Save global package
82-
uses: actions/upload-artifact@v3
82+
uses: actions/upload-artifact@v4
8383
with:
8484
name: global
8585
path: dist/pybind11_global-*
@@ -94,12 +94,12 @@ jobs:
9494
needs: [packaging]
9595

9696
steps:
97-
- uses: actions/setup-python@v4
97+
- uses: actions/setup-python@v5
9898
with:
9999
python-version: "3.x"
100100

101101
# Downloads all to directories matching the artifact names
102-
- uses: actions/download-artifact@v3
102+
- uses: actions/download-artifact@v4
103103

104104
- name: Publish standard package
105105
uses: pypa/gh-action-pypi-publish@release/v1

0 commit comments

Comments
 (0)