Hello community,

here is the log from the commit of package python-repoze.who for 
openSUSE:Factory checked in at 2020-08-04 20:21:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-repoze.who (Old)
 and      /work/SRC/openSUSE:Factory/.python-repoze.who.new.3592 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-repoze.who"

Tue Aug  4 20:21:37 2020 rev:6 rq:824180 version:2.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-repoze.who/python-repoze.who.changes      
2020-04-07 10:31:26.462507932 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-repoze.who.new.3592/python-repoze.who.changes
    2020-08-04 20:21:49.156997050 +0200
@@ -1,0 +2,14 @@
+Mon Aug  3 11:09:47 UTC 2020 - Marketa Calabkova <[email protected]>
+
+- update to 2.4
+  * Add support for Python 3.6, 3.7, and 3.8.
+  * Drop support for Python 3.3.
+  * Fix travis configuration.
+  * Add ``samesite`` option to AuthTktCookiePlugin constructor.
+    If this is passed, it should be a string, and it will be used
+    to compose the Set-Cookie header's "SameSite" value, e.g.
+    if you pass ``samesite="Strict"`` into the constructor,
+    the cookie value for the auth tkt cooke will contain
+    ``SameSite=Strict``.
+
+-------------------------------------------------------------------

Old:
----
  repoze.who-2.3.tar.gz

New:
----
  repoze.who-2.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-repoze.who.spec ++++++
--- /var/tmp/diff_new_pack.La3WgB/_old  2020-08-04 20:21:50.372997205 +0200
+++ /var/tmp/diff_new_pack.La3WgB/_new  2020-08-04 20:21:50.376997205 +0200
@@ -19,20 +19,18 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %global modname repoze.who
 Name:           python-repoze.who
-Version:        2.3
+Version:        2.4
 Release:        0
 Summary:        Identification and authentication framework for WSGI
 License:        SUSE-Repoze
 URL:            http://www.repoze.org
 Source:         
https://files.pythonhosted.org/packages/source/r/repoze.who/%{modname}-%{version}.tar.gz
-BuildRequires:  %{python_module Paste}
 BuildRequires:  %{python_module WebOb}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  %{python_module zope.interface}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
-Requires:       python-Paste
 Requires:       python-WebOb
 Requires:       python-zope.interface
 BuildArch:      noarch
@@ -61,8 +59,7 @@
 %python_expand %fdupes %{buildroot}%{$python_sitelib}/
 
 %check
-# test_brokenimpl zope.interface raises different assert
-%pytest -k 'not test_brokenimpl'
+%pytest
 
 %files %{python_files}
 %license LICENSE.txt

++++++ repoze.who-2.3.tar.gz -> repoze.who-2.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/.travis.yml 
new/repoze.who-2.4/.travis.yml
--- old/repoze.who-2.3/.travis.yml      2016-05-31 18:22:32.000000000 +0200
+++ new/repoze.who-2.4/.travis.yml      2020-06-03 22:21:47.000000000 +0200
@@ -4,16 +4,24 @@
 
 matrix:
   include:
+    - python: 2.7
+      env: TOXENV=py27
+    - python: 3.4
+      env: TOXENV=py34
     - python: 3.5
       env: TOXENV=py35
-
-env:
-  - TOXENV=py27
-  - TOXENV=py33
-  - TOXENV=py34
-  - TOXENV=pypy
-  - TOXENV=pypy3
-  - TOXENV=cover
+    - python: 3.6
+      env: TOXENV=py36
+    - python: 3.7
+      env: TOXENV=py37
+    - python: 3.8
+      env: TOXENV=py38
+    - python: pypy
+      env: TOXENV=pypy
+    - python: pypy3
+      env: TOXENV=pypy3
+    - python: 3.8
+      env: TOXENV=cover
 
 install:
   - travis_retry pip install tox
@@ -21,6 +29,3 @@
 script:
   - travis_retry tox
 
