Next | Query returned 25 messages, browsing 1 to 10 | Previous

History of commit frequency

CVS Commit History:

   2024-04-06 08:34:39 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-pybind11: update to 2.12.0.

Convert to

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


    Small fix to grammar in functions.rst. #4791
    Remove upper bound in example pyproject.toml for setuptools. #4774


    CI: Update NVHPC to 23.5 and Ubuntu 20.04. #4764
    Test on PyPy 3.10. #4714


    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 so it works
   2023-12-29 21:27:03 by Tobias Nygren | Files touched by this commit (1)
Log message:
py-pybind11: avoid duplicate pre-configure target in gnuradio-core
   2023-12-28 14:29:26 by Dr. Thomas Orgis | Files touched by this commit (4)
Log message:
devel/py-pybind11: resolve the self-conflict

This renames the pybind11-config script with a versioned suffix as done
elsewhere. The buildlink file provides the unsuffixed script for dependents
to use.
   2023-11-29 11:53:11 by Jonathan Perkin | Files touched by this commit (1)
Log message:
py-pybind11: Default to python for build only.

This has a default DEPMETHOD of "build", so this helps avoid
unwanted indirect buildlink3 dependencies from python.
   2023-07-17 21:08:10 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pybind11: updated to 2.11.1

Version 2.11.1


PYBIND11_NO_ASSERT_GIL_HELD_INCREF_DECREF is now provided as an option for \ 
disabling the default-on PyGILState_Check()'s in pybind11::handle's inc_ref() \ 
& dec_ref().

PYBIND11_ASSERT_GIL_HELD_INCREF_DECREF was disabled for PyPy in general (not \ 
just PyPy Windows).

Version 2.11.0

New features:

The newly added pybind11::detail::is_move_constructible trait can be specialized \ 
for cases in which std::is_move_constructible does not work as needed. This is \ 
very similar to the long-established pybind11::detail::is_copy_constructible.
Introduce recursive_container_traits.
pybind11/type_caster_pyobject_ptr.h was added to support automatic wrapping of \ 
APIs that make use of PyObject *. This header needs to included explicitly (i.e. \ 
it is not included implicitly with pybind/pybind11.h).
format_descriptor<> & npy_format_descriptor<> PyObject * \ 
specializations were added. The latter enables py::array_t<PyObject *> \ 
to/from-python conversions.
buffer_info gained an item_type_is_equivalent_to<T>() member function.
The capsule API gained a user-friendly constructor (py::capsule(ptr, \ 
"name", dtor)).


PyGILState_Check()'s in pybind11::handle's inc_ref() & dec_ref() are now \ 
enabled by default again.
py::initialize_interpreter() using PyConfig_InitPythonConfig() instead of \ 
PyConfig_InitIsolatedConfig(), to obtain complete sys.path.
Cast errors now always include Python type information, even if \ 
PYBIND11_DETAILED_ERROR_MESSAGES is not defined. This increases binary sizes \ 
slightly (~1.5%) but the error messages are much more informative.
The docstring generation for the std::array-list caster was fixed. Previously, \ 
signatures included the size of the list in a non-standard, non-spec compliant \ 
way. The new format conforms to PEP 593. Tooling for processing the docstrings \ 
may need to be updated accordingly.
Setter return values (which are inaccessible for all practical purposes) are no \ 
longer converted to Python (only to be discarded).
Allow lambda specified to function definition to be noexcept(true) in C++17.
Get rid of recursive template instantiations for concatenating type signatures \ 
on C++17 and higher.
Compatibility with Python 3.12 (beta). Note that the minimum pybind11 ABI \ 
version for Python 3.12 is version 5. (The default ABI version for Python \ 
versions up to and including 3.11 is still version 4.).
With PYBIND11_INTERNALS_VERSION 5 (default for Python 3.12+), MSVC builds use \ 
std::hash<std::type_index> and std::equal_to<std::type_index> \ 
instead of string-based type comparisons. This resolves issues when binding \ 
types defined in the unnamed namespace.
Python exception __notes__ (introduced with Python 3.11) are now added to the \ 
error_already_set::what() output.

Build system improvements:

CMake 3.27 support was added, CMake 3.4 support was dropped. FindPython will be \ 
used if FindPythonInterp is not present.
Update clang-tidy to 15 in CI.
Moved the linting framework over to Ruff.
Skip lto checks and target generation when CMAKE_INTERPROCEDURAL_OPTIMIZATION is \ 
No longer inject -stdlib=libc++, not needed for modern Pythons (macOS 10.9+).
PyPy 3.10 support was added, PyPy 3.7 support was dropped.
Testing with Python 3.12 beta releases was added.
   2023-03-17 08:58:06 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pybind11: updated to 2.10.4

Version 2.10.4


python3 -m pybind11 gained a --version option (prints the version and exits).

Bug Fixes:

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.
   2023-01-11 20:00:31 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pybind11: updated to 2.10.3

Version 2.10.3


