Path to this page:
./
devel/py-pybind11,
Seamless operability between C++11 and Python
Branch: CURRENT,
Version: 2.11.1,
Package name: py311-pybind11-2.11.1,
Maintainer: pkgsrc-userspybind11 is a lightweight header-only library that exposes C++ types in Python
and vice versa, mainly to create Python bindings of existing C++ code. Its
goals and syntax are similar to the excellent Boost.Python by David Abrahams:
to minimize boilerplate code in traditional extension modules by inferring type
information using compile-time introspection.
Required to run:[
devel/py-setuptools] [
lang/python37]
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 201.02 KB
Version history: (Expand)
- (2023-11-29) Updated to version: py311-pybind11-2.11.1
- (2023-07-17) Updated to version: py310-pybind11-2.11.1
- (2023-03-17) Updated to version: py310-pybind11-2.10.4
- (2023-01-11) Updated to version: py310-pybind11-2.10.3
- (2022-12-28) Updated to version: py310-pybind11-2.10.2
- (2022-11-02) Updated to version: py310-pybind11-2.10.1
CVS history: (Expand)
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
|
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 buildlink3.mk 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) | |
Log message:
py-pybind11: updated to 2.11.1
Version 2.11.1
Changes:
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)).
Changes:
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 \
defined.
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) | |
Log message:
py-pybind11: updated to 2.10.4
Version 2.10.4
Changes:
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) | |
Log message:
py-pybind11: updated to 2.10.3
Version 2.10.3
Changes:
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) | |
Log message:
py-pybind11: updated to 2.10.2
Version 2.10.2
Changes:
scoped_interpreter constructor taking PyConfig.
pybind11/eigen/tensor.h adds converters to and from Eigen::Tensor and \
Eigen::TensorMap
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.
|