-notifications:
-  email:
-    - [email protected]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/CHANGES.rst 
new/repoze.who-2.4/CHANGES.rst
--- old/repoze.who-2.3/CHANGES.rst      2016-05-31 19:44:09.000000000 +0200
+++ new/repoze.who-2.4/CHANGES.rst      2020-06-03 22:32:10.000000000 +0200
@@ -1,6 +1,22 @@
 repoze.who Changelog
 ====================
 
+2.4 (2020-06-03)
+----------------
+
+- Add upport for Python 3.6, 3.7, and 3.8.
+
+- Drop support for Python 3.3.
+
+- Fix travis configuration.
+
+- Add ``samesite`` option to AuthTktCookiePlugin constructor.
+  If this is passed, it should be a string, and it will be used
+  to compose the Set-Cookie header's "SameSite" value, e.g.
+  if you pass ``samesite="Strict"`` into the constructor,
+  the cookie value for the auth tkt cooke will contain
+  ``SameSite=Strict``.
+
 2.3 (2016-05-31)
 ----------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/PKG-INFO new/repoze.who-2.4/PKG-INFO
--- old/repoze.who-2.3/PKG-INFO 2016-05-31 19:46:03.000000000 +0200
+++ new/repoze.who-2.4/PKG-INFO 2020-06-03 22:32:18.000000000 +0200
@@ -1,13 +1,13 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: repoze.who
-Version: 2.3
+Version: 2.4
 Summary: repoze.who is an identification and authentication framework for WSGI.
 Home-page: http://www.repoze.org
 Author: Agendaless Consulting
 Author-email: [email protected]
 License: BSD-derived (http://www.repoze.org/LICENSE.txt)
-Description: ``repoze.who``
-        ==============
+Description: repoze.who
+        ==========
         
         .. image:: https://travis-ci.org/repoze/repoze.who.png?branch=master
                 :target: https://travis-ci.org/repoze/repoze.who
@@ -16,8 +16,11 @@
                 :target: http://repozewho.readthedocs.org/en/latest/
                 :alt: Documentation Status
         
-        Overview
-        --------
+        .. image:: https://img.shields.io/pypi/v/repoze.who.svg
+                :target: https://pypi.python.org/pypi/repoze.who
+        
+        .. image:: https://img.shields.io/pypi/pyversions/repoze.who.svg
+                :target: https://pypi.python.org/pypi/repoze.who
         
         ``repoze.who`` is an identification and authentication framework
         for arbitrary WSGI applications.  ``repoze.who`` can be configured
@@ -30,10 +33,64 @@
         operation implied by the request).  This is considered to be the
         domain of the WSGI application.
         
+        Installation
+        ------------
+        
+        Install using setuptools, e.g. (within a virtualenv)::
+        
+         $ easy_install repoze.who
+        
+        or using pip::
+        
+         $ pip install repoze.who
+        
+        
+        Usage
+        -----
+        
+        For details on using the various components, please see the
+        documentation in ``docs/index.rst``.  A rendered version of that 
documentation
+        is also available online:
+        
+         - http://repozewho.readthedocs.org/en/latest/
+        
+        
+        Reporting Bugs 
+        --------------
+        
+        Please report bugs in this package to
+        
+          https://github.com/repoze/repoze.who/issues
+        
+        
+        Obtaining Source Code
+        ---------------------
+        
+        Download development or tagged versions of the software by visiting:
+        
+          https://github.com/repoze/repoze.who
+        
+        
         
         repoze.who Changelog
         ====================
         
+        2.4 (2020-06-03)
+        ----------------
+        
+        - Add upport for Python 3.6, 3.7, and 3.8.
+        
+        - Drop support for Python 3.3.
+        
+        - Fix travis configuration.
+        
+        - Add ``samesite`` option to AuthTktCookiePlugin constructor.
+          If this is passed, it should be a string, and it will be used
+          to compose the Set-Cookie header's "SameSite" value, e.g.
+          if you pass ``samesite="Strict"`` into the constructor,
+          the cookie value for the auth tkt cooke will contain
+          ``SameSite=Strict``.
+        
         2.3 (2016-05-31)
         ----------------
         
@@ -732,12 +789,16 @@
 Classifier: Programming Language :: Python :: 2
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.3
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Internet :: WWW/HTTP
 Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
