Commit Graph

259 Commits

Author SHA1 Message Date
Ralf W. Grosse-Kunstleve
3036510bb7 Merge branch 'master' into sh_merge_master 2022-12-05 14:35:42 -08:00
dependabot[bot]
a6e75e4d8a
chore(deps): bump pypa/gh-action-pypi-publish from 1.5.2 to 1.6.1 (#4384)
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.5.2 to 1.6.1.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/v1.5.2...v1.6.1)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 01:03:05 -08:00
dependabot[bot]
6a1023e3e9
chore(deps): bump deadsnakes/action from 2.1.1 to 3.0.0 (#4383)
Bumps [deadsnakes/action](https://github.com/deadsnakes/action) from 2.1.1 to 3.0.0.
- [Release notes](https://github.com/deadsnakes/action/releases)
- [Commits](https://github.com/deadsnakes/action/compare/v2.1.1...v3.0.0)

---
updated-dependencies:
- dependency-name: deadsnakes/action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 01:01:45 -08:00
Ralf W. Grosse-Kunstleve
5b55f8fe82
Replace ubuntu-latest with ubuntu-22.04 (#4382)
* Replace 🐍 3.6 • ubuntu-latest • x64 -DPYBIND11_FINDPYTHON=ON -DCMAKE_CXX_FLAGS="-D_=1" with 3.9

* Revert "Replace 🐍 3.6 • ubuntu-latest • x64 -DPYBIND11_FINDPYTHON=ON -DCMAKE_CXX_FLAGS="-D_=1" with 3.9"

This reverts commit 3ec984e1ed.

* Systematically change all active ubuntu-latest to ubuntu-20.04, except in upstream.yml

* Revert "Systematically change all active ubuntu-latest to ubuntu-20.04, except in upstream.yml"

This reverts commit cdfd99526a.

* Change only some ubuntu-latest to ubuntu-20.04
2022-12-04 19:39:25 -08:00
Ralf W. Grosse-Kunstleve
8f54f4f48c Tracking ci.yml changes from master. 2022-12-02 05:30:03 -08:00
Ralf W. Grosse-Kunstleve
10d4aa7476 Merge branch 'master' into sh_merge_master_3 2022-12-02 05:28:58 -08:00
dependabot[bot]
b14d58b615
chore(deps): bump pypa/gh-action-pypi-publish from 1.5.1 to 1.5.2 (#4370)
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/v1.5.1...v1.5.2)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-30 23:30:36 -08:00
Ralf W. Grosse-Kunstleve
d095a9bcff Tracking ci.yml changes from master. 2022-11-18 10:08:11 -08:00
Ralf W. Grosse-Kunstleve
645bcd47d0 Add macos_brew_install_llvm to ci.yml (#4326)
* Add macos_brew_install_llvm to ci.yml

Added block transferred from PR #4324

* `test_cross_module_exception_translator` xfail 'Homebrew Clang'

* Add `pip install numpy scipy` (tested already under PR #4324).
2022-11-18 10:08:11 -08:00
Ralf W. Grosse-Kunstleve
e76293d699 Add windows_clang to ci.yml (#4323)
* Add windows_clang to ci.yml (previously tested under PRs #4321, #4319)

* Add `pip install --upgrade pip`, Show env, cosmetic changes

Already tested under PR #4321
2022-11-18 10:08:11 -08:00
Ralf W. Grosse-Kunstleve
296615ad34
Add macos_brew_install_llvm to ci.yml (#4326)
* Add macos_brew_install_llvm to ci.yml

Added block transferred from PR #4324

* `test_cross_module_exception_translator` xfail 'Homebrew Clang'

* Add `pip install numpy scipy` (tested already under PR #4324).
2022-11-12 12:24:19 -08:00
Ralf W. Grosse-Kunstleve
1f04cc7062
Add windows_clang to ci.yml (#4323)
* Add windows_clang to ci.yml (previously tested under PRs #4321, #4319)

* Add `pip install --upgrade pip`, Show env, cosmetic changes

Already tested under PR #4321
2022-11-10 08:33:26 -08:00
Ralf W. Grosse-Kunstleve
fcdb9bae21 Tracking ci.yml changes from master. 2022-10-30 13:33:08 -07:00
Ralf W. Grosse-Kunstleve
4928b03bae Merge branch 'master' into sh_merge_master 2022-10-30 13:26:32 -07:00
Chekov2k
b07d08f600
Add PYBIND11_SIMPLE_GIL_MANAGEMENT option (cmake, C++ define) (#4216)
* Add option to force the use of the PYPY GIL scoped acquire/release logic to support nested gil access, see https://github.com/pybind/pybind11/issues/1276 and https://github.com/pytorch/pytorch/issues/83101

* Apply suggestions from code review

* Update CMakeLists.txt

* docs: update upgrade guide

* Update docs/upgrade.rst

* All bells & whistles.

* Add Reminder to common.h, so that we will not forget to purge `!WITH_THREAD` branches when dropping Python 3.6

* New sentence instead of semicolon.

* Temporarily pull in snapshot of PR #4246

* Add `test_release_acquire`

* Add more unit tests for nested gil locking

* Add test_report_builtins_internals_keys

* Very minor enhancement: sort list only after filtering.

* Revert change in docs/upgrade.rst

* Add test_multi_acquire_release_cross_module, while also forcing unique PYBIND11_INTERNALS_VERSION for cross_module_gil_utils.cpp

* Hopefully fix apparently new ICC error.

```
2022-10-28T07:57:54.5187728Z -- The CXX compiler identification is Intel 2021.7.0.20220726
...
2022-10-28T07:58:53.6758994Z icpc: remark #10441: The Intel(R) C++ Compiler Classic (ICC) is deprecated and will be removed from product release in the second half of 2023. The Intel(R) oneAPI DPC++/C++ Compiler (ICX) is the recommended compiler moving forward. Please transition to use this compiler. Use '-diag-disable=10441' to disable this message.
2022-10-28T07:58:54.5801597Z In file included from /home/runner/work/pybind11/pybind11/include/pybind11/detail/../detail/type_caster_base.h(15),
2022-10-28T07:58:54.5803794Z                  from /home/runner/work/pybind11/pybind11/include/pybind11/detail/../cast.h(15),
2022-10-28T07:58:54.5805740Z                  from /home/runner/work/pybind11/pybind11/include/pybind11/detail/../attr.h(14),
2022-10-28T07:58:54.5809556Z                  from /home/runner/work/pybind11/pybind11/include/pybind11/detail/class.h(12),
2022-10-28T07:58:54.5812154Z                  from /home/runner/work/pybind11/pybind11/include/pybind11/pybind11.h(13),
2022-10-28T07:58:54.5948523Z                  from /home/runner/work/pybind11/pybind11/tests/cross_module_gil_utils.cpp(13):
2022-10-28T07:58:54.5949009Z /home/runner/work/pybind11/pybind11/include/pybind11/detail/../detail/internals.h(177): error #2282: unrecognized GCC pragma
2022-10-28T07:58:54.5949374Z       PYBIND11_TLS_KEY_INIT(tstate)
2022-10-28T07:58:54.5949579Z       ^
2022-10-28T07:58:54.5949695Z
```

* clang-tidy fixes

* Workaround for PYPY WIN exitcode None

* Revert "Temporarily pull in snapshot of PR #4246"

This reverts commit 23ac16e859150f27fda25ca865cabcb4444e0770.

* Another workaround for PYPY WIN exitcode None

* Clean up how the tests are run "run in process" Part 1: uniformity

* Clean up how the tests are run "run in process" Part 2: use `@pytest.mark.parametrize` and clean up the naming.

* Skip some tests `#if defined(THREAD_SANITIZER)` (tested with TSAN using the Google-internal toolchain).

* Run all tests again but ignore ThreadSanitizer exitcode 66 (this is less likely to mask unrelated ThreadSanitizer issues in the future).

* bug fix: missing common.h include before using `PYBIND11_SIMPLE_GIL_MANAGEMENT`

For the tests in the github CI this does not matter, because
`PYBIND11_SIMPLE_GIL_MANAGEMENT` is always defined from the command line,
but when monkey-patching common.h locally, it matters.

* if process.exitcode is None: assert t_delta > 9.9

* More sophisiticated `_run_in_process()` implementation, clearly reporting `DEADLOCK`, additionally exercised via added `intentional_deadlock()`

* Wrap m.intentional_deadlock in a Python function, for `ForkingPickler` compatibility.

```
>       ForkingPickler(file, protocol).dump(obj)
E       TypeError: cannot pickle 'PyCapsule' object
```

Observed with all Windows builds including mingw but not PyPy, and macos-latest with Python 3.9, 3.10, 3.11 but not 3.6.

* Add link to potential solution for WOULD-BE-NICE-TO-HAVE feature.

* Add `SKIP_IF_DEADLOCK = True` option, to not pollute the CI results with expected `DEADLOCK` failures while we figure out what to do about them.

* Add COPY-PASTE-THIS: gdb ... command (to be used for debugging the detected deadlock)

* style: pre-commit fixes

* Do better than automatic pre-commit fixes.

* Add `PYBIND11_SIMPLE_GIL_MANAGEMENT` to `pytest_report_header()` (so that we can easily know when harvesting deadlock information from the CI logs).

Co-authored-by: Arnim Balzer <arnim@seechange.ai>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
Co-authored-by: Ralf W. Grosse-Kunstleve <rwgk@google.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-10-30 08:57:23 -07:00
Henry Schreiner
fcb5554d9f
ci: move to final release of 3.11 (#4286)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-10-26 10:41:51 -04:00
Henry Schreiner
128d988ef1 ci: fix labeler 2022-10-20 10:37:12 -04:00
Henry Schreiner
c3854682e6
ci(fix): don't label weekly dep updates & ci fixes (#4264)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-10-20 09:39:19 -04:00
Ralf W. Grosse-Kunstleve
17c6809165
ci: update PGI build (old one no longer signed) (#4260)
* Simply replace "22.3" with "22.9" to see what happens.

* Remove PYBIND11_TEST_FILTER to see what happens.

* Revert "Remove PYBIND11_TEST_FILTER to see what happens."

This reverts commit 0cba2cef0c.

* Remove only test_smart_ptr.cpp to see what happens.

* Revert "Remove only test_smart_ptr.cpp to see what happens."

This reverts commit 8e9df22c85.

* Remove only test_virtual_functions.cpp to see what happens.
2022-10-20 08:49:52 -04:00
Ralf W. Grosse-Kunstleve
ac516df0de Tracking ci.yml changes from master. 2022-10-17 16:33:22 -07:00
Ralf W. Grosse-Kunstleve
c7a0c882c6 Merge branch 'master' into sh_merge_master 2022-10-17 16:32:48 -07:00
dependabot[bot]
5b5547bc1b
chore(deps): bump ilammy/msvc-dev-cmd from 1.11.0 to 1.12.0 (#4242)
Bumps [ilammy/msvc-dev-cmd](https://github.com/ilammy/msvc-dev-cmd) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/ilammy/msvc-dev-cmd/releases)
- [Commits](https://github.com/ilammy/msvc-dev-cmd/compare/v1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: ilammy/msvc-dev-cmd
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-17 17:57:55 -04:00
dependabot[bot]
ff7b69714d
chore(deps): bump jwlawson/actions-setup-cmake from 1.12 to 1.13 (#4233)
Bumps [jwlawson/actions-setup-cmake](https://github.com/jwlawson/actions-setup-cmake) from 1.12 to 1.13.
- [Release notes](https://github.com/jwlawson/actions-setup-cmake/releases)
- [Commits](https://github.com/jwlawson/actions-setup-cmake/compare/v1.12...v1.13)

---
updated-dependencies:
- dependency-name: jwlawson/actions-setup-cmake
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-11 00:50:40 -04:00
Ralf W. Grosse-Kunstleve
38182082f3 Tracking ci.yml changes from master. 2022-10-09 21:56:46 -07:00
Ralf W. Grosse-Kunstleve
67561bc6d2 Merge branch 'master' into smart_holder 2022-10-09 21:55:40 -07:00
Axel Huebl
6cb214748d
fix: NVCC 11.4.0 - 11.8.0 host bug workaround (#4220)
* Work-Around: NVCC 11.4.0 - 11.8.0

Adds a targeted NVCC work around for limited number of CUDA
releases. Fixed in NVCC development.

* style: pre-commit fixes

* CI: Bump CTK Version 11.2 -> 11.7

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-10-07 00:02:57 -04:00
Aaron Gokaslan
95d0e71a65
test C++14 on MSVC (#4191) 2022-09-21 11:20:07 -04:00
Ralf W. Grosse-Kunstleve
4e1e2fe62a Tracking ci.yml changes from master. 2022-09-15 05:37:03 -07:00
Ralf W. Grosse-Kunstleve
e5a5a83c61 Merge branch 'master' into sh_merge_master 2022-09-15 05:35:19 -07:00
dependabot[bot]
283f10dc55
chore(deps): bump ilammy/msvc-dev-cmd from 1.10.0 to 1.11.0 (#4161)
Bumps [ilammy/msvc-dev-cmd](https://github.com/ilammy/msvc-dev-cmd) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/ilammy/msvc-dev-cmd/releases)
- [Commits](https://github.com/ilammy/msvc-dev-cmd/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: ilammy/msvc-dev-cmd
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-29 23:26:53 -04:00
Ralf W. Grosse-Kunstleve
6df86934c2 Merge branch 'master' into sh_merge_master 2022-08-21 19:32:35 -07:00
Ralf W. Grosse-Kunstleve
1f6e9a8945 Merge branch 'master' into sh_merge_master 2022-08-07 15:43:25 -07:00
Ralf W. Grosse-Kunstleve
29f4940cd4
Fix copy-paste oversight (#4118) 2022-08-05 08:05:40 -07:00
Ralf W. Grosse-Kunstleve
3665530264
Add -DPYBIND11_WERROR=ON to mingw cmake commands (#4073)
* Add `-DPYBIND11_WERROR=ON` to mingw cmake commands (and `-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON`).

* Using no-destructor idiom to side-step overzealous MINGW warning.

* Add __MINGW32__ pragma GCC diagnostic ignored in eigen.h

* Add another no-destructor workaround.

* Temporarily add -k (keep-going) flags to hopefully speed up finding all warnings.

* Revert "Temporarily add -k (keep-going) flags to hopefully speed up finding all warnings."

This reverts commit f36b0af8f9.

* Very minor shuffle to avoid MSVC warnings.

* Remove all `:BOOL` as suggested by @henryiii
2022-08-01 06:18:48 -07:00
dependabot[bot]
1e3400b674
chore(deps): bump pypa/gh-action-pypi-publish from 1.5.0 to 1.5.1 (#4091)
Bumps [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)
- [Commits](https://github.com/pypa/gh-action-pypi-publish/compare/v1.5.0...v1.5.1)

---
updated-dependencies:
- dependency-name: pypa/gh-action-pypi-publish
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-28 21:37:47 -04:00
Ralf W. Grosse-Kunstleve
e32f73bf3e Tracking ci.yml changes from master. 2022-07-21 06:55:23 -07:00
Ralf W. Grosse-Kunstleve
4d774ec218 Merge branch 'master' into sh_merge_master 2022-07-21 06:53:22 -07:00
Ralf W. Grosse-Kunstleve
9a2963734d
More systematic gcc & clang coverage (#4083)
* More systematic gcc coverage, based on https://github.com/pybind/pybind11/pull/4074#issuecomment-1188385580

* Fix complete fail.

* Resolve GCC 11 & 12 "redundant move in return statement" warnings.

* Also add clang 11, 12, 13 (to gather info for warning suppressions).

* Add & use `PYBIND11_DETECTED_CLANG_WITH_MISLEADING_CALL_STD_MOVE_EXPLICITLY_WARNING`
2022-07-21 06:40:34 -07:00
Henry Schreiner
7c3a031766
chore: bump clang-tidy to 13 (#3997)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-07-13 09:06:32 -05:00
Ralf W. Grosse-Kunstleve
3bd20627d3 Tracking ci.yml changes from master. 2022-07-09 21:50:08 -07:00
Ralf W. Grosse-Kunstleve
27ce64fc43 Merge branch 'master' into sh_merge_master 2022-07-09 21:47:49 -07:00
Aaron Gokaslan
2af163d9c7
Fix: 3.11 beta support (#3923)
* Placeholder commit for 3.11 testing

* Does this fix it?

* Try suggestion

* Placeholder commit for 3.11 testing

* Does this fix it?

* Try suggestion

* fix: try using modern init for embedded interp

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* fix: error message changed in 3.11

* fix: apply logic in Python manually

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* fix autodetect dynamic attrs in 3.11

* fix: include error message if possible in error

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* ci: enable standard Python 3.11 testing

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* Make dynamic attrs condtiion exclusive to ver.

Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-07-06 16:35:12 -04:00
dependabot[bot]
bc1f9f9ba6
chore(deps): bump actions/setup-python from 3 to 4 (#3999)
* chore(deps): bump actions/setup-python from 3 to 4

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Apply suggestions from code review

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2022-07-04 10:24:55 -04:00
Ralf W. Grosse-Kunstleve
f158f96634 Tracking ci.yml changes from master. 2022-06-27 22:28:18 -07:00
Ralf W. Grosse-Kunstleve
cad2609381 Merge branch 'master' into smart_holder 2022-06-27 22:24:23 -07:00
Henry Schreiner
c3e9173f0f
ci: use almalinux instead of centos, add 9 (#4020)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-06-21 14:55:49 -04:00
dependabot[bot]
0e956a2e4f
chore(deps): bump pre-commit/action from 2.0.3 to 3.0.0 (#3992)
Bumps [pre-commit/action](https://github.com/pre-commit/action) from 2.0.3 to 3.0.0.
- [Release notes](https://github.com/pre-commit/action/releases)
- [Commits](https://github.com/pre-commit/action/compare/v2.0.3...v3.0.0)

---
updated-dependencies:
- dependency-name: pre-commit/action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-08 09:22:57 -04:00
Ralf W. Grosse-Kunstleve
50220aeb09 Tracking ci.yml changes from master. 2022-05-17 16:39:11 -07:00
Ralf W. Grosse-Kunstleve
bdf22c8ee7 Merge branch 'master' into sh_merge_master 2022-05-17 16:37:59 -07:00
Henry Schreiner
1a7b12983e
ci: fix cuda issue & MSVC spurious warning (#3950)
* ci: fix cuda issue

* ci: cuda 11.3-11.4 produce warnings -> errors

* tests: ignore unused warning for MSVC

* Update tests/CMakeLists.txt
2022-05-16 17:27:19 -04:00