@@ -15,6 +15,100 @@ IN DEVELOPMENT
1515
1616Changes will be summarized here periodically.
1717
18+ Version 2.13.0 (June 25, 2024)
19+ ------------------------------
20+
21+ New Features:
22+
23+ * Support free-threaded CPython (3.13t). Add ``py::mod_gil_not_used() `` tag to
24+ indicate if a module supports running with the GIL disabled.
25+ `#5148 <https://github.com/pybind/pybind11/pull/5148 >`_
26+
27+ * Support for Python 3.6 was removed. (Official end-of-life: 2021-12-23).
28+ `#5177 <https://github.com/pybind/pybind11/pull/5177 >`_
29+
30+ * ``py::list `` gained a ``.clear() `` method.
31+ `#5153 <https://github.com/pybind/pybind11/pull/5153 >`_
32+
33+
34+ .. feat(types)
35+
36+ * Support for ``type[T] `` was added to pybind11/typing.h.
37+ `#5166 <https://github.com/pybind/pybind11/pull/5166 >`_
38+
39+ * ``Union `` and ``Optional `` were added to ``pybind11/typing.h ``.
40+ `#5165 <https://github.com/pybind/pybind11/pull/5165 >`_
41+
42+ .. feat(cmake)
43+
44+ * In CMake, if ``PYBIND11_USE_CROSSCOMPILING `` is enabled, then
45+ ``CMAKE_CROSSCOMPILING `` will be respected and will keep pybind11 from
46+ accessing the interpreter during configuration. Several CMake variables will
47+ be required in this case, but can be deduced from the environment variable
48+ ``SETUPTOOLS_EXT_SUFFIX ``. The default (currently ``OFF ``) may be changed in
49+ the future.
50+ `#5083 <https://github.com/pybind/pybind11/pull/5083 >`_
51+
52+
53+ Bug fixes:
54+
55+ * A refcount bug (leading to heap-use-after-free) involving trampoline
56+ functions with ``PyObject * `` return type was fixed.
57+ `#5156 <https://github.com/pybind/pybind11/pull/5156 >`_
58+
59+ * Return ``py::ssize_t `` from ``.ref_count() `` instead of ``int ``.
60+ `#5139 <https://github.com/pybind/pybind11/pull/5139 >`_
61+
62+ * A subtle bug involving C++ types with unusual ``operator& `` overrides
63+ was fixed.
64+ `#5189 <https://github.com/pybind/pybind11/pull/5189 >`_
65+
66+ * Support Python 3.13 with minor fix, add to CI.
67+ `#5127 <https://github.com/pybind/pybind11/pull/5127 >`_
68+
69+
70+ .. fix(cmake)
71+
72+ * Fix mistake affecting old cmake and old boost.
73+ `#5149 <https://github.com/pybind/pybind11/pull/5149 >`_
74+
75+
76+ Documentation:
77+
78+ * Build docs updated to feature scikit-build-core and meson-python, and updated
79+ setuptools instructions.
80+ `#5168 <https://github.com/pybind/pybind11/pull/5168 >`_
81+
82+
83+ Tests:
84+
85+ * Avoid immortal objects in tests.
86+ `#5150 <https://github.com/pybind/pybind11/pull/5150 >`_
87+
88+
89+ CI:
90+
91+ * Compile against Python 3.13t in CI.
92+
93+ * Use ``macos-13 `` (Intel) for CI jobs for now (will drop Python 3.7 soon).
94+ `#5109 <https://github.com/pybind/pybind11/pull/5109 >`_
95+
96+
97+ Other:
98+
99+ * Some cleanup in preparation for 3.13 support.
100+ `#5137 <https://github.com/pybind/pybind11/pull/5137 >`_
101+
102+ * Avoid a warning by ensuring an iterator end check is included in release mode.
103+ `#5129 <https://github.com/pybind/pybind11/pull/5129 >`_
104+
105+ * Bump max cmake to 3.29.
106+ `#5075 <https://github.com/pybind/pybind11/pull/5075 >`_
107+
108+ * Update docs and noxfile.
109+ `#5071 <https://github.com/pybind/pybind11/pull/5071 >`_
110+
111+
18112Version 2.12.0 (March 27, 2024)
19113-------------------------------
20114
0 commit comments