+Provides-Extra: testing
+Provides-Extra: docs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/README.rst 
new/repoze.who-2.4/README.rst
--- old/repoze.who-2.3/README.rst       2015-03-18 20:33:59.000000000 +0100
+++ new/repoze.who-2.4/README.rst       2016-06-03 20:39:39.000000000 +0200
@@ -1,5 +1,5 @@
-``repoze.who``
-==============
+repoze.who
+==========
 
 .. image:: https://travis-ci.org/repoze/repoze.who.png?branch=master
         :target: https://travis-ci.org/repoze/repoze.who
@@ -8,8 +8,11 @@
         :target: http://repozewho.readthedocs.org/en/latest/
         :alt: Documentation Status
 
-Overview
---------
+.. image:: https://img.shields.io/pypi/v/repoze.who.svg
+        :target: https://pypi.python.org/pypi/repoze.who
+
+.. image:: https://img.shields.io/pypi/pyversions/repoze.who.svg
+        :target: https://pypi.python.org/pypi/repoze.who
 
 ``repoze.who`` is an identification and authentication framework
 for arbitrary WSGI applications.  ``repoze.who`` can be configured
@@ -21,3 +24,41 @@
 for authorization (ensuring whether a user can or cannot perform the
 operation implied by the request).  This is considered to be the
 domain of the WSGI application.
+
+Installation
+------------
+
+Install using setuptools, e.g. (within a virtualenv)::
+
+ $ easy_install repoze.who
+
+or using pip::
+
+ $ pip install repoze.who
+
+
+Usage
+-----
+
+For details on using the various components, please see the
+documentation in ``docs/index.rst``.  A rendered version of that documentation
+is also available online:
+
+ - http://repozewho.readthedocs.org/en/latest/
+
+
+Reporting Bugs 
+--------------
+
+Please report bugs in this package to
+
+  https://github.com/repoze/repoze.who/issues
+
+
+Obtaining Source Code
+---------------------
+
+Download development or tagged versions of the software by visiting:
+
+  https://github.com/repoze/repoze.who
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/docs/middleware.rst 
new/repoze.who-2.4/docs/middleware.rst
--- old/repoze.who-2.3/docs/middleware.rst      2015-03-18 20:33:59.000000000 
+0100
+++ new/repoze.who-2.4/docs/middleware.rst      2020-06-02 22:54:09.000000000 
+0200
@@ -55,7 +55,7 @@
        A refererence to the "right-hand" application.  The plugins
        consulted during request classification / identification /
        authentication may replace this application with another
-       WSGI application, which will be used for the remainer of the
+       WSGI application, which will be used for the remainder of the
        current request.
 
 #.  Request Classification
@@ -96,14 +96,14 @@
     record matching any of the extracted credentials.  If it finds one, and
     if the password listed in the record matches the password in the
     identity, the userid of the user would be returned (which would
-    be the same as the login name).  Successfully-authenticated ndenties are
+    be the same as the login name).  Successfully-authenticated identities are
     "weighted", with the highest weight identity governing the remainder of
     the request.
 
 #.  Metadata Assignment
 
     After identifying and authenticating a user, :mod:`repoze.who` consults
-    plugins configured as metadata providers, which may augmented the
+    plugins configured as metadata providers, which may augment the
     authenticated identity with arbitrary metadata.
 
     For example, a metadata provider plugin might add the user's first,
@@ -143,9 +143,9 @@
 
 #.  Challenge
     
-    The plugin then consults each of the set of plugins configured as
+    The plugin then consults each of the plugins configured as
     challengers for the current request classification:  the first plugin
-    which returns a non-None WSGI application will be used perform a
+    which returns a non-None WSGI application will be used to perform a
     challenge.
     
     Challenger plugins may use application-returned headers, the WSGI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/docs/narr.rst 
