Subject: CVS commit: pkgsrc/devel/py-wrapt
From: Adam Ciarcinski
Date: 2019-01-21 11:31:16
Message id: 20190121103116.498BEFB16@cvs.NetBSD.org

Log Message:
py-wrapt: updated to 1.11.1

Version 1.11.1

Bugs Fixed

Fixed memory leak in C extension variant of PartialCallableObjectProxy class \ 
introduced in 1.11.0, when it was being used to perform binding, when a call of \ 
an instance method was made through the class type, and the self object passed \ 
explicitly as first argument.
The C extension variant of the PartialCallableObjectProxy class introduced in \ 
1.11.0, which is a version of functools.partial which correctly handles binding \ 
when applied to methods of classes, couldn't be used when no positional \ 
arguments were supplied.
When the C extension variant of PartialCallableObjectProxy was used and multiple \ 
positional arguments were supplied, the first argument would be replicated and \ 
used to all arguments, instead of correct values, when the partial was called.
When the C extension variant of PartialCallableObjectProxy was used and keyword \ 
arguments were supplied, it would fail as was incorrectly using the positional \ 
arguments where the keyword arguments should have been used.

Version 1.11.0

Bugs Fixed

When using arithmetic operations through a proxy object, checks about the types \ 
of arguments were not being performed correctly, which could result in an \ 
exception being raised to indicate that a proxy object had not been initialised \ 
when in fact the argument wasn't even an instance of a proxy object.

Because an incorrect cast in C level code was being performed and an attribute \ 
in memory checked on the basis of it being a type different to what it actually \ 
was, technically it may have resulted in a process crash if the size of the \ 
object was smaller than the type being casted to.

The __complex__() special method wasn't implemented and using complex() on a \ 
proxy object would give wrong results or fail.

When using the C extension, if an exception was raised when using inplace or, \ 
ie., |=, the error condition wasn't being correctly propagated back which would \ 
result in an exception showing up as wrong location in subsequent code.

Type of long was used instead of Py_hash_t for Python 3.3+. This caused compiler \ 
warnings on Windows, which depending on what locale was set to, would cause pip \ 
to fail when installing the package.

If calling Class.instancemethod and passing self explicitly, the ability to \ 
access __name__ and __module__ on the final bound method were not preserved. \ 
This was due to a partial being used for this special case, and it doesn't \ 
preserve introspection.

Fixed typo in the getter property of ObjectProxy for accessing __annotations__. \ 
Appeared that it was still working as would fall back to using generic \ 
__getattr__() to access attribute on wrapped object.

Files:
RevisionActionfile
1.6modifypkgsrc/devel/py-wrapt/Makefile
1.2modifypkgsrc/devel/py-wrapt/PLIST
1.4modifypkgsrc/devel/py-wrapt/distinfo