Hello community, here is the log from the commit of package python-wrapt for openSUSE:Factory checked in at 2019-07-30 13:04:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-wrapt (Old) and /work/SRC/openSUSE:Factory/.python-wrapt.new.4126 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-wrapt" Tue Jul 30 13:04:35 2019 rev:8 rq:717552 version:1.11.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-wrapt/python-wrapt.changes 2019-03-12 09:46:46.239617527 +0100 +++ /work/SRC/openSUSE:Factory/.python-wrapt.new.4126/python-wrapt.changes 2019-07-30 13:04:38.402398839 +0200 @@ -1,0 +2,6 @@ +Mon Jul 22 11:37:01 UTC 2019 - Tomáš Chvátal <[email protected]> + +- Update to 1.11.2: + * Fix possible crash when garbage collection kicks in when invoking a destructor of wrapped object. + +------------------------------------------------------------------- Old: ---- 1.11.1.tar.gz New: ---- 1.11.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-wrapt.spec ++++++ --- /var/tmp/diff_new_pack.W8mdS9/_old 2019-07-30 13:04:38.962398719 +0200 +++ /var/tmp/diff_new_pack.W8mdS9/_new 2019-07-30 13:04:38.962398719 +0200 @@ -19,7 +19,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-wrapt -Version: 1.11.1 +Version: 1.11.2 Release: 0 Summary: A Python module for decorators, wrappers and monkey patching License: BSD-2-Clause ++++++ 1.11.1.tar.gz -> 1.11.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/appveyor.yml new/wrapt-1.11.2/appveyor.yml --- old/wrapt-1.11.1/appveyor.yml 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/appveyor.yml 2019-06-18 03:10:12.000000000 +0200 @@ -3,9 +3,6 @@ - PYTHON: "C:\\Python27-x64" TOX_ENV: "py27-install-extensions,py27-disable-extensions,py27-without-extensions" - - PYTHON: "C:\\Python34-x64" - TOX_ENV: "py34-install-extensions,py34-disable-extensions,py34-without-extensions" - - PYTHON: "C:\\Python35-x64" TOX_ENV: "py35-install-extensions,py35-disable-extensions,py35-without-extensions" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/docs/changes.rst new/wrapt-1.11.2/docs/changes.rst --- old/wrapt-1.11.1/docs/changes.rst 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/docs/changes.rst 2019-06-18 03:10:12.000000000 +0200 @@ -1,6 +1,14 @@ Release Notes ============= +Version 1.11.2 +--------------- + +**Bugs Fixed** + +* Fix possible crash when garbage collection kicks in when invoking a + destructor of wrapped object. + Version 1.11.1 --------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/docs/conf.py new/wrapt-1.11.2/docs/conf.py --- old/wrapt-1.11.1/docs/conf.py 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/docs/conf.py 2019-06-18 03:10:12.000000000 +0200 @@ -50,7 +50,7 @@ # The short X.Y version. version = '1.11' # The full version, including alpha/beta/rc tags. -release = '1.11.1' +release = '1.11.2' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/setup.py new/wrapt-1.11.2/setup.py --- old/wrapt-1.11.1/setup.py 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/setup.py 2019-06-18 03:10:12.000000000 +0200 @@ -11,7 +11,7 @@ if sys.platform == 'win32': build_ext_errors = (CCompilerError, DistutilsExecError, - DistutilsPlatformError, IOError, OSError) + DistutilsPlatformError, IOError, OSError, ValueError) else: build_ext_errors = (CCompilerError, DistutilsExecError, DistutilsPlatformError) @@ -48,7 +48,7 @@ setup_kwargs = dict( name='wrapt', - version='1.11.1', + version='1.11.2', description='Module for decorators, wrappers and monkey patching.', long_description=open('README.rst').read(), author='Graham Dumpleton', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/__init__.py new/wrapt-1.11.2/src/wrapt/__init__.py --- old/wrapt-1.11.1/src/wrapt/__init__.py 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/src/wrapt/__init__.py 2019-06-18 03:10:12.000000000 +0200 @@ -1,4 +1,4 @@ -__version_info__ = ('1', '11', '1') +__version_info__ = ('1', '11', '2') __version__ = '.'.join(__version_info__) from .wrappers import (ObjectProxy, CallableObjectProxy, FunctionWrapper, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/_wrappers.c new/wrapt-1.11.2/src/wrapt/_wrappers.c --- old/wrapt-1.11.1/src/wrapt/_wrappers.c 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/src/wrapt/_wrappers.c 2019-06-18 03:10:12.000000000 +0200 @@ -2007,6 +2007,8 @@ static void WraptPartialCallableObjectProxy_dealloc( WraptPartialCallableObjectProxyObject *self) { + PyObject_GC_UnTrack(self); + WraptPartialCallableObjectProxy_clear(self); WraptObjectProxy_dealloc((WraptObjectProxyObject *)self); @@ -2263,6 +2265,8 @@ static void WraptFunctionWrapperBase_dealloc(WraptFunctionWrapperObject *self) { + PyObject_GC_UnTrack(self); + WraptFunctionWrapperBase_clear(self); WraptObjectProxy_dealloc((WraptObjectProxyObject *)self); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/decorators.py new/wrapt-1.11.2/src/wrapt/decorators.py --- old/wrapt-1.11.1/src/wrapt/decorators.py 2019-01-19 06:37:04.000000000 +0100 +++ new/wrapt-1.11.2/src/wrapt/decorators.py 2019-06-18 03:10:12.000000000 +0200 @@ -393,9 +393,12 @@ # We first return our magic function wrapper here so we can # determine in what context the decorator factory was used. In - # other words, it is itself a universal decorator. + # other words, it is itself a universal decorator. The decorator + # function is used as the adapter so that linters see a signature + # corresponding to the decorator and not the wrapper it is being + # applied to. - return _build(wrapper, _wrapper) + return _build(wrapper, _wrapper, adapter=decorator) else: # The wrapper still has not been provided, so we are just
