Skip to content

Commit 1a917f1

Browse files
rwgkhenryiii
andauthored
docs: preparation for v2.11.0 release (#4744)
* Remove .dev1 from version number. * Update Changelog (starting from `nox -s make_changelog` output) * Miscellaneous minor fixes from proofreading in GitHub web view. * docs: minor changelog updates Signed-off-by: Henry Schreiner <[email protected]> --------- Signed-off-by: Henry Schreiner <[email protected]> Co-authored-by: Henry Schreiner <[email protected]>
1 parent b33d06f commit 1a917f1

File tree

4 files changed

+49
-14
lines changed

4 files changed

+49
-14
lines changed

docs/changelog.rst

+40-7
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ Changes will be added here periodically from the "Suggested changelog entry"
1010
block in pull request descriptions.
1111

1212

13-
Version 2.11.0 (June 2, 2023)
13+
Version 2.11.0 (July 14, 2023)
1414
-----------------------------
1515

1616
New 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+
3346
Changes:
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+
7295
Build 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

89122
Version 2.10.4 (Mar 16, 2023)
90123
-----------------------------

docs/release.rst

+6-4
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,12 @@ If you don't have nox, you should either use ``pipx run nox`` instead, or use
3333
- Run ``nox -s tests_packaging`` to ensure this was done correctly.
3434
- Ensure that all the information in ``setup.cfg`` is up-to-date, like
3535
supported Python versions.
36-
- Add release date in ``docs/changelog.rst``.
37-
- Check to make sure
38-
`needs-changelog <https://github.com/pybind/pybind11/pulls?q=is%3Apr+is%3Aclosed+label%3A%22needs+changelog%22>`_
39-
issues are entered in the changelog (clear the label when done).
36+
- Add release date in ``docs/changelog.rst`` and integrate the output of
37+
``nox -s make_changelog``.
38+
- Note that the ``make_changelog`` command inspects
39+
`needs changelog <https://github.com/pybind/pybind11/pulls?q=is%3Apr+is%3Aclosed+label%3A%22needs+changelog%22>`_.
40+
- Manually clear the ``needs changelog`` labels using the GitHub web
41+
interface (very easy: start by clicking the link above).
4042
- ``git add`` and ``git commit``, ``git push``. **Ensure CI passes**. (If it
4143
fails due to a known flake issue, either ignore or restart CI.)
4244
- Add a release branch if this is a new minor version, or update the existing release branch if it is a patch version

include/pybind11/detail/common.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@
1111

1212
#define PYBIND11_VERSION_MAJOR 2
1313
#define PYBIND11_VERSION_MINOR 11
14-
#define PYBIND11_VERSION_PATCH 0.dev1
14+
#define PYBIND11_VERSION_PATCH 0
1515

1616
// Similar to Python's convention: https://docs.python.org/3/c-api/apiabiversion.html
1717
// Additional convention: 0xD = dev
18-
#define PYBIND11_VERSION_HEX 0x020B00D1
18+
#define PYBIND11_VERSION_HEX 0x020B0000
1919

2020
// Define some generic pybind11 helper macros for warning management.
2121
//

pybind11/_version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ def _to_int(s: str) -> Union[int, str]:
88
return s
99

1010

11-
__version__ = "2.11.0.dev1"
11+
__version__ = "2.11.0"
1212
version_info = tuple(_to_int(s) for s in __version__.split("."))

0 commit comments

Comments
 (0)