similarity index 85%
rename from meta-python/recipes-devtools/python/python3-wrapt_2.2.2.bb
rename to meta-python/recipes-devtools/python/python3-wrapt_2.3.0.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=63a78af2900bfcc5ce482f3b8d445898"
inherit pypi python_setuptools_build_meta ptest-python-pytest
-SRC_URI[sha256sum] = "0788e321027c999bf221b667bd4a54aaefd1a36283749a860ac3eb77daed0302"
+SRC_URI[sha256sum] = "681a2d0eefd721998f90642762b8e75c2159ec531b20ad5e437245ea7b06a107"
# python3-misc for 'this' module
RDEPENDS:${PN}-ptest += " \
Upgrade to release 2.3.0: - The __trunc__(), __floor__() and __ceil__() special methods are now implemented by object proxies, delegating to math.trunc(), math.floor() and math.ceil() applied to the wrapped object. As with other special methods, these are only looked up on the class type and not the instance, so they cannot rely on the __getattr__() fallback of the proxy and must be implemented explicitly. Previously calling math.trunc() on an object proxy raised TypeError. These special methods sit somewhat outside the core Python object model in that they are not used by any builtin operators, with the math module being their only consumer. They are however documented as part of the Python data model and the math module is a key module in the standard library, so supporting them is warranted, in the same way as the existing support for __round__(), which is consumed by the round() builtin. Note that although math.floor() and math.ceil() previously appeared to work when used on an object proxy, they were silently falling back to converting the proxy using __float__(). If the wrapped object provided its own __floor__() or __ceil__() special methods these were ignored and the result could differ from that when the wrapped object was used directly. These now yield the same result as using the wrapped object directly. With thanks to Vincent Gao for the PR. - The __fspath__() special method of the os.PathLike protocol has been added to the set of dunder methods which AutoObjectProxy detects on the wrapped object and adds to the class it generates, so a proxy it creates around a path-like object can now be used with os.fspath(), the builtin open() and other standard library functions accepting paths. Note that __fspath__() is deliberately not implemented by the base object proxy, since its presence on the proxy type would cause every proxy to be classified as path-like by code branching on isinstance(obj, os.PathLike). Also be aware that AutoObjectProxy creates a new class for every proxy instance, so it should not be used to wrap path-like objects in large numbers due to the memory overhead. For high-frequency use define a custom proxy class which adds an explicit __fspath__() method instead. See the section on wrapping path-like objects in the known issues documentation for more details. Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> --- .../python/{python3-wrapt_2.2.2.bb => python3-wrapt_2.3.0.bb} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename meta-python/recipes-devtools/python/{python3-wrapt_2.2.2.bb => python3-wrapt_2.3.0.bb} (85%)