and vice versa, mainly to create Python bindings of existing C++ code. Its
2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862) |
Log message:
py-*: remove unused tool dependency
py-setuptools includes the py-wheel functionality nowadays
|
2024-09-14 10:05:20 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-pybind11: updated to 2.13.6
2.13.6
New Features:
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+.
Bug fixes:
Using __cpp_nontype_template_args instead of __cpp_nontype_template_parameter_class.
Properly translate C++ exception to Python exception when creating Python buffer \
from wrapped object.
Documentation:
Adds an answer (FAQ) for "What is a highly conclusive and simple way to \
find memory leaks?".
|
2024-08-24 09:07:21 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-pybind11: updated to 2.13.5
Version 2.13.5
Bug fixes:
Fix includes when using Windows long paths (\\?\ prefix).
Support -Wpedantic in C++20 mode.
Fix and test <ranges> support for py::tuple and py::list.
|
2024-08-15 09:26:18 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-pybind11: updated to 2.13.4
Version 2.13.4
Bug fixes:
Fix paths with spaces, including on Windows.
Documentation:
Remove repetitive words.
|
2024-08-14 08:21:50 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-pybind11: updated to 2.13.3
Version 2.13.3
Bug fixes:
Quote paths from pybind11-config
Fix typo in Emscripten support when in config mode (CMake)
Version 2.13.2
New Features:
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).
Changes:
Use PyMutex instead of std::mutex for internal locking in the free-threaded build.
Add a special type annotation for C++ empty tuple.
When compiling for WebAssembly, add the required exception flags (CMake 3.13+).
Bug fixes:
Make gil_safe_call_once_and_store thread-safe in free-threaded CPython.
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).
Fix regression introduced in 5201 for GCC<10.3 in C++20 mode.
Remove extra = when assigning flto value in the case for Clang in CMake.
Tests:
Adding WASM testing to our CI (Pyodide / Emscripten via scikit-build-core).
clang-tidy (in GitHub Actions) was updated from clang 15 to clang 18.
|
2024-07-01 00:02:55 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
py-pybind11: update to 2.13.1.
2.13.1
New Features:
Add support for Typing.Callable[..., T]. #5202
Bug fixes:
Avoid aligned allocation in free-threaded build in order to support macOS \
versions before 10.14. #5200
2.13.0
New Features:
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
Bug fixes:
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
Documentation:
Build docs updated to feature scikit-build-core and meson-python, and \
updated setuptools instructions. #5168
Tests:
Avoid immortal objects in tests. #5150
CI:
Compile against Python 3.13t in CI.
Use macos-13 (Intel) for CI jobs for now (will drop Python 3.7 soon). #5109
Releases now have artifact attestations, visible at \
https://github.com/pybind/pybind11/attestations. #5196
Other:
Some cleanup in preparation for 3.13 support. #5137
Avoid a warning by ensuring an iterator end check is included in release \
mode. #5129
Bump max cmake to 3.29. #5075
Update docs and noxfile. #5071
|
2024-04-06 08:34:39 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
py-pybind11: update to 2.12.0.
Convert to wheel.mk.
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
Documentation:
Small fix to grammar in functions.rst. #4791
Remove upper bound in example pyproject.toml for setuptools. #4774
CI:
CI: Update NVHPC to 23.5 and Ubuntu 20.04. #4764
Test on PyPy 3.10. #4714
Other:
Use Ruff formatter instead of Black. #4912
An assert() was added to help Coverty avoid generating a false positive. #4817
|
2024-01-03 16:22:06 by Thomas Klausner | Files touched by this commit (1) |
Log message:
py-pybind11: disallow Python 2 before including pyversion.mk so it works
|