Hello community,
here is the log from the commit of package python-zope.interface for
openSUSE:Factory checked in at 2020-04-15 19:53:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-zope.interface (Old)
and /work/SRC/openSUSE:Factory/.python-zope.interface.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-zope.interface"
Wed Apr 15 19:53:22 2020 rev:25 rq:793786 version:5.1.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-zope.interface/python-zope.interface.changes
2020-03-27 00:29:00.080369376 +0100
+++
/work/SRC/openSUSE:Factory/.python-zope.interface.new.2738/python-zope.interface.changes
2020-04-15 19:53:23.881569318 +0200
@@ -1,0 +2,11 @@
+Tue Apr 14 09:12:36 UTC 2020 - Tomáš Chvátal <[email protected]>
+
+- Update to 5.1.0:
+ * Make @implementer(*iface) and classImplements(cls, *iface) ignore
redundant interfaces. If the class already implements an interface through
inheritance, it is no longer redeclared specifically for cls. This solves many
instances of inconsistent resolution orders, while still allowing the interface
to be declared for readability and maintenance purposes. See issue 199.
+ * Remove all bare except: statements. Previously, when accessing special
attributes such as __provides__, __providedBy__, __class__ and __conform__,
this package wrapped such access in a bare except: statement, meaning that many
errors could pass silently; typically this would result in a fallback path
being taken and sometimes (like with providedBy()) the result would be
non-sensical. This is especially true when those attributes are implemented
with descriptors. Now, only AttributeError is caught. This makes errors more
obvious.
+ * In addition, ZODB errors like POSKeyError could now be propagated where
previously they would ignored by this package.
+ * Require that the second argument (bases) to InterfaceClass is a tuple.
This only matters when directly using InterfaceClass to create new interfaces
dynamically. Previously, an individual interface was allowed, but did not work
correctly. Now it is consistent with type and requires a tuple.
+ * Let interfaces define custom __adapt__ methods. This implements the other
side of the PEP 246 adaptation protocol: objects being adapted could already
implement __conform__ if they know about the interface, and now interfaces can
implement __adapt__ if they know about particular objects. There is no
performance penalty for interfaces that do not supply custom __adapt__ methods.
+ * Make the internal singleton object returned by APIs like implementedBy and
directlyProvidedBy for objects that implement or provide no interfaces more
immutable. Previously an internal cache could be mutated. See issue 204.
+
+-------------------------------------------------------------------
Old:
----
zope.interface-5.0.1.tar.gz
New:
----
zope.interface-5.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-zope.interface.spec ++++++
--- /var/tmp/diff_new_pack.jc0CN4/_old 2020-04-15 19:53:25.293569954 +0200
+++ /var/tmp/diff_new_pack.jc0CN4/_new 2020-04-15 19:53:25.293569954 +0200
@@ -20,21 +20,20 @@
%global modname zope.interface
%define oldpython python
Name: python-zope.interface
-Version: 5.0.1
+Version: 5.1.0
Release: 0
Summary: Interfaces for Python
License: ZPL-2.1
-Group: Development/Languages/Python
URL: https://pypi.python.org/pypi/zope.interface
Source:
https://files.pythonhosted.org/packages/source/z/zope.interface/%{modname}-%{version}.tar.gz
+# needed for tests that try to compile things
BuildRequires: %{python_module devel}
-BuildRequires: %{python_module nose}
-BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module zope.event}
BuildRequires: %{python_module zope.testing}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-setuptools
%ifpython2
Provides: %{oldpython}-zopeinterface = %{version}
Obsoletes: %{oldpython}-zopeinterface < %{version}
++++++ zope.interface-5.0.1.tar.gz -> zope.interface-5.1.0.tar.gz ++++++
++++ 3597 lines of diff (skipped)