Sat Apr 6 06:34:39 2024 UTC (50d)
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


(wiz)
diff -r1.19 -r1.20 pkgsrc/devel/py-pybind11/Makefile
diff -r1.8 -r1.9 pkgsrc/devel/py-pybind11/PLIST
diff -r1.17 -r1.18 pkgsrc/devel/py-pybind11/distinfo

cvs diff -r1.19 -r1.20 pkgsrc/devel/py-pybind11/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/py-pybind11/Makefile 2024/01/03 15:22:06 1.19
+++ pkgsrc/devel/py-pybind11/Makefile 2024/04/06 06:34:39 1.20
@@ -1,27 +1,27 @@ @@ -1,27 +1,27 @@
1# $NetBSD: Makefile,v 1.19 2024/01/03 15:22:06 wiz Exp $ 1# $NetBSD: Makefile,v 1.20 2024/04/06 06:34:39 wiz Exp $
2 2
3DISTNAME= pybind11-2.11.1 3DISTNAME= pybind11-2.12.0
4PATCHLEVEL= 1 
5PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
6CATEGORIES= devel python 5CATEGORIES= devel python
7MASTER_SITES= ${MASTER_SITE_PYPI:=p/pybind11/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=p/pybind11/}
8 7
9MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
10HOMEPAGE= https://github.com/pybind/pybind11 9HOMEPAGE= https://github.com/pybind/pybind11
11COMMENT= Seamless operability between C++11 and Python 10COMMENT= Seamless operability between C++11 and Python
12LICENSE= modified-bsd 11LICENSE= modified-bsd
13 12
 13TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
 14TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
 15
14USE_LANGUAGES= # none 16USE_LANGUAGES= # none
15 17
16PYTHON_VERSIONS_INCOMPATIBLE= 27 18PYTHON_VERSIONS_INCOMPATIBLE= 27
17 19
18.include "../../lang/python/pyversion.mk" 20.include "../../lang/python/pyversion.mk"
19 21
20post-install: 22post-install:
21 cd ${DESTDIR}${PREFIX}/bin && \ 23 cd ${DESTDIR}${PREFIX}/bin && \
22 ${MV} pybind11-config pybind11-config-${PYVERSSUFFIX} || ${TRUE} 24 ${MV} pybind11-config pybind11-config-${PYVERSSUFFIX} || ${TRUE}
23 25
24USE_PKG_RESOURCES= yes 26.include "../../lang/python/wheel.mk"
25 
26.include "../../lang/python/egg.mk" 
27.include "../../mk/bsd.pkg.mk" 27.include "../../mk/bsd.pkg.mk"

cvs diff -r1.8 -r1.9 pkgsrc/devel/py-pybind11/PLIST (expand / switch to unified diff)