Temporarily made our GIL status assertions (added in 2.10.2) disabled by default \ 
(re-enable manually by defining PYBIND11_ASSERT_GIL_HELD_INCREF_DECREF, will be \ 
enabled in 2.11).
Improved error messages when inc_ref/dec_ref are called with an invalid GIL state.

Bug Fixes:

Some minor touchups found by static analyzers.
   2022-12-28 11:10:14 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pybind11: updated to 2.10.2

Version 2.10.2


scoped_interpreter constructor taking PyConfig.
pybind11/eigen/tensor.h adds converters to and from Eigen::Tensor and \ 
PyGILState_Check()'s were integrated to pybind11::handle inc_ref() & \ 
dec_ref(). The added GIL checks are guarded by \ 
PYBIND11_ASSERT_GIL_HELD_INCREF_DECREF, which is the default only if NDEBUG is \ 
not defined.
Add option for enable/disable enum members in docstring.
Fixed typing of KeysView, ValuesView and ItemsView in bind_map.

Bug fixes:

Bug fix affecting only Python 3.6 under very specific, uncommon conditions: move \ 
PyEval_InitThreads() call to the correct location.
Fix segfault bug when passing foreign native functions to functional.h.

Build system improvements:

Support setting PYTHON_LIBRARIES manually for Windows ARM cross-compilation \ 
(classic mode).
Extend IPO/LTO detection for ICX (a.k.a IntelLLVM) compiler.
Allow calling find_package(pybind11 CONFIG) multiple times from separate \ 
directories in the same CMake project and properly link Python (new mode).
multiprocessing_set_spawn in pytest fixture for added safety.
Fixed a bug in two pybind11/tools cmake scripts causing "Unknown arguments \ 
specified" errors.
   2022-11-02 09:47:53 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pybind11: updated to 2.10.1

Version 2.10.1
This is the first version to fully support embedding the newly released Python 3.11.


Allow pybind11::capsule constructor to take null destructor pointers.
embed.h was changed so that PYTHONPATH is used also with Python 3.11 \ 
(established behavior).
A PYBIND11_SIMPLE_GIL_MANAGEMENT option was added (cmake, C++ define), along \ 
with many additional tests in The option may be useful to \ 
try when debugging GIL-related issues, to determine if the more complex default \ 
implementation is or is not to blame. See
PYBIND11_EXPORT_EXCEPTION was made non-empty only under macOS. This makes Linux \ 
builds safer, and enables the removal of warning suppression pragmas for \ 

Bug fixes:

Fixed a bug where UnicodeDecodeError was not propagated from various py::str \ 
ctors when decoding surrogate utf characters.
Revert perfect forwarding for make_iterator. This broke at least one valid use \ 
case. May revisit later.
Fix support for safe casts to void* (regression in 2.10.0).
Fix char8_t support (regression in 2.9).
Unicode surrogate character in Python exception message leads to process \ 
termination in error_already_set::what().
Fix MSVC 2019 v.1924 & C++14 mode error for overload_cast.
Make augmented assignment operators non-const for the object-api. Behavior was \ 
previously broken for augmented assignment operators.
Add proper error checking to C++ bindings for Python list append and insert.
Work-around for Nvidia's CUDA nvcc compiler in versions 11.4.0 - 11.8.0.
A workaround for PyPy was added in the py::error_already_set implementation, \ 
related to PR
Fixed compiler errors when C++23 std::forward_like is available.
Properly raise exceptions in contains methods (like when an object in unhashable).
Further improve another error in exception handling.
get_local_internals() was made compatible with finalize_interpreter(), fixing \ 
potential freezes during interpreter finalization.

Performance and style:

Reserve space in set and STL map casters if possible. This will prevent \ 
unnecessary rehashing / resizing by knowing the number of keys ahead of time for \ 
Python to C++ casting. This improvement will greatly speed up the casting of \ 
large unordered maps and sets.
GIL RAII scopes are non-copyable to avoid potential bugs.
Explicitly default all relevant ctors for pytypes in the PYBIND11_OBJECT macros \ 
and enforce the clang-tidy checks modernize-use-equals-default in macros as \ 
Optimize iterator advancement in C++ bindings.
Use the modern PyObject_GenericGetDict and PyObject_GenericSetDict for handling \ 
dynamic attribute dictionaries.
Document that users should use PYBIND11_NAMESPACE instead of using pybind11 when \ 
opening namespaces. Using namespace declarations and namespace qualification \ 
remain the same as pybind11. This is done to ensure consistent symbol \ 
Mark detail::forward_like as constexpr.
Optimize unpacking_collector when processing arg_v arguments.
Optimize casting C++ object to None.

Build system improvements:

CMake: revert overwrite behavior, now opt-in with PYBIND11_PYTHONLIBS_OVERRWRITE OFF.
Include a pkg-config file when installing pybind11, such as in the Python package.
Avoid stripping debug symbols when CMAKE_BUILD_TYPE is set to DEBUG instead of Debug.
Followup to

Next | Query returned 25 messages, browsing 1 to 10 | Previous