@@ -10,15 +10,15 @@ Changes will be added here periodically from the "Suggested changelog entry"
1010block in pull request descriptions.
1111
1212
13- Version 2.11.0 (June 2 , 2023)
13+ Version 2.11.0 (July 14 , 2023)
1414-----------------------------
1515
1616New features:
1717
18- * ``pybind11::detail::is_move_constructible `` can now be specialized for cases
19- in which ``std::is_move_constructible `` does not work as needed. This is
20- very similar to the long-established
21- ``pybind11::detail::is_copy_constructible ``.
18+ * The newly added ``pybind11::detail::is_move_constructible `` trait can be
19+ specialized for cases in which ``std::is_move_constructible `` does not work
20+ as needed. This is very similar to the long-established
21+ ``pybind11::detail::is_copy_constructible ``.
2222 `#4631 <https://github.com/pybind/pybind11/pull/4631 >`_
2323
2424* Introduce ``recursive_container_traits ``.
@@ -30,6 +30,19 @@ New features:
3030 with ``pybind/pybind11.h ``).
3131 `#4601 <https://github.com/pybind/pybind11/pull/4601 >`_
3232
33+ * ``format_descriptor<> `` & ``npy_format_descriptor<> `` ``PyObject * ``
34+ specializations were added. The latter enables ``py::array_t<PyObject *> ``
35+ to/from-python conversions.
36+ `#4674 <https://github.com/pybind/pybind11/pull/4674 >`_
37+
38+ * ``buffer_info `` gained an ``item_type_is_equivalent_to<T>() `` member
39+ function.
40+ `#4674 <https://github.com/pybind/pybind11/pull/4674 >`_
41+
42+ * The ``capsule `` API gained a user-friendly constructor
43+ (``py::capsule(ptr, "name", dtor) ``).
44+ `#4720 <https://github.com/pybind/pybind11/pull/4720 >`_
45+
3346Changes:
3447
3548* ``PyGILState_Check() ``'s in ``pybind11::handle ``'s ``inc_ref() `` &
@@ -46,6 +59,12 @@ Changes:
4659 sizes slightly (~1.5%) but the error messages are much more informative.
4760 `#4463 <https://github.com/pybind/pybind11/pull/4463 >`_
4861
62+ * The docstring generation for the ``std::array ``-list caster was fixed.
63+ Previously, signatures included the size of the list in a non-standard,
64+ non-spec compliant way. The new format conforms to PEP 593.
65+ **Tooling for processing the docstrings may need to be updated accordingly. **
66+ `#4679 <https://github.com/pybind/pybind11/pull/4679 >`_
67+
4968* Setter return values (which are inaccessible for all practical purposes) are
5069 no longer converted to Python (only to be discarded).
5170 `#4621 <https://github.com/pybind/pybind11/pull/4621 >`_
@@ -58,7 +77,7 @@ Changes:
5877 signatures on C++17 and higher.
5978 `#4587 <https://github.com/pybind/pybind11/pull/4587 >`_
6079
61- * Compatibility with Python 3.12 (alpha ). Note that the minimum pybind11
80+ * Compatibility with Python 3.12 (beta ). Note that the minimum pybind11
6281 ABI version for Python 3.12 is version 5. (The default ABI version
6382 for Python versions up to and including 3.11 is still version 4.).
6483 `#4570 <https://github.com/pybind/pybind11/pull/4570 >`_
@@ -69,22 +88,36 @@ Changes:
6988 types defined in the unnamed namespace.
7089 `#4319 <https://github.com/pybind/pybind11/pull/4319 >`_
7190
91+ * Python exception ``__notes__ `` (introduced with Python 3.11) are now added to
92+ the ``error_already_set::what() `` output.
93+ `#4678 <https://github.com/pybind/pybind11/pull/4678 >`_
94+
7295Build system improvements:
7396
97+ * CMake 3.27 support was added, CMake 3.4 support was dropped.
98+ FindPython will be used if ``FindPythonInterp `` is not present.
99+ `#4719 <https://github.com/pybind/pybind11/pull/4719 >`_
100+
74101* Update clang-tidy to 15 in CI.
75102 `#4387 <https://github.com/pybind/pybind11/pull/4387 >`_
76103
77104* Moved the linting framework over to Ruff.
78105 `#4483 <https://github.com/pybind/pybind11/pull/4483 >`_
79106
80- * Skip lto checks and target generation when
107+ * Skip `` lto `` checks and target generation when
81108 ``CMAKE_INTERPROCEDURAL_OPTIMIZATION `` is defined.
82109 `#4643 <https://github.com/pybind/pybind11/pull/4643 >`_
83110
84111* No longer inject ``-stdlib=libc++ ``, not needed for modern Pythons
85112 (macOS 10.9+).
86113 `#4639 <https://github.com/pybind/pybind11/pull/4639 >`_
87114
115+ * PyPy 3.10 support was added, PyPy 3.7 support was dropped.
116+ `#4728 <https://github.com/pybind/pybind11/pull/4728 >`_
117+
118+ * Testing with Python 3.12 beta releases was added.
119+ `#4713 <https://github.com/pybind/pybind11/pull/4713 >`_
120+
88121
89122Version 2.10.4 (Mar 16, 2023)
90123-----------------------------
0 commit comments