--- pkgsrc/devel/py-pybind11/PLIST 2023/12/28 13:29:26 1.8
+++ pkgsrc/devel/py-pybind11/PLIST 2024/04/06 06:34:39 1.9
@@ -1,22 +1,21 @@ @@ -1,22 +1,21 @@
1@comment $NetBSD: PLIST,v 1.8 2023/12/28 13:29:26 thor Exp $ 1@comment $NetBSD: PLIST,v 1.9 2024/04/06 06:34:39 wiz Exp $
2bin/pybind11-config-${PYVERSSUFFIX} 2bin/pybind11-config-${PYVERSSUFFIX}
3${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 3${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
4${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 4${PYSITELIB}/${WHEEL_INFODIR}/METADATA
5${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 5${PYSITELIB}/${WHEEL_INFODIR}/RECORD
6${PYSITELIB}/${EGG_INFODIR}/entry_points.txt 6${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
7${PYSITELIB}/${EGG_INFODIR}/not-zip-safe 7${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
8${PYSITELIB}/${EGG_INFODIR}/requires.txt 8${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
9${PYSITELIB}/${EGG_INFODIR}/top_level.txt 
10${PYSITELIB}/pybind11/__init__.py 9${PYSITELIB}/pybind11/__init__.py
11${PYSITELIB}/pybind11/__init__.pyc 10${PYSITELIB}/pybind11/__init__.pyc
12${PYSITELIB}/pybind11/__init__.pyo 11${PYSITELIB}/pybind11/__init__.pyo
13${PYSITELIB}/pybind11/__main__.py 12${PYSITELIB}/pybind11/__main__.py
14${PYSITELIB}/pybind11/__main__.pyc 13${PYSITELIB}/pybind11/__main__.pyc
15${PYSITELIB}/pybind11/__main__.pyo 14${PYSITELIB}/pybind11/__main__.pyo
16${PYSITELIB}/pybind11/_version.py 15${PYSITELIB}/pybind11/_version.py
17${PYSITELIB}/pybind11/_version.pyc 16${PYSITELIB}/pybind11/_version.pyc
18${PYSITELIB}/pybind11/_version.pyo 17${PYSITELIB}/pybind11/_version.pyo
19${PYSITELIB}/pybind11/commands.py 18${PYSITELIB}/pybind11/commands.py
20${PYSITELIB}/pybind11/commands.pyc 19${PYSITELIB}/pybind11/commands.pyc
21${PYSITELIB}/pybind11/commands.pyo 20${PYSITELIB}/pybind11/commands.pyo
22${PYSITELIB}/pybind11/include/pybind11/attr.h 21${PYSITELIB}/pybind11/include/pybind11/attr.h
@@ -30,35 +29,37 @@ ${PYSITELIB}/pybind11/include/pybind11/d @@ -30,35 +29,37 @@ ${PYSITELIB}/pybind11/include/pybind11/d
30${PYSITELIB}/pybind11/include/pybind11/detail/descr.h 29${PYSITELIB}/pybind11/include/pybind11/detail/descr.h
31${PYSITELIB}/pybind11/include/pybind11/detail/init.h 30${PYSITELIB}/pybind11/include/pybind11/detail/init.h
32${PYSITELIB}/pybind11/include/pybind11/detail/internals.h 31${PYSITELIB}/pybind11/include/pybind11/detail/internals.h
33${PYSITELIB}/pybind11/include/pybind11/detail/type_caster_base.h 32${PYSITELIB}/pybind11/include/pybind11/detail/type_caster_base.h
34${PYSITELIB}/pybind11/include/pybind11/detail/typeid.h 33${PYSITELIB}/pybind11/include/pybind11/detail/typeid.h
35${PYSITELIB}/pybind11/include/pybind11/eigen.h 34${PYSITELIB}/pybind11/include/pybind11/eigen.h
36${PYSITELIB}/pybind11/include/pybind11/eigen/common.h 35${PYSITELIB}/pybind11/include/pybind11/eigen/common.h
37${PYSITELIB}/pybind11/include/pybind11/eigen/matrix.h 36${PYSITELIB}/pybind11/include/pybind11/eigen/matrix.h
38${PYSITELIB}/pybind11/include/pybind11/eigen/tensor.h 37${PYSITELIB}/pybind11/include/pybind11/eigen/tensor.h
39${PYSITELIB}/pybind11/include/pybind11/embed.h 38${PYSITELIB}/pybind11/include/pybind11/embed.h
40${PYSITELIB}/pybind11/include/pybind11/eval.h 39${PYSITELIB}/pybind11/include/pybind11/eval.h
41${PYSITELIB}/pybind11/include/pybind11/functional.h 40${PYSITELIB}/pybind11/include/pybind11/functional.h
42${PYSITELIB}/pybind11/include/pybind11/gil.h 41${PYSITELIB}/pybind11/include/pybind11/gil.h
 42${PYSITELIB}/pybind11/include/pybind11/gil_safe_call_once.h
43${PYSITELIB}/pybind11/include/pybind11/iostream.h 43${PYSITELIB}/pybind11/include/pybind11/iostream.h
44${PYSITELIB}/pybind11/include/pybind11/numpy.h 44${PYSITELIB}/pybind11/include/pybind11/numpy.h
45${PYSITELIB}/pybind11/include/pybind11/operators.h 45${PYSITELIB}/pybind11/include/pybind11/operators.h
46${PYSITELIB}/pybind11/include/pybind11/options.h 46${PYSITELIB}/pybind11/include/pybind11/options.h
47${PYSITELIB}/pybind11/include/pybind11/pybind11.h 47${PYSITELIB}/pybind11/include/pybind11/pybind11.h
48${PYSITELIB}/pybind11/include/pybind11/pytypes.h 48${PYSITELIB}/pybind11/include/pybind11/pytypes.h
49${PYSITELIB}/pybind11/include/pybind11/stl.h 49${PYSITELIB}/pybind11/include/pybind11/stl.h
50${PYSITELIB}/pybind11/include/pybind11/stl/filesystem.h 50${PYSITELIB}/pybind11/include/pybind11/stl/filesystem.h
51${PYSITELIB}/pybind11/include/pybind11/stl_bind.h 51${PYSITELIB}/pybind11/include/pybind11/stl_bind.h
52${PYSITELIB}/pybind11/include/pybind11/type_caster_pyobject_ptr.h 52${PYSITELIB}/pybind11/include/pybind11/type_caster_pyobject_ptr.h
 53${PYSITELIB}/pybind11/include/pybind11/typing.h
53${PYSITELIB}/pybind11/py.typed 54${PYSITELIB}/pybind11/py.typed
54${PYSITELIB}/pybind11/setup_helpers.py 55${PYSITELIB}/pybind11/setup_helpers.py
55${PYSITELIB}/pybind11/setup_helpers.pyc 56${PYSITELIB}/pybind11/setup_helpers.pyc
56${PYSITELIB}/pybind11/setup_helpers.pyo 57${PYSITELIB}/pybind11/setup_helpers.pyo
57${PYSITELIB}/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake 58${PYSITELIB}/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake
58${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Common.cmake 59${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Common.cmake
59${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Config.cmake 60${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Config.cmake
60${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11ConfigVersion.cmake 61${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11ConfigVersion.cmake
61${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11NewTools.cmake 62${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11NewTools.cmake
62${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Targets.cmake 63${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Targets.cmake
63${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Tools.cmake 64${PYSITELIB}/pybind11/share/cmake/pybind11/pybind11Tools.cmake
64${PYSITELIB}/pybind11/share/pkgconfig/pybind11.pc 65${PYSITELIB}/pybind11/share/pkgconfig/pybind11.pc

cvs diff -r1.17 -r1.18 pkgsrc/devel/py-pybind11/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/py-pybind11/distinfo 2023/07/17 19:08:10 1.17
+++ pkgsrc/devel/py-pybind11/distinfo 2024/04/06 06:34:39 1.18
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.17 2023/07/17 19:08:10 adam Exp $ 1$NetBSD: distinfo,v 1.18 2024/04/06 06:34:39 wiz Exp $
2 2
3BLAKE2s (pybind11-2.11.1.tar.gz) = 8f998a791cb24d66c9ac51748026380b050f80674c2149668ac8730397569957 3BLAKE2s (pybind11-2.12.0.tar.gz) = e2208bf7b7f555ce8a0b83dc43677ace84fa11038651051c24aef1f7bdae49c5
4SHA512 (pybind11-2.11.1.tar.gz) = 5f98b73ac96f08a390d8ba4ace552afaca4d06f5bce62234a1199d400560d1e3fcb17aa04a5a17661228e0eea8880b0a517dddc1f3e6c774d89c5463a628db0f 4SHA512 (pybind11-2.12.0.tar.gz) = 80ce986cd75f54634245f0a7340952cac56343006661d033d4fbfe960dcc899d957569fa8f02bb3035860d7b7577ac7128fc940d7150d9361d14c65de2ca0d8d
5Size (pybind11-2.11.1.tar.gz) = 205844 bytes 5Size (pybind11-2.12.0.tar.gz) = 211887 bytes