Ralf W. Grosse-Kunstleve
f1a2e03d19
feat: remove Python 3.6 support ( #5177 )
...
* Change Python version guard: PYTHON < 3.7 IS UNSUPPORTED.
* Replace or remove Python 3.6 jobs.
* Move appveyor to Python 3.8
* Change `[tool.pylint]` `master.py-version` from `3.6` to `3.8`
* Change `[tool.pylint]` `master.py-version` to `3.7`
* Remove `centos:7` job; Change almalinux:8 job to use Python 3.8
* Try 🐍 3.8 • ubuntu-20.04 • x64 without `-DCMAKE_CXX_FLAGS="-D_=1"`
* Update setup.cfg as suggested by @henryiii
* Try running `cmake --build . --target cpptest` on all platforms (`standard` job).
* Disable deadsnakes jobs entirely.
* Apply PR #5179 : Add Python 3.10, 3.11, 3.12 to win32 job matrix.
* Add back `-DCMAKE_CXX_FLAGS="-D_=1"` but do not install boost in that case.
* PY_VERSION_HEX < 3.7 cleanup pass: include/pybind11
* WITH_THREAD cleanup pass: include/pybind11
* Undo incorrect change.
* Revert "Disable deadsnakes jobs entirely."
This reverts commit bbcd0087b2
.
* WITH_THREAD cleanup pass: tests/
* Change Python version guard in pybind11/__init__.py: pybind11 does not support Python < 3.7.
* Misc cleanup pass
* chore: use future imports
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* Update tests/test_numpy_array.py
* Update test_numpy_array.py
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-06-22 00:55:00 -04:00
Ralf W. Grosse-Kunstleve
5552cbf205
Add Python 3.10, 3.11, 3.12 to win32 job matrix. ( #5179 )
...
* Add Python 3.10, 3.11, 3.12 to win32 job matrix.
* Quotes around Python version numbers (win32 job).
* tests/requirements.txt: no scipy for Python >= 3.10 under win32
* Try running `cmake --build . --target cpptest` on all platforms (`standard` job).
2024-06-21 07:41:17 -07:00
Ralf W. Grosse-Kunstleve
1cafcee3b1
Remove incorrectly placed template
keywords to resolve clang 19.0.0 dev errors (see https://github.com/pybind/pybind11/pull/5175 ). ( #5176 )
2024-06-19 14:02:28 -07:00
Ralf W. Grosse-Kunstleve
0c1a5aa479
Tracking ci.yml changes from master.
2024-06-19 10:08:07 -07:00
Ralf W. Grosse-Kunstleve
4068f10787
Merge branch 'master' into sh_merge_master
2024-06-19 10:06:18 -07:00
Henry Schreiner
186df220fd
docs: building suggestions update ( #5168 )
...
* docs: building suggestions update
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* docs: address review comments
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-06-18 17:41:54 -04:00
Sam Gross
baa540ec34
fix: support free-threaded CPython with GIL disabled ( #5148 )
...
* Support free-threaded CPython (PEP 703)
Some additional locking is added in the free-threaded build when
`Py_GIL_DISABLED` is defined:
- Most accesses to internals are protected by a single mutex
- The registered_instances uses a striped lock to improve concurrency
Pybind11 modules can indicate support for running with the GIL disabled
by calling `set_gil_not_used()`.
* refactor: use PYBIND11_MODULE (#11 )
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* Address code review
* Suppress MSVC warning
* Changes from review
* style: pre-commit fixes
* `py::mod_gil_not_used()` suggestion.
* Update include/pybind11/pybind11.h
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ralf W. Grosse-Kunstleve <rwgk@google.com>
2024-06-18 13:54:38 -07:00
dependabot[bot]
1961b96a8c
chore(deps): bump urllib3 from 2.2.1 to 2.2.2 in /docs ( #5170 )
...
Bumps [urllib3](https://github.com/urllib3/urllib3 ) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.2.1...2.2.2 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 00:03:42 -07:00
dependabot[bot]
fdd20d69c7
chore(deps): bump seanmiddleditch/gha-setup-ninja in the actions group ( #5169 )
...
Bumps the actions group with 1 update: [seanmiddleditch/gha-setup-ninja](https://github.com/seanmiddleditch/gha-setup-ninja ).
Updates `seanmiddleditch/gha-setup-ninja` from 4 to 5
- [Release notes](https://github.com/seanmiddleditch/gha-setup-ninja/releases )
- [Commits](https://github.com/seanmiddleditch/gha-setup-ninja/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: seanmiddleditch/gha-setup-ninja
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 20:59:19 -07:00
Michael Carlstrom
7c4ac91d75
Add type[T] support to typing.h ( #5166 )
...
* add type[T]
* style: pre-commit fixes
* fix merge
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-06-15 06:25:43 -07:00
Michael Carlstrom
68405a1141
Add Union
and Optional
to typing.h ( #5165 )
...
* add type unions and optionals
* add type inheritance
* style: pre-commit fixes
* switch to inheriting from object
* style: pre-commit fixes
* fix text case
* style: pre-commit fixes
* fix bind call
* fix function name
* add std::move for older code
* remove std::move
* move away from object creation
* style: pre-commit fixes
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-06-14 21:16:26 -07:00
Ralf W. Grosse-Kunstleve
b739a5324b
Merge branch 'master' into sh_merge_master
2024-06-11 14:34:20 -07:00
Ralf W. Grosse-Kunstleve
bf79caafd9
Remove try_as_void_ptr_capsule
feature from smart_holder branch.
...
This manual removal was informed by reviews of these commits (newest to oldest):
* d930de0bca
* 114c0f2a3e
* 1c10b097a7
* 9d4b4dffce
* da058a2904
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
c4df281e9d
Also remove return_value_policy::_return_as_bytes in pybind11/eigen/
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
afd612b50e
Also remove PYBIND11_HAS_RETURN_VALUE_POLICY_RETURN_AS_BYTES macro.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
0de9906459
Revert "[smart_holder] Add a new return value policy return_as_bytes
( #3838 )"
...
This reverts commit 7064d43bc9
.
Conflicts resolved in:
include/pybind11/eigen.h
tests/test_builtin_casters.cpp
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
e16b9eaa42
Also remove PYBIND11_HAS_RETURN_VALUE_POLICY_CLIF_AUTOMATIC macro.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
7460dc0ce7
Revert "Add return value policy _clif_automatic ( #4343 )"
...
This reverts commit 6d3a0fc319
.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
7a945d8f40
Revert "cast.h return_value_policy_override _clif_automatic ( #4364 )"
...
This reverts commit 8720cf94d6
.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
e9c6fe1a6e
Revert "[smart_holder] Auto select return value policy for clif_automatic ( #4381 )"
...
This reverts commit c1f14f0511
.
Conflicts resolved in:
include/pybind11/detail/smart_holder_type_casters.h
tests/test_return_value_policy_override.py
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
bfb5fce463
Revert "[smart_holder] Keep parent alive when returning raw pointers ( #4609 )"
...
This reverts commit 99cf27a4f5
.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
7d8e6ea5b9
Revert "Add handling of return_value_policy::_clif_automatic
in type_caster_pyobject_ptr.h (backported from https://github.com/google/pywrapcc/pull/30021 )"
...
This reverts commit bd69f7aaf2
.
2024-06-11 14:12:14 -07:00
Ralf W. Grosse-Kunstleve
ab955f158c
Fix refcount bug involving trampoline functions with PyObject *
return type. ( #5156 )
...
* Transfer diff from pybind11k fork as-is. New tests are still missing.
* Add `PYBIND11_WARNING_DISABLE_MSVC(4127)` into `PYBIND11_OVERRIDE_IMPL` macro.
* Add test_trampoline_with_pyobject_ptr_return()
* Resolve clang-tidy error: use auto when initializing with a template cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
* Disabled checking refcount when building with PyPy.
* Clang 3.6, 3.7, 3.9 compatibility.
```
/__w/pybind11/pybind11/tests/test_type_caster_pyobject_ptr.cpp:23:13: error: definition of implicit copy constructor for 'WithPyObjectPtrReturn' is deprecated because it has a user-declared destructor [-Werror,-Wdeprecated]
virtual ~WithPyObjectPtrReturn() = default;
^
```
* Minor clean-up of production code changes.
* Add missing `override` (to resolve clang-tidy error).
* Move PYBIND11_WARNING_POP for a better clang-format outcome.
2024-06-11 14:00:52 -07:00
Ralf W. Grosse-Kunstleve
21d81fc21d
[smart_holder] Fix terrible merge accident: PYBIND11_INTERNALS_SH_DEF
missing in PYBIND11_INTERNALS_ID
and PYBIND11_MODULE_LOCAL_ID
( #5159 )
...
* Fix oversight: Add `-DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"` for new `manylinux` job (Manylinux on 🐍 3.13t • GIL).
* Fix terrible merge accident introduced with pybind/pybind11#5085 : `PYBIND11_INTERNALS_SH_DEF` was accidentally removed from `PYBIND11_INTERNALS_ID` and `PYBIND11_MODULE_LOCAL_ID`.
2024-06-10 18:20:40 -07:00
Ralf W. Grosse-Kunstleve
540c760363
Tracking ci.yml changes from master.
2024-06-09 23:56:33 -07:00
Ralf W. Grosse-Kunstleve
6b3b69777e
Merge branch 'master' into sh_merge_master
2024-06-09 23:55:50 -07:00
Thierry Coppey
35ff42b56e
Add a pybind function to clear a list. ( #5153 )
...
* Add a pybing function to clear a list.
* Add required error handling.
* Add `/* py-non-const */` as suggested by @Skylion007
---------
Co-authored-by: Ralf W. Grosse-Kunstleve <rwgk@google.com>
2024-06-07 13:54:33 -07:00
Pieter P
9b3a200065
fix(cmake): improved cross-compilation support ( #5083 )
...
* fix(cmake): do not use Python::Interpreter when cross-compiling
* chore: apply cmake-format to pybind11NewTools.cmake
* fix(cmake): do not look for Python Interpreter component when cross-compiling
* feat(cmake): guess Python extension suffix
* fix: add pybind11GuessPythonExtSuffix.cmake to packaging test
* Use PYBIND11_CROSSCOMPILING instead of CMAKE_CROSSCOMPILING
* refactor: require PYBIND11_USE_CROSSCOMPILING
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-06-06 17:17:54 -04:00
pre-commit-ci[bot]
b9794be437
chore(deps): update pre-commit hooks ( #5154 )
...
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.4.5 → v0.4.7](https://github.com/astral-sh/ruff-pre-commit/compare/v0.4.5...v0.4.7 )
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-06-06 14:08:18 -07:00
Henry Schreiner
1a0ff40549
tests: avoid immortal objects in tests ( #5150 )
...
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-05-30 01:40:55 -04:00
Henry Schreiner
7187894e02
fix(cmake): old cmake boost bug ( #5149 )
2024-05-29 20:33:25 -04:00
Henry Schreiner
ae6432b817
fix: Python 3.13t with GIL ( #5139 )
...
* ci: try Python 3.13t
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* fix: support Python 3.13t
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* fix: patch PyPy
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* tests: one more int cast
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* tests: cleanup
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* refactor: use named constant in tests for immortal refcounts
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* docs: move comment about free threaded Python
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-05-28 09:07:59 -04:00
Cliff Burdick
a5b9e50f68
fix: added check on iterator end position ( #5129 )
...
* Added check on iterator end position
* Always use assert without conditional check
* Addressing code review comments
* style: pre-commit fixes
* Remove assert and throw
* Changed style slightly
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-05-28 01:49:19 -04:00
Henry Schreiner
ce08e37042
fix: handle NULL correctly ( #5145 )
2024-05-27 15:03:51 -04:00
Ralf W. Grosse-Kunstleve
f4bc71f981
Tracking ci.yml changes from master.
2024-05-26 21:14:56 -07:00
Ralf W. Grosse-Kunstleve
92abccdd49
Merge branch 'master' into sh_merge_master
2024-05-26 21:14:20 -07:00
Henry Schreiner
86a64290dc
chore: some cleanup ( #5137 )
2024-05-24 12:26:40 -04:00
Henry Schreiner
4d0fcedc26
fix: support Python 3.13.0b1 (PEP 667 fix) ( #5127 )
...
* ci: add Python 3.13
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* tests: run the gc for 3.13+
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* Revert "tests: run the gc for 3.13+"
This reverts commit fe8a3ce3d1
.
* ci: drop macos ARM for now, need pin updates
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* fix: use Python 3.13 API if on 3.13
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-05-24 11:00:30 -04:00
dependabot[bot]
b07fddb219
--- ( #5130 )
...
updated-dependencies:
- dependency-name: requests
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 01:41:59 -04:00
pre-commit-ci[bot]
aa98d95717
chore(deps): update pre-commit hooks ( #5123 )
...
* chore(deps): update pre-commit hooks
updates:
- [github.com/pre-commit/mirrors-clang-format: v18.1.2 → v18.1.4](https://github.com/pre-commit/mirrors-clang-format/compare/v18.1.2...v18.1.4 )
- [github.com/astral-sh/ruff-pre-commit: v0.3.5 → v0.4.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.5...v0.4.3 )
- [github.com/pre-commit/mirrors-mypy: v1.9.0 → v1.10.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.9.0...v1.10.0 )
- [github.com/pre-commit/pre-commit-hooks: v4.5.0 → v4.6.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.5.0...v4.6.0 )
- [github.com/python-jsonschema/check-jsonschema: 0.28.1 → 0.28.2](https://github.com/python-jsonschema/check-jsonschema/compare/0.28.1...0.28.2 )
* style: pre-commit fixes
* Update .pre-commit-config.yaml
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2024-05-10 17:03:51 -04:00
dependabot[bot]
ede061ca0c
chore(deps): bump the actions group with 1 update ( #5082 )
...
* chore(deps): bump the actions group with 1 update
Bumps the actions group with 1 update: [actions/labeler](https://github.com/actions/labeler ).
Updates `actions/labeler` from 4 to 5
- [Release notes](https://github.com/actions/labeler/releases )
- [Commits](https://github.com/actions/labeler/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/labeler
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com>
* ci: fix labeler
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* ci: move eigen to 64-bit only
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-05-10 16:34:41 -04:00
dependabot[bot]
750257797c
chore(deps): bump jinja2 from 3.1.3 to 3.1.4 in /docs ( #5122 )
...
Bumps [jinja2](https://github.com/pallets/jinja ) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases )
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst )
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4 )
---
updated-dependencies:
- dependency-name: jinja2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 13:39:26 -04:00
dependabot[bot]
c9747570f5
chore(deps): bump idna from 3.6 to 3.7 in /docs ( #5121 )
...
Bumps [idna](https://github.com/kjd/idna ) from 3.6 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases )
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst )
- [Commits](https://github.com/kjd/idna/compare/v3.6...v3.7 )
---
updated-dependencies:
- dependency-name: idna
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 12:59:41 -04:00
nobkd
6497b3f2f2
docs(numpy): drop duplicated ndim ( #5119 )
2024-05-06 12:42:05 -04:00
Henry Schreiner
a9256a6d25
chore: docs and nox bump ( #5071 )
...
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-05-06 12:22:14 -04:00
Henry Schreiner
f39847947d
ci: macos-latest is changing to macos-14 ARM runners ( #5109 )
...
Committed via https://github.com/asottile/all-repos
2024-05-06 12:11:41 -04:00
Tim Stumbaugh
19a6b9f4ef
Fix typo in changelog date ( #5096 )
...
This was actually released in 2024!
2024-04-09 13:14:49 -07:00
Ralf W. Grosse-Kunstleve
cfe73560a2
Fix merge accident in pybind11/detail/descr.h ( #5086 )
...
This was noticed only when manually reviewing the diffs with the Google review tools.
2024-04-02 11:11:44 -07:00
Ralf W. Grosse-Kunstleve
08a97daf32
Merge branch 'master' into sh_merge_master
2024-04-02 08:20:56 -07:00
pre-commit-ci[bot]
f33f6afb66
chore(deps): update pre-commit hooks ( #5084 )
...
* chore(deps): update pre-commit hooks
updates:
- [github.com/pre-commit/mirrors-clang-format: v17.0.6 → v18.1.2](https://github.com/pre-commit/mirrors-clang-format/compare/v17.0.6...v18.1.2 )
- [github.com/astral-sh/ruff-pre-commit: v0.2.0 → v0.3.5](https://github.com/astral-sh/ruff-pre-commit/compare/v0.2.0...v0.3.5 )
- [github.com/pre-commit/mirrors-mypy: v1.8.0 → v1.9.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.8.0...v1.9.0 )
- [github.com/Lucas-C/pre-commit-hooks: v1.5.4 → v1.5.5](https://github.com/Lucas-C/pre-commit-hooks/compare/v1.5.4...v1.5.5 )
- [github.com/sirosen/texthooks: 0.6.4 → 0.6.6](https://github.com/sirosen/texthooks/compare/0.6.4...0.6.6 )
- [github.com/shellcheck-py/shellcheck-py: v0.9.0.6 → v0.10.0.1](https://github.com/shellcheck-py/shellcheck-py/compare/v0.9.0.6...v0.10.0.1 )
- [github.com/PyCQA/pylint: v3.0.3 → v3.1.0](https://github.com/PyCQA/pylint/compare/v3.0.3...v3.1.0 )
- [github.com/python-jsonschema/check-jsonschema: 0.28.0 → 0.28.1](https://github.com/python-jsonschema/check-jsonschema/compare/0.28.0...0.28.1 )
* style: pre-commit fixes
* fix(types): correction for better typing
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
---------
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-04-02 11:14:08 -04:00