new/repoze.who-2.4/docs/narr.rst
--- old/repoze.who-2.3/docs/narr.rst    2015-03-18 20:33:59.000000000 +0100
+++ new/repoze.who-2.4/docs/narr.rst    2020-06-02 22:54:09.000000000 +0200
@@ -33,7 +33,7 @@
 authentication purposes, but need to participate more directly in the
 mechanics of identification and authorization for some portions of the
 application.  For example, consider a system which allows users to
-sign up online for membrship in a site: once the user completes
+sign up online for membership in a site: once the user completes
 registration, such an application might wish to log the user in
 transparently, and thus needs to interact with the configured
 :mod:`repoze.who` middleware to generate response headers, ensuring
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/repoze/who/api.py 
new/repoze.who-2.4/repoze/who/api.py
--- old/repoze.who-2.3/repoze/who/api.py        2015-03-18 20:33:59.000000000 
+0100
+++ new/repoze.who-2.4/repoze/who/api.py        2020-06-03 22:21:08.000000000 
+0200
@@ -58,7 +58,8 @@
 
  
 def make_registries(identifiers, authenticators, challengers, mdproviders):
-    from zope.interface.verify import BrokenImplementation
+    from zope.interface.exceptions import Invalid
+    from zope.interface.verify import BrokenImplementation  # BBB, z.i < 5.0.x
     interface_registry = {}
     name_registry = {}
 
@@ -70,7 +71,7 @@
         for name, value in supplied:
             try:
                 verify(value, iface)
-            except BrokenImplementation as why:
+            except (Invalid, BrokenImplementation) as why:
                 why = str(why)
                 raise ValueError(str(name) + ': ' + why)
             L = interface_registry.setdefault(iface, [])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/repoze/who/plugins/auth_tkt.py 
new/repoze.who-2.4/repoze/who/plugins/auth_tkt.py
--- old/repoze.who-2.3/repoze/who/plugins/auth_tkt.py   2016-05-31 
18:44:04.000000000 +0200
+++ new/repoze.who-2.4/repoze/who/plugins/auth_tkt.py   2020-06-02 
22:54:09.000000000 +0200
@@ -49,7 +49,8 @@
     def __init__(self, secret, cookie_name='auth_tkt',
                  secure=False, include_ip=False,
                  timeout=None, reissue_time=None, userid_checker=None,
-                 digest_algo=auth_tkt.DEFAULT_DIGEST):
+                 digest_algo=auth_tkt.DEFAULT_DIGEST,
+                 samesite=None):
         self.secret = secret
         self.cookie_name = cookie_name
         self.include_ip = include_ip
@@ -61,6 +62,7 @@
         self.reissue_time = reissue_time
         self.userid_checker = userid_checker
         self.digest_algo = digest_algo
+        self.samesite = samesite
 
     # IIdentifier
     def identify(self, environ):
@@ -197,6 +199,9 @@
         if self.secure:
             secure = '; secure; HttpOnly'
 
+        if self.samesite:
+            secure += '; SameSite=%s' % self.samesite
+
         cur_domain = environ.get('HTTP_HOST', environ.get('SERVER_NAME'))
         cur_domain = cur_domain.split(':')[0] # drop port
         wild_domain = '.' + cur_domain
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/repoze.who-2.3/repoze/who/plugins/tests/test_authtkt.py 
new/repoze.who-2.4/repoze/who/plugins/tests/test_authtkt.py
--- old/repoze.who-2.3/repoze/who/plugins/tests/test_authtkt.py 2016-05-31 
18:44:04.000000000 +0200
+++ new/repoze.who-2.4/repoze/who/plugins/tests/test_authtkt.py 2020-06-02 
22:54:09.000000000 +0200
@@ -296,6 +296,35 @@
                            'secure; HttpOnly'
                             % val))
 
