Sync from SUSE:SLFO:Main python-wrapt revision 1af80e64490925e8b522842dd59901a6
This commit is contained in:
commit
bb0cbcd0a1
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
BIN
1.15.0.tar.gz
(Stored with Git LFS)
Normal file
BIN
1.15.0.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
197
python-wrapt.changes
Normal file
197
python-wrapt.changes
Normal file
@ -0,0 +1,197 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu May 4 20:43:27 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.15.0:
|
||||||
|
* When the C extension for wrapt was being used, and a property
|
||||||
|
was used on an object proxy wrapping another object to intercept
|
||||||
|
access to an attribute of the same name on the wrapped object,
|
||||||
|
if the function implementing the property
|
||||||
|
raised an exception, then the exception was ignored and not
|
||||||
|
propagated back to the caller.
|
||||||
|
* Address issue where the post import hook mechanism of wrapt
|
||||||
|
wasn't transparent and left the __loader__ and __spec__.loader
|
||||||
|
attributes of a module as the wrapt import hook loader and
|
||||||
|
not the original loader.
|
||||||
|
* Address issues where a thread deadlock could occur within the
|
||||||
|
wrapt module import handler, when code executed from a post
|
||||||
|
import hook created a new thread and code executed in the
|
||||||
|
context of the new thread itself tried to register a post
|
||||||
|
import hook, or imported a new module.
|
||||||
|
* When using ``CallableObjectProxy`` as a wrapper for a type or
|
||||||
|
function and calling the wrapped object, it was not possible
|
||||||
|
to pass a keyword argument named ``self``.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 21 12:38:55 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- add sle15_python_module_pythons (jsc#PED-68)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Apr 13 22:45:59 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
- Make calling of %{sle15modernpython} optional.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Oct 1 14:04:50 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.14.1:
|
||||||
|
* When the post import hooks mechanism was being used, and a Python package with
|
||||||
|
its own custom module importer was used, importing modules could fail if the
|
||||||
|
custom module importer didn't use the latest Python import hook finder/loader
|
||||||
|
APIs and instead used the deprecated API. This was actually occurring with the
|
||||||
|
`zipimporter` in Python itself, which was not updated to use the newer Python
|
||||||
|
APIs until Python 3.10.
|
||||||
|
**Bugs Fixed**
|
||||||
|
* Python 3.11 dropped ``inspect.formatargspec()`` which was used in creating
|
||||||
|
signature changing decorators. Now bundling a version of this function
|
||||||
|
which uses ``Parameter`` and ``Signature`` from ``inspect`` module when
|
||||||
|
available. The replacement function is exposed as ``wrapt.formatargspec()``
|
||||||
|
if need it for your own code.
|
||||||
|
* When using a decorator on a class, ``isinstance()`` checks wouldn't previously
|
||||||
|
work as expected and you had to manually use ``Type.__wrapped__`` to access
|
||||||
|
the real type when doing instance checks. The ``__instancecheck__`` hook is
|
||||||
|
now implemented such that you don't have to use ``Type.__wrapped__`` instead
|
||||||
|
of ``Type`` as last argument to ``isinstance()``.
|
||||||
|
* Eliminated deprecation warnings related to Python module import system, which
|
||||||
|
would have turned into broken code in Python 3.12. This was used by the post
|
||||||
|
import hook mechanism.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Nov 6 18:18:03 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.13.3:
|
||||||
|
* Adds wheels for Python 3.10 on PyPi and where possible also now
|
||||||
|
generating binary wheels for ``musllinux``.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 26 21:13:04 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.13.2:
|
||||||
|
* Note that the next signficant release of `wrapt` will drop support for
|
||||||
|
Python 2.7 and Python 3.5.
|
||||||
|
* Fix Python version constraint so PyPi classifier for ``pip`` requires
|
||||||
|
Python 2.7 or Python 3.5+.
|
||||||
|
* When a reference to a class method was taken out of a class, and then
|
||||||
|
wrapped in a function wrapper, and called, the class type was not being
|
||||||
|
passed as the instance argument, but as the first argument in args,
|
||||||
|
with the instance being ``None``. The class type should have been passed
|
||||||
|
as the instance argument.
|
||||||
|
* If supplying an adapter function for a signature changing decorator
|
||||||
|
using input in the form of a function argument specification, name lookup
|
||||||
|
exceptions would occur where the adaptor function had annotations which
|
||||||
|
referenced non builtin Python types. Although the issues have been
|
||||||
|
addressed where using input data in the format usually returned by
|
||||||
|
``inspect.getfullargspec()`` to pass the function argument specification,
|
||||||
|
you can still have problems when supplying a function signature as
|
||||||
|
string. In the latter case only Python builtin types can be referenced
|
||||||
|
in annotations.
|
||||||
|
* When a decorator was applied on top of a data/non-data descriptor in a
|
||||||
|
class definition, the call to the special method ``__set_name__()`` to
|
||||||
|
notify the descriptor of the variable name was not being propogated. Note
|
||||||
|
that this issue has been addressed in the ``FunctionWrapper`` used by
|
||||||
|
``@wrapt.decorator`` but has not been applied to the generic
|
||||||
|
``ObjectProxy`` class. If using ``ObjectProxy`` directly to construct a
|
||||||
|
custom wrapper which is applied to a descriptor, you will need to
|
||||||
|
propogate the ``__set_name__()`` call yourself if required.
|
||||||
|
* The ``issubclass()`` builtin method would give incorrect results when used
|
||||||
|
with a class which had a decorator applied to it. Note that this has only
|
||||||
|
been able to be fixed for Python 3.7+. Also, due to what is arguably a
|
||||||
|
bug (https://bugs.python.org/issue44847) in the Python standard library,
|
||||||
|
you will still have problems when the class heirarchy uses a base class
|
||||||
|
which has the ``abc.ABCMeta`` metaclass. In this later case an exception
|
||||||
|
will be raised of ``TypeError: issubclass() arg 1 must be a class``.
|
||||||
|
- drop fix-dummy-collector-pytest6.patch, wrapt-pr161-py39tests.patch (upstream)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 20 16:50:08 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Fix python39 test suite failures
|
||||||
|
* wrapt-pr161-py39tests.patch
|
||||||
|
* gh#GrahamDumpleton/wrapt#161
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Dec 4 00:37:53 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Fix python3.6 build with pytest 6
|
||||||
|
* fix-dummy-collector-pytest6.patch
|
||||||
|
* gh#GrahamDumpleton/wrapt#168
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 16 11:01:55 UTC 2020 - Dirk Mueller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.12.1:
|
||||||
|
* Applying a function wrapper to a static method of a class using the
|
||||||
|
``wrap_function_wrapper()`` function, or wrapper for the same, wasn't
|
||||||
|
being done correctly when the static method was the immediate child of
|
||||||
|
the target object. It was working when the name path had multiple name
|
||||||
|
components. A failure would subsequently occur when the static method
|
||||||
|
was called via an instance of the class, rather than the class.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 9 16:25:43 UTC 2020 - Dirk Mueller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 1.12.0:
|
||||||
|
* Provided that you only want to support Python 3.7, when deriving from
|
||||||
|
a base class which has a decorator applied to it, you no longer need
|
||||||
|
to access the true type of the base class using ``__wrapped__`` in
|
||||||
|
the inherited class list of the derived class.
|
||||||
|
* When using the ``synchronized`` decorator on instance methods of a
|
||||||
|
class, if the class declared special methods to override the result for
|
||||||
|
when the class instance was tested as a boolean so that it returned
|
||||||
|
``False`` all the time, the synchronized method would fail when called.
|
||||||
|
* When using an adapter function to change the signature of the decorated
|
||||||
|
function, ``inspect.signature()`` was returning the wrong signature
|
||||||
|
when an instance method was inspected by accessing the method via the
|
||||||
|
class type.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 22 11:37:01 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||||
|
|
||||||
|
- Update to 1.11.2:
|
||||||
|
* Fix possible crash when garbage collection kicks in when invoking a destructor of wrapped object.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 11 13:28:24 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||||
|
|
||||||
|
- Update to 1.11.1:
|
||||||
|
* Many bugfixes all around
|
||||||
|
* see changes.rst for detailed list
|
||||||
|
- Switch to github to include tests
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jul 9 10:26:29 UTC 2017 - adrian@suse.de
|
||||||
|
|
||||||
|
- update to version 1.10.10:
|
||||||
|
* Added back missing description and categorisations when releasing
|
||||||
|
to PyPi.
|
||||||
|
* Code for inspect.getargspec() when using Python 2.6 was missing
|
||||||
|
import of sys module.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 27 13:54:07 UTC 2017 - jmatejek@suse.com
|
||||||
|
|
||||||
|
- update for singlespec
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 1 05:30:31 UTC 2016 - tbechtold@suse.com
|
||||||
|
|
||||||
|
update to version 1.10.8
|
||||||
|
* Increment version to 1.10.8.
|
||||||
|
* Fix modulo operator on ObjectProxy
|
||||||
|
* Increment version to 1.10.7.
|
||||||
|
* Document mod operator bug in Python variant of object proxy.
|
||||||
|
* Update copyright year.
|
||||||
|
* Fix tests for floordiv and mod.
|
||||||
|
* Remove reference to inspect.getargspec() as removed in Python 3.6. #64
|
||||||
|
- Use pypi.io as Source url
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 16 08:25:35 UTC 2016 - michael@stroeder.com
|
||||||
|
|
||||||
|
- update to 1.10.6
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 4 16:03:54 UTC 2014 - hpj@urpla.net
|
||||||
|
|
||||||
|
- version 1.9: initial build
|
||||||
|
|
81
python-wrapt.spec
Normal file
81
python-wrapt.spec
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
#
|
||||||
|
# spec file for package python-wrapt
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
# Copyright (c) 2015 LISA GmbH, Bingen, Germany.
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
|
||||||
|
%{?sle15_python_module_pythons}
|
||||||
|
Name: python-wrapt
|
||||||
|
Version: 1.15.0
|
||||||
|
Release: 0
|
||||||
|
Summary: A Python module for decorators, wrappers and monkey patching
|
||||||
|
License: BSD-2-Clause
|
||||||
|
Group: Development/Languages/Python
|
||||||
|
URL: https://github.com/GrahamDumpleton/wrapt
|
||||||
|
Source: https://github.com/GrahamDumpleton/wrapt/archive/%{version}.tar.gz
|
||||||
|
BuildRequires: %{python_module devel}
|
||||||
|
BuildRequires: %{python_module pytest}
|
||||||
|
BuildRequires: %{python_module setuptools}
|
||||||
|
BuildRequires: fdupes
|
||||||
|
BuildRequires: python-rpm-macros
|
||||||
|
%python_subpackages
|
||||||
|
|
||||||
|
%description
|
||||||
|
The aim of the **wrapt** module is to provide a transparent object proxy
|
||||||
|
for Python, which can be used as the basis for the construction of function
|
||||||
|
wrappers and decorator functions.
|
||||||
|
|
||||||
|
The **wrapt** module focuses very much on correctness. It therefore goes
|
||||||
|
way beyond existing mechanisms such as ``functools.wraps()`` to ensure that
|
||||||
|
decorators preserve introspectability, signatures, type checking abilities
|
||||||
|
etc. The decorators that can be constructed using this module will work in
|
||||||
|
far more scenarios than typical decorators and provide more predictable and
|
||||||
|
consistent behaviour.
|
||||||
|
|
||||||
|
To ensure that the overhead is as minimal as possible, a C extension module
|
||||||
|
is used for performance critical components. An automatic fallback to a
|
||||||
|
pure Python implementation is also provided where a target system does not
|
||||||
|
have a compiler to allow the C extension to be compiled.
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
-------------
|
||||||
|
|
||||||
|
For further information on the **wrapt** module see:
|
||||||
|
|
||||||
|
* http://wrapt.readthedocs.org/
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n wrapt-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
export CFLAGS="%{optflags}"
|
||||||
|
%python_build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%python_install
|
||||||
|
%python_expand %fdupes %{buildroot}%{$python_sitearch}
|
||||||
|
|
||||||
|
%check
|
||||||
|
%pytest_arch
|
||||||
|
|
||||||
|
%files %{python_files}
|
||||||
|
%license LICENSE
|
||||||
|
%doc README.rst docs/changes.rst
|
||||||
|
%{python_sitearch}/wrapt
|
||||||
|
%{python_sitearch}/wrapt-%{version}*-info
|
||||||
|
|
||||||
|
%changelog
|
Loading…
Reference in New Issue
Block a user