diff mbox series

[meta-python,20/22] python3-wrapt: Upgrade 2.5.1 -> 2.5.2

Message ID 20261103102350.1952237-20-leon.anavi@konsulko.com
State Under Review
Headers show
Series [meta-python,01/22] python3-anyio: Upgrade 4.15.1 -> 4.16.0 | expand

Commit Message

Leon Anavi Nov. 3, 2026, 10:23 a.m. UTC
Upgrade to release 2.5.2:

- The special methods added to the class generated for an
  wrapt.AutoObjectProxy, and adjusted when __wrapped__ was
  reassigned, were determined by inspecting the wrapped object
  itself, rather than the type of the wrapped object. As special
  methods are only ever looked up on the type of an object, this
  gave the wrong result in several cases. When the wrapped object
  was a class, the special methods it defined for its instances
  were added to the proxy class, so a proxy for a class defining
  __set_name__() raised TypeError when assigned to an attribute in
  a class body, a proxy for a class defining __get__() was bound as
  a descriptor on attribute access, and a proxy for a class
  defining __await__() or __iter__() was reported as awaitable or
  iterable by inspect.isawaitable() and collections.abc checks,
  even though the class itself was not. Special methods provided by
  the metaclass of a wrapped class, such as __iter__(), were not
  added to the proxy class. When the wrapped object was an
  instance, instance attributes shadowing the dunder names were
  treated as special methods of the wrapped object, and special
  methods which a __dir__() method of the wrapped object did not
  report were missed. The special methods are now always determined
  from the type of the wrapped object, so a proxy behaves the same
  as the object it wraps. This also covers a wrapt.LazyObjectProxy
  whose factory returns an object, as resolving the wrapped object
  reassigns __wrapped__. With thanks to ybai08 for pull request
  #361 which identified the issue.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
---
 .../python/{python3-wrapt_2.5.1.bb => python3-wrapt_2.5.2.bb}   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta-python/recipes-devtools/python/{python3-wrapt_2.5.1.bb => python3-wrapt_2.5.2.bb} (88%)
diff mbox series

Patch

diff --git a/meta-python/recipes-devtools/python/python3-wrapt_2.5.1.bb b/meta-python/recipes-devtools/python/python3-wrapt_2.5.2.bb
similarity index 88%
rename from meta-python/recipes-devtools/python/python3-wrapt_2.5.1.bb
rename to meta-python/recipes-devtools/python/python3-wrapt_2.5.2.bb
index 8c75c173c3..6d1f2cf4c9 100644
--- a/meta-python/recipes-devtools/python/python3-wrapt_2.5.1.bb
+++ b/meta-python/recipes-devtools/python/python3-wrapt_2.5.2.bb
@@ -8,7 +8,7 @@  inherit pypi python_setuptools_build_meta ptest-python-pytest
 
 DEPENDS += "python3-wheel-native"
 
-SRC_URI[sha256sum] = "f595bb0185aab3e9dc31950c95d914f56ea8278810c3b928f3426e12ed6d27bc"
+SRC_URI[sha256sum] = "551cb49e88b3722faad780303833bc4fa70685fb1773270fb98b40d39d9fddbf"
 
 # python3-misc for 'this' module, python3-image for colorsys (test_deferred_patching)
 RDEPENDS:${PN}-ptest += " \