+    def test_remember_creds_samesite(self):
+        plugin = self._makeOne('secret', secure=False, samesite="Strict")
+        val = self._makeTicket(userid='userid', secure=False, 
userdata='foo=123')
+        environ = self._makeEnviron()
+        result = plugin.remember(environ, {'repoze.who.userid':'userid',
+                                           'userdata':{'foo':'123'}})
+        self.assertEqual(len(result), 3)
+        self.assertEqual(result[0],
+                         ('Set-Cookie',
+                          'auth_tkt="%s"; '
+                          'Path=/; '
+                          'SameSite=Strict' 
+                          % val))
+        self.assertEqual(result[1],
+                         ('Set-Cookie',
+                           'auth_tkt="%s"; '
+                           'Path=/; '
+                           'Domain=localhost; '
+                           'SameSite=Strict'
+                            % val))
+        self.assertEqual(result[2],
+                         ('Set-Cookie',
+                           'auth_tkt="%s"; '
+                           'Path=/; '
+                           'Domain=.localhost; '
+                           'SameSite=Strict'
+                            % val))
+
+
     def test_remember_creds_different(self):
         plugin = self._makeOne('secret')
         old_val = self._makeTicket(userid='userid')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/repoze/who/tests/test__auth_tkt.py 
new/repoze.who-2.4/repoze/who/tests/test__auth_tkt.py
--- old/repoze.who-2.3/repoze/who/tests/test__auth_tkt.py       2016-05-31 
18:44:04.000000000 +0200
+++ new/repoze.who-2.4/repoze/who/tests/test__auth_tkt.py       2020-06-02 
22:54:09.000000000 +0200
@@ -111,7 +111,7 @@
                                      ).strip())
         self.assertEqual(cookie['oatmeal']['path'], '/')
         self.assertEqual(cookie['oatmeal']['secure'], 'true')
- 
+
 
 class BadTicketTests(unittest.TestCase):
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/repoze/who/tests/test_api.py 
new/repoze.who-2.4/repoze/who/tests/test_api.py
--- old/repoze.who-2.3/repoze/who/tests/test_api.py     2015-03-18 
20:34:00.000000000 +0100
+++ new/repoze.who-2.4/repoze/who/tests/test_api.py     2020-06-03 
22:21:08.000000000 +0200
@@ -104,8 +104,10 @@
         self.assertEqual(name_reg, {})
 
     def test_brokenimpl(self):
-        self.assertRaises(ValueError, self._callFUT,
-                          [(None, object())], [], [], [])
+        from zope.interface.exceptions import Invalid
+        expected_exc = (Invalid, ValueError)  # BBB for zope.interface < 5.0.0
+        with self.assertRaises(expected_exc):
+            self._callFUT([(None, object())], [], [], [])
 
     def test_ok(self):
         from repoze.who.interfaces import IIdentifier
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/repoze.who.egg-info/PKG-INFO 
new/repoze.who-2.4/repoze.who.egg-info/PKG-INFO
--- old/repoze.who-2.3/repoze.who.egg-info/PKG-INFO     2016-05-31 
19:46:01.000000000 +0200
+++ new/repoze.who-2.4/repoze.who.egg-info/PKG-INFO     2020-06-03 
22:32:18.000000000 +0200
@@ -1,13 +1,13 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: repoze.who
-Version: 2.3
+Version: 2.4
 Summary: repoze.who is an identification and authentication framework for WSGI.
 Home-page: http://www.repoze.org
 Author: Agendaless Consulting
 Author-email: [email protected]
 License: BSD-derived (http://www.repoze.org/LICENSE.txt)
-Description: ``repoze.who``
-        ==============
+Description: repoze.who
+        ==========
         
         .. image:: https://travis-ci.org/repoze/repoze.who.png?branch=master
                 :target: https://travis-ci.org/repoze/repoze.who
@@ -16,8 +16,11 @@
                 :target: http://repozewho.readthedocs.org/en/latest/
                 :alt: Documentation Status
         
-        Overview
-        --------
+        .. image:: https://img.shields.io/pypi/v/repoze.who.svg
+                :target: https://pypi.python.org/pypi/repoze.who
+        
+        .. image:: https://img.shields.io/pypi/pyversions/repoze.who.svg
+                :target: https://pypi.python.org/pypi/repoze.who
         
         ``repoze.who`` is an identification and authentication framework
         for arbitrary WSGI applications.  ``repoze.who`` can be configured
@@ -30,10 +33,64 @@
         operation implied by the request).  This is considered to be the
         domain of the WSGI application.
         
