python3-nanobind: Upgrade 3.0.0 -> 3.1.0

Upgrade to release 3.1.0:

- Python subclasses can now combine one nanobind base with
  additional :ref:`Python mixins <python_mixins>`, including
  cooperative super() calls on CPython and PyPy. Inheriting from
  multiple nanobind bases remains unsupported.
- The low-level instance API gained
  :cpp:func:`nb::inst_python_derived() <inst_python_derived>`,
  which reports whether a nanobind instance belongs to a
  Python subclass of the bound type.
- Added new low-level functions :cpp:func:`nb::keep_alive_obj()
  <keep_alive_obj>` and :cpp:func:`nb::keep_alive_cb()
  <keep_alive_cb>`, which expose the mechanism behind the
  :cpp:class:`nb::keep_alive <keep_alive>` annotation.
- The new function :cpp:func:`intrusive_counter::ref_count()`
  returns the reference count of an intrusively reference-counted
  object while it is owned by C++.
- Fixed stale trampoline override caches on PyPy. Changing an
  attribute of a nanobind type now correctly invalidates the caches
  of its Python subclasses.
- The std::map/std::unordered_map and std::set type casters can now
  also handle containers like std::flat_map whose iterators return
  temporary values.
- The :ref:`Bazel documentation <bazel>` was rewritten and now
  presents an approach based on the Bazel Central Registry.
- Miscellaneous minor improvements.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Leon Anavi
2026-09-22 11:36:20 -07:00
committed by Khem Raj
parent ae0db48cac
commit bc6b98c7ce
@@ -4,7 +4,7 @@ HOMEPAGE = "https://github.com/wjakob/nanobind"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=7646f9ee25e49eaf53f89a10665c568c"
SRC_URI[sha256sum] = "68583c41d58af77649b830407d2ba84627f21f07ad4ae2e32c6988fb96eaa71a"
SRC_URI[sha256sum] = "6661e3dc1434d78781ccf7913442d90361dab395c3424efadb63bbb6ddea7ea3"
inherit pypi cmake python_setuptools_build_meta