Revisions of python-pybind11
Ana Guerrero (anag+factory)
accepted
request 1201569
from
Ana Guerrero (anag+factory)
(revision 24)
- update to 2.13.6: * A new self._pybind11_conduit_v1_() method is automatically added to all py::class_-wrapped types, to enable type-safe interoperability between different independent Python/C++ bindings systems, including pybind11 versions with different PYBIND11_INTERNALS_VERSION's. Supported on pybind11 2.11.2, 2.12.1, and 2.13.6+. #5296 * Using __cpp_nontype_template_args instead of __cpp_nontype_template_parameter_class. #5330 * Properly translate C++ exception to Python exception when creating Python buffer from wrapped object. #5324 * Adds an answer (FAQ) for "What is a highly conclusive and simple way to find memory leaks?". #5340 - update to 2.13.5: * Fix includes when using Windows long paths (\?\ prefix). * Support -Wpedantic in C++20 mode. #5322 * Fix and test <ranges> support for py::tuple and py::list. * Fix paths with spaces, including on Windows. (Replaces regression from #5302) #4874 * Remove repetitive words. #5308 * Quote paths from pybind11-config #5302 * Fix typo in Emscripten support when in config mode (CMake) #5301 * A pybind11::detail::type_caster_std_function_specializations feature was added, to support specializations for std::function's with return types that require custom to- Python conversion behavior (to primary use case is to catch and convert exceptions). #4597 * Use PyMutex instead of std::mutex for internal locking in the free-threaded build. #5219 * Add a special type annotation for C++ empty tuple. #5214 * When compiling for WebAssembly, add the required exception flags (CMake 3.13+). #5298 * Make gil_safe_call_once_and_store thread-safe in free- threaded CPython. #5246 * A missing #include <algorithm> in pybind11/typing.h was added to fix build errors (in case user code does not already depend on that include). #5208 * Fix regression introduced in #5201 for GCC<10.3 in C++20 mode. #5205 * Remove extra = when assigning flto value in the case for Clang in CMake. #5207 * Add support for Typing.Callable[..., T]. #5202 * Avoid aligned allocation in free-threaded build in order to support macOS versions before 10.14. #5200 * Support free-threaded CPython (3.13t). Add py::mod_gil_not_used() tag to indicate if a module supports running with the GIL disabled. #5148 * Support for Python 3.6 was removed. (Official end-of-life: 2021-12-23). #5177 * py::list gained a .clear() method. #5153 * Support for Union, Optional, type[T], typing.TypeGuard, typing.TypeIs, typing.Never, typing.NoReturn and typing.Literal was added to pybind11/typing.h. #5166 #5165 #5194 #5193 #5192 * In CMake, if PYBIND11_USE_CROSSCOMPILING is enabled, then CMAKE_CROSSCOMPILING will be respected and will keep pybind11 from accessing the interpreter during configuration. Several CMake variables will be required in this case, but can be deduced from the environment variable SETUPTOOLS_EXT_SUFFIX. The default (currently OFF) may be changed in the future. #5083 * A refcount bug (leading to heap-use-after-free) involving trampoline functions with PyObject * return type was fixed. #5156 * Return py::ssize_t from .ref_count() instead of int. #5139 * A subtle bug involving C++ types with unusual operator& overrides was fixed. #5189 * Support Python 3.13 with minor fix, add to CI. #5127 * Fix mistake affecting old cmake and old boost. #5149 * Build docs updated to feature scikit-build-core and meson- python, and updated setuptools instructions. #5168
Ana Guerrero (anag+factory)
accepted
request 1165773
from
Dirk Mueller (dirkmueller)
(revision 23)
- update to 2.12.0: * pybind11 now supports compiling for NumPy 2. 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 * 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
Dominique Leuenberger (dimstar_suse)
accepted
request 1081812
from
Dirk Mueller (dirkmueller)
(revision 21)
Dominique Leuenberger (dimstar_suse)
accepted
request 1072929
from
Dirk Mueller (dirkmueller)
(revision 20)
- update to 2.10.4: * ``python3 -m pybind11`` gained a ``--version`` option (prints the version and exits). * Fix a warning when pydebug is enabled on Python 3.11. * Ensure ``gil_scoped_release`` RAII is non-copyable. * Ensure the tests dir does not show up with new versions of setuptools. * Better stacklevel for a warning in setuptools helpers.
Dominique Leuenberger (dimstar_suse)
accepted
request 1058218
from
Markéta Machová (mcalabkova)
(revision 19)
Dominique Leuenberger (dimstar_suse)
accepted
request 968080
from
Dirk Mueller (dirkmueller)
(revision 17)
- update to 2.9.2: * Enum now has an ``__index__`` method on Python <3.8 too. * Local internals are now cleared after finalizing the interpreter. * Better support for Python 3.11 alphas. * ``PYBIND11_TYPE_CASTER`` now uses fully qualified symbols, so it can be used outside of ``pybind11::detail``. * Some fixes for PyPy 3.9. * Fixed a potential memleak in PyPy in ``get_type_override``. * Fix usage of ``VISIBILITY_INLINES_HIDDEN``. * Uses ``sysconfig`` module to determine installation locations on Python >= 3.10, instead of ``distutils`` which has been deprecated. * Support Catch 2.13.5+ (supporting GLIBC 2.34+). * Fix test failures with numpy 1.22 by ignoring whitespace when comparing ``str()`` of dtypes.
Dominique Leuenberger (dimstar_suse)
accepted
request 965219
from
Dirk Mueller (dirkmueller)
(revision 16)
- update to 2.9.1: * If possible, attach Python exception with py::raise_from to TypeError when casting from C++ to Python. This will give additional info if Python exceptions occur in the caster. * Add a mapping of C++11 nested exceptions to their Python exception equivalent using py::raise_from. This attaches the nested exceptions in Python using the __cause__ field. * Propagate Python exception traceback using raise_from if a pybind11 function runs out of overloads. * py::multiple_inheritance is now only needed when C++ bases are hidden from pybind11. * Allow py::args to be followed by other arguments; the remaining arguments are implicitly keyword-only, as if a py::kw_only{} annotation had been used. * Fix a rare warning about extra copy in an Eigen constructor. * Fix caching of the C++ overrides. * Add missing std::forward calls to some cpp_function overloads. * Support PyPy 7.3.7 and the PyPy3.8 beta. Test python-3.11 on PRs with the python dev label. * Replace usage of deprecated Eigen::MappedSparseMatrix with Eigen::Map<Eigen::SparseMatrix<...>> for Eigen 3.3+. * Tweaks to support Microsoft Visual Studio 2022.
Dominique Leuenberger (dimstar_suse)
accepted
request 935976
from
Dirk Mueller (dirkmueller)
(revision 15)
- udpate to 2.8.1: * The simple namespace creation shortcut added in 2.8.0 was deprecated due to usage of CPython internal API, and will be removed soon. * Add C++ Exception type to throw and catch ``AttributeError``. * Fixed the potential for dangling references when using properties with ``std::optional`` types. * Modernize usage of ``PyCodeObject`` on Python 3.9+ (moving toward support for Python 3.11a1) * A long-standing bug in ``eigen.h`` was fixed (originally PR #3343). The bug was unmasked by newly added ``static_assert``'s in the Eigen 3.4.0 release. * Support multiple raw inclusion of CMake helper files * Fix harmless warning on upcoming CMake 3.22. * Fix 2.8.0 regression with MSVC 2017 + C++17 mode + Python 3. * Fix 2.8.0 regression that caused undefined behavior (typically segfaults) in ``make_key_iterator``/``make_value_iterator`` if dereferencing the iterator returned a temporary value instead of a reference.
Dominique Leuenberger (dimstar_suse)
accepted
request 930182
from
Dirk Mueller (dirkmueller)
(revision 14)
Dominique Leuenberger (dimstar_suse)
accepted
request 904740
from
Antonio Larrosa (alarrosa)
(revision 13)
Dominique Leuenberger (dimstar_suse)
accepted
request 870296
from
Markéta Machová (mcalabkova)
(revision 11)
Dominique Leuenberger (dimstar_suse)
accepted
request 821409
from
Tomáš Chvátal (scarabeus_iv)
(revision 10)
Dominique Leuenberger (dimstar_suse)
accepted
request 819139
from
Tomáš Chvátal (scarabeus_iv)
(revision 9)
Dominique Leuenberger (dimstar_suse)
accepted
request 796474
from
Tomáš Chvátal (scarabeus_iv)
(revision 8)
- On devel files you need the pybind too to compile anything
Dominique Leuenberger (dimstar_suse)
accepted
request 783977
from
Tomáš Chvátal (scarabeus_iv)
(revision 7)
Staging:I
Dominique Leuenberger (dimstar_suse)
accepted
request 764264
from
Tomáš Chvátal (scarabeus_iv)
(revision 5)
Displaying revisions 1 - 20 of 24