+        Installation
+        ------------
+        
+        Install using setuptools, e.g. (within a virtualenv)::
+        
+         $ easy_install repoze.who
+        
+        or using pip::
+        
+         $ pip install repoze.who
+        
+        
+        Usage
+        -----
+        
+        For details on using the various components, please see the
+        documentation in ``docs/index.rst``.  A rendered version of that 
documentation
+        is also available online:
+        
+         - http://repozewho.readthedocs.org/en/latest/
+        
+        
+        Reporting Bugs 
+        --------------
+        
+        Please report bugs in this package to
+        
+          https://github.com/repoze/repoze.who/issues
+        
+        
+        Obtaining Source Code
+        ---------------------
+        
+        Download development or tagged versions of the software by visiting:
+        
+          https://github.com/repoze/repoze.who
+        
+        
         
         repoze.who Changelog
         ====================
         
+        2.4 (2020-06-03)
+        ----------------
+        
+        - Add upport for Python 3.6, 3.7, and 3.8.
+        
+        - Drop support for Python 3.3.
+        
+        - Fix travis configuration.
+        
+        - Add ``samesite`` option to AuthTktCookiePlugin constructor.
+          If this is passed, it should be a string, and it will be used
+          to compose the Set-Cookie header's "SameSite" value, e.g.
+          if you pass ``samesite="Strict"`` into the constructor,
+          the cookie value for the auth tkt cooke will contain
+          ``SameSite=Strict``.
+        
         2.3 (2016-05-31)
         ----------------
         
@@ -732,12 +789,16 @@
 Classifier: Programming Language :: Python :: 2
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.3
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: Implementation :: CPython
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Internet :: WWW/HTTP
 Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
+Provides-Extra: testing
+Provides-Extra: docs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/setup.cfg new/repoze.who-2.4/setup.cfg
--- old/repoze.who-2.3/setup.cfg        2016-05-31 19:46:03.000000000 +0200
+++ new/repoze.who-2.4/setup.cfg        2020-06-03 22:32:18.000000000 +0200
@@ -13,5 +13,4 @@
 [egg_info]
 tag_build = 
 tag_date = 0
-tag_svn_revision = 0
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/setup.py new/repoze.who-2.4/setup.py
--- old/repoze.who-2.3/setup.py 2016-05-31 19:44:19.000000000 +0200
+++ new/repoze.who-2.4/setup.py 2020-06-03 22:32:10.000000000 +0200
@@ -31,7 +31,7 @@
 docs_extras = tests_require + ['Sphinx', 'repoze.sphinx.autointerface']
 
 setup(name='repoze.who',
-      version='2.3',
+      version='2.4',
       description=('repoze.who is an identification and authentication '
                    'framework for WSGI.'),
       long_description='\n\n'.join([README, CHANGES]),
@@ -41,9 +41,11 @@
         "Programming Language :: Python :: 2",
         "Programming Language :: Python :: 2.7",
         "Programming Language :: Python :: 3",
-        "Programming Language :: Python :: 3.3",
         "Programming Language :: Python :: 3.4",
         "Programming Language :: Python :: 3.5",
+        "Programming Language :: Python :: 3.6",
+        "Programming Language :: Python :: 3.7",
+        "Programming Language :: Python :: 3.8",
         "Programming Language :: Python :: Implementation :: CPython",
         "Programming Language :: Python :: Implementation :: PyPy",
         "Topic :: Internet :: WWW/HTTP",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/repoze.who-2.3/tox.ini new/repoze.who-2.4/tox.ini
--- old/repoze.who-2.3/tox.ini  2016-05-31 18:23:07.000000000 +0200
+++ new/repoze.who-2.4/tox.ini  2020-06-03 22:21:08.000000000 +0200
@@ -1,6 +1,6 @@
 [tox]
 envlist = 
-    py27,pypy,py33,py34,py35,pypy3,cover,docs
+    py27,pypy,py34,py35,py36,py37,py38,pypy3,cover,docs
 
 [testenv]
 commands = 


Reply via email to