Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build(deps): bump pybind11 from 2.11.1 to 2.12.0 #289

Merged
merged 1 commit into from
Mar 29, 2024

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 28, 2024

Bumps pybind11 from 2.11.1 to 2.12.0.

Release notes

Sourced from pybind11's releases.

Version 2.12.0

New Features:

  • pybind11 now supports compiling for NumPy 2. Most code shouldn't change (see upgrade-guide-2.12 for details). However, if you experience issues you can define PYBIND11_NUMPY_1_ONLY to disable the new support for now, but this will be removed in the future. #5050
  • pybind11/gil_safe_call_once.h was added (it needs to be included explicitly). The primary use case is GIL-safe initialization of C++ static variables. #4877
  • Support move-only iterators in py::make_iterator, py::make_key_iterator, py::make_value_iterator. #4834
  • Two simple py::set_error() functions were added and the documentation was updated accordingly. In particular, py::exception<>::operator() was deprecated (use one of the new functions instead). The documentation for py::exception<> was further updated to not suggest code that may result in undefined behavior. #4772

Bug fixes:

  • Removes potential for Undefined Behavior during process teardown. #4897
  • Improve compatibility with the nvcc compiler (especially CUDA 12.1/12.2). #4893
  • pybind11/numpy.h now imports NumPy's multiarray and _internal submodules with paths depending on the installed version of NumPy (for compatibility with NumPy 2). #4857
  • Builtins collections names in docstrings are now consistently rendered in lowercase (list, set, dict, tuple), in accordance with PEP 585. #4833
  • Added py::typing::Iterator<T>, py::typing::Iterable<T>. #4832
  • Render py::function as Callable in docstring. #4829
  • Also bump PYBIND11_INTERNALS_VERSION for MSVC, which unlocks two new features without creating additional incompatibilities. #4819
  • Guard against crashes/corruptions caused by modules built with different MSVC versions. #4779
  • A long-standing bug in the handling of Python multiple inheritance was fixed. See PR #4762 for the rather complex details. #4762
  • Fix bind_map with using declarations. #4952
  • Qualify py::detail::concat usage to avoid ADL selecting one from somewhere else, such as modernjson's concat. #4955
  • Use new PyCode API on Python 3.12+. #4916
  • Minor cleanup from warnings reported by Clazy. #4988
  • Remove typing and duplicate class_ for KeysView/ValuesView/ItemsView. #4985
  • Use PyObject_VisitManagedDict() and PyObject_ClearManagedDict() on Python 3.13 and newer. #4973
  • Update make_static_property_type() to make it compatible with Python 3.13. #4971
  • Render typed iterators for make_iterator, make_key_iterator, make_value_iterator. #4876
  • Add several missing type name specializations. #5073
  • Change docstring render for py::buffer, py::sequence and py::handle (to Buffer, Sequence, Any). #4831
  • Fixed base_enum.__str__ docstring. #4827
  • Enforce single line docstring signatures. #4735
  • Special 'typed' wrappers now available in typing.h to annotate tuple, dict, list, set, and function. #4259
  • Create handle_type_name specialization to type-hint variable length tuples. #5051
  • Setting PYBIND11_FINDPYTHON to OFF will force the old FindPythonLibs mechanism to be used. #5042
  • Skip empty PYBIND11_PYTHON_EXECUTABLE_LAST for the first cmake run. #4856
  • Fix FindPython mode exports & avoid pkg_resources if importlib.metadata available. #4941
  • Python_ADDITIONAL_VERSIONS (classic search) now includes 3.12. #4909
  • pybind11.pc is now relocatable by default as long as install destinations are not absolute paths. #4830
  • Correctly detect CMake FindPython removal when used as a subdirectory. #4806
  • Don't require the libs component on CMake 3.18+ when using PYBIND11_FINDPYTHON (fixes manylinux builds). #4805
  • pybind11_strip is no longer automatically applied when CMAKE_BUILD_TYPE is unset. #4780
  • Support DEBUG_POSFIX correctly for debug builds. #4761
  • Hardcode lto/thin lto for Emscripten cross-compiles. #4642
  • Upgrade maximum supported CMake version to 3.27 to fix CMP0148 warnings. #4786

... (truncated)

Changelog

Sourced from pybind11's changelog.

Version 2.12.0 (March 27, 2025)

New Features:

  • pybind11 now supports compiling for NumPy 2 <https://numpy.org/devdocs/numpy_2_0_migration_guide.html>. Most code shouldn't change (see :ref:upgrade-guide-2.12 for details). However, if you experience issues you can define PYBIND11_NUMPY_1_ONLY to disable the new support for now, but this will be removed in the future. [#5050](https://github.com/pybind/pybind11/issues/5050) <https://github.com/pybind/pybind11/pull/5050>

  • pybind11/gil_safe_call_once.h was added (it needs to be included explicitly). The primary use case is GIL-safe initialization of C++ static variables. [#4877](https://github.com/pybind/pybind11/issues/4877) <https://github.com/pybind/pybind11/pull/4877>_

  • Support move-only iterators in py::make_iterator, py::make_key_iterator, py::make_value_iterator. [#4834](https://github.com/pybind/pybind11/issues/4834) <https://github.com/pybind/pybind11/pull/4834>_

  • Two simple py::set_error() functions were added and the documentation was updated accordingly. In particular, py::exception<>::operator() was deprecated (use one of the new functions instead). The documentation for py::exception<> was further updated to not suggest code that may result in undefined behavior. [#4772](https://github.com/pybind/pybind11/issues/4772) <https://github.com/pybind/pybind11/pull/4772>_

Bug fixes:

  • Removes potential for Undefined Behavior during process teardown. [#4897](https://github.com/pybind/pybind11/issues/4897) <https://github.com/pybind/pybind11/pull/4897>_

  • Improve compatibility with the nvcc compiler (especially CUDA 12.1/12.2). [#4893](https://github.com/pybind/pybind11/issues/4893) <https://github.com/pybind/pybind11/pull/4893>_

  • pybind11/numpy.h now imports NumPy's multiarray and _internal submodules with paths depending on the installed version of NumPy (for compatibility with NumPy 2). [#4857](https://github.com/pybind/pybind11/issues/4857) <https://github.com/pybind/pybind11/pull/4857>_

  • Builtins collections names in docstrings are now consistently rendered in lowercase (list, set, dict, tuple), in accordance with PEP 585. [#4833](https://github.com/pybind/pybind11/issues/4833) <https://github.com/pybind/pybind11/pull/4833>_

  • Added py::typing::Iterator<T>, py::typing::Iterable<T>. [#4832](https://github.com/pybind/pybind11/issues/4832) <https://github.com/pybind/pybind11/pull/4832>_

  • Render py::function as Callable in docstring. [#4829](https://github.com/pybind/pybind11/issues/4829) <https://github.com/pybind/pybind11/pull/4829>_

... (truncated)

Commits
  • 3e9dfa2 docs: a few missed changes for 2.12 (#5074)
  • 6b5674f chore: prepare 2.12.0 (#5070)
  • 67c9c56 fix: fully qualify usages of concat to protect against ADL (#4955)
  • 0efff79 Bug fixes: Add missing handle_type_name specializations. (#5073)
  • 705efcc feat: make numpy.h compatible with both NumPy 1.x and 2.x (#5050)
  • e0f2c71 tests: hide warning on clang (#5069)
  • 65370f3 Create handle_type_name specialization to type-hint variable length tuples (#...
  • ddb8b67 fix(cmake): allow forcing old FindPython (#5042)
  • ec73bda ci: skipping test for Windows Clang failure (#5062)
  • 8b48ff8 chore(deps): bump the actions group with 3 updates (#5024)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [pybind11](https://github.com/pybind/pybind11) from 2.11.1 to 2.12.0.
- [Release notes](https://github.com/pybind/pybind11/releases)
- [Changelog](https://github.com/pybind/pybind11/blob/master/docs/changelog.rst)
- [Commits](pybind/pybind11@v2.11.1...v2.12.0)

---
updated-dependencies:
- dependency-name: pybind11
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Mar 28, 2024
@cauliyang cauliyang merged commit 3a081d8 into main Mar 29, 2024
12 checks passed
@cauliyang cauliyang deleted the dependabot/pip/pybind11-2.12.0 branch March 29, 2024 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant