Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-pecan for openSUSE:Factory 
checked in at 2021-12-25 20:16:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pecan (Old)
 and      /work/SRC/openSUSE:Factory/.python-pecan.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pecan"

Sat Dec 25 20:16:26 2021 rev:29 rq:941482 version:1.4.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pecan/python-pecan.changes        
2021-10-25 15:17:13.749667970 +0200
+++ /work/SRC/openSUSE:Factory/.python-pecan.new.2520/python-pecan.changes      
2021-12-25 20:16:30.973243285 +0100
@@ -1,0 +2,12 @@
+Sat Dec 11 22:31:15 UTC 2021 - Dirk M??ller <dmuel...@suse.com>
+
+- update to 1.4.1:
+  * add support for Python 3.10
+  * added trove classifiers for Python 3.6 - 3.9
+  * fixed a bug related to setuptools as a dependency
+  * fixed a bug that broke pecan when used with certain
+   versions of SQLAlchemy 
+- drop 0001-Support-SQLAlchemy-1.4.x.patch,
+  0002-Fix-typo-from-bad-copy-paste.patch: obsolete (upstream)
+
+-------------------------------------------------------------------

Old:
----
  0001-Support-SQLAlchemy-1.4.x.patch
  0002-Fix-typo-from-bad-copy-paste.patch
  pecan-1.4.0.tar.gz

New:
----
  pecan-1.4.1.tar.gz

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

Other differences:
------------------
++++++ python-pecan.spec ++++++
--- /var/tmp/diff_new_pack.MYj5IP/_old  2021-12-25 20:16:31.497243711 +0100
+++ /var/tmp/diff_new_pack.MYj5IP/_new  2021-12-25 20:16:31.505243718 +0100
@@ -25,15 +25,13 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
 Name:           python-pecan
-Version:        1.4.0
+Version:        1.4.1
 Release:        0
 Summary:        A WSGI object-dispatching web framework
 License:        BSD-3-Clause
 URL:            https://github.com/pecan/pecan
 Source:         
https://files.pythonhosted.org/packages/source/p/pecan/pecan-%{version}.tar.gz
 Patch0:         pecan-no-kajiki.patch
-Patch1:         0001-Support-SQLAlchemy-1.4.x.patch
-Patch2:         0002-Fix-typo-from-bad-copy-paste.patch
 BuildRequires:  %{python_module Genshi >= 0.7}
 BuildRequires:  %{python_module Jinja2}
 BuildRequires:  %{python_module Mako >= 0.4.0}
@@ -78,8 +76,6 @@
 %prep
 %setup -q -n pecan-%{version}
 %patch0 -p1
-%patch1 -p1
-%patch2 -p1
 sed -ie "/^uwsgi$/d" test-requirements.txt
 sed -ie "/^pep8$/d" test-requirements.txt
 

++++++ pecan-1.4.0.tar.gz -> pecan-1.4.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/AUTHORS new/pecan-1.4.1/AUTHORS
--- old/pecan-1.4.0/AUTHORS     1970-01-01 01:00:00.000000000 +0100
+++ new/pecan-1.4.1/AUTHORS     2021-12-08 18:46:27.000000000 +0100
@@ -0,0 +1,16 @@
+Pecan is written by various contributors (by date of contribution):
+
+Jonathan LaCour
+Alfredo Deza
+Mark McClain
+Ryan Petrello
+Yoann Roman
+John Anderson
+Jeremy Jones
+Benjamin W. Smith
+Pete Chudykowski
+Mike Perez
+Justin Barber
+Wesley Spikes
+Steven Berler
+Chad Lung
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/PKG-INFO new/pecan-1.4.1/PKG-INFO
--- old/pecan-1.4.0/PKG-INFO    2020-07-30 18:29:36.881268700 +0200
+++ new/pecan-1.4.1/PKG-INFO    2021-12-08 18:51:10.944881700 +0100
@@ -1,12 +1,11 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: pecan
-Version: 1.4.0
+Version: 1.4.1
 Summary: A WSGI object-dispatching web framework, designed to be lean and 
fast, with few dependencies.
 Home-page: http://github.com/pecan/pecan
 Author: Jonathan LaCour
 Author-email: i...@pecanpy.org
 License: BSD
-Description: UNKNOWN
 Keywords: web framework wsgi object-dispatch http
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
@@ -20,7 +19,15 @@
 Classifier: Operating System :: POSIX
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-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 :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
 Classifier: Topic :: Software Development :: Libraries :: Application 
Frameworks
+License-File: LICENSE
+License-File: AUTHORS
+
+UNKNOWN
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan/jsonify.py 
new/pecan-1.4.1/pecan/jsonify.py
--- old/pecan-1.4.0/pecan/jsonify.py    2020-07-30 18:00:23.000000000 +0200
+++ new/pecan-1.4.1/pecan/jsonify.py    2021-12-08 18:46:27.000000000 +0100
@@ -33,6 +33,19 @@
             pass
 
 
+try:
+    from sqlalchemy.engine.cursor import LegacyCursorResult, LegacyRow
+except ImportError:  # pragma no cover
+    # dummy classes since we don't have SQLAlchemy installed
+    # or we're using SQLAlchemy < 1.4
+
+    class LegacyCursorResult(object):  # noqa
+        pass
+
+    class LegacyRow(object):  # noqa
+        pass
+
+
 #
 # encoders
 #
@@ -100,6 +113,11 @@
             if props['count'] < 0:
                 props['count'] = len(props['rows'])
             return props
+        elif isinstance(obj, LegacyCursorResult):
+            rows = [dict(row._mapping) for row in obj.fetchall()]
+            return {'count': len(rows), 'rows': rows}
+        elif isinstance(obj, LegacyRow):
+            return dict(obj._mapping)
         elif isinstance(obj, RowProxy):
             return dict(obj)
         elif isinstance(obj, webob_dicts):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan/tests/scaffold_builder.py 
new/pecan-1.4.1/pecan/tests/scaffold_builder.py
--- old/pecan-1.4.0/pecan/tests/scaffold_builder.py     2020-07-30 
18:00:23.000000000 +0200
+++ new/pecan-1.4.1/pecan/tests/scaffold_builder.py     2021-12-08 
18:46:27.000000000 +0100
@@ -117,27 +117,6 @@
             finally:
                 proc.terminate()
 
-    class TestGunicornServeCommand(TestThirdPartyServe):
-
-        def test_serve_from_config(self):
-            # Start the server
-            proc = subprocess.Popen([
-                os.path.join(self.bin, 'gunicorn_pecan'),
-                'testing123/config.py'
-            ])
-
-            self.poll_http('gunicorn', proc, 8080)
-
-        def test_serve_with_custom_bind(self):
-            # Start the server
-            proc = subprocess.Popen([
-                os.path.join(self.bin, 'gunicorn_pecan'),
-                '--bind=0.0.0.0:9191',
-                'testing123/config.py'
-            ])
-
-            self.poll_http('gunicorn', proc, 9191)
-
     class TestUWSGIServiceCommand(TestThirdPartyServe):
 
         def test_serve_from_config(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan/tests/test_base.py 
new/pecan-1.4.1/pecan/tests/test_base.py
--- old/pecan-1.4.0/pecan/tests/test_base.py    2020-07-30 18:00:23.000000000 
+0200
+++ new/pecan-1.4.1/pecan/tests/test_base.py    2021-12-08 18:46:27.000000000 
+0100
@@ -456,8 +456,12 @@
             assert type(ex) == TypeError
             assert ex.args[0] in (
                 "index() takes exactly 2 arguments (1 given)",
-                "index() missing 1 required positional argument: 'id'"
-            )  # this messaging changed in Python 3.3
+                "index() missing 1 required positional argument: 'id'",
+                (
+                    "TestControllerArguments.app_.<locals>.RootController."
+                    "index() missing 1 required positional argument: 'id'"
+                ),
+            )  # this messaging changed in Python 3.3 and again in Python 3.10
 
     def test_single_argument(self):
         r = self.app_.get('/1')
@@ -994,9 +998,13 @@
         except Exception as ex:
             assert type(ex) == TypeError
             assert ex.args[0] in (
-                "eater() takes at least 2 arguments (1 given)",
-                "eater() missing 1 required positional argument: 'id'"
-            )  # this messaging changed in Python 3.3
+                "eater() takes exactly 2 arguments (1 given)",
+                "eater() missing 1 required positional argument: 'id'",
+                (
+                    "TestControllerArguments.app_.<locals>.RootController."
+                    "eater() missing 1 required positional argument: 'id'"
+                ),
+            )  # this messaging changed in Python 3.3 and again in Python 3.10
 
     def test_one_remainder(self):
         r = self.app_.get('/eater/1')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan/tests/test_conf.py 
new/pecan-1.4.1/pecan/tests/test_conf.py
--- old/pecan-1.4.0/pecan/tests/test_conf.py    2020-07-30 18:00:23.000000000 
+0200
+++ new/pecan-1.4.1/pecan/tests/test_conf.py    2021-12-08 18:46:27.000000000 
+0100
@@ -338,7 +338,7 @@
     def test_invalid_path(self):
         os.environ['PECAN_CONFIG'] = '/'
         msg = "PECAN_CONFIG was set to an invalid path: /"
-        self.assertRaisesRegexp(
+        self.assertRaisesRegex(
             RuntimeError,
             msg,
             self.get_conf_path_from_env
@@ -347,7 +347,7 @@
     def test_is_not_set(self):
         msg = "PECAN_CONFIG is not set and " \
               "no config file was passed as an argument."
-        self.assertRaisesRegexp(
+        self.assertRaisesRegex(
             RuntimeError,
             msg,
             self.get_conf_path_from_env
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan/tests/test_no_thread_locals.py 
new/pecan-1.4.1/pecan/tests/test_no_thread_locals.py
--- old/pecan-1.4.0/pecan/tests/test_no_thread_locals.py        2020-07-30 
18:00:23.000000000 +0200
+++ new/pecan-1.4.1/pecan/tests/test_no_thread_locals.py        2021-12-08 
18:46:27.000000000 +0100
@@ -361,9 +361,13 @@
         except Exception as ex:
             assert type(ex) == TypeError
             assert ex.args[0] in (
-                "index() takes exactly 4 arguments (3 given)",
-                "index() missing 1 required positional argument: 'id'"
-            )  # this messaging changed in Python 3.3
+                "index() takes exactly 2 arguments (1 given)",
+                "index() missing 1 required positional argument: 'id'",
+                (
+                    "TestControllerArguments.app_.<locals>.RootController."
+                    "index() missing 1 required positional argument: 'id'"
+                ),
+            )  # this messaging changed in Python 3.3 and again in Python 3.10
 
     def test_single_argument(self):
         r = self.app_.get('/1')
@@ -763,9 +767,13 @@
         except Exception as ex:
             assert type(ex) == TypeError
             assert ex.args[0] in (
-                "eater() takes at least 4 arguments (3 given)",
-                "eater() missing 1 required positional argument: 'id'"
-            )  # this messaging changed in Python 3.3
+                "eater() takes exactly 2 arguments (1 given)",
+                "eater() missing 1 required positional argument: 'id'",
+                (
+                    "TestControllerArguments.app_.<locals>.RootController."
+                    "eater() missing 1 required positional argument: 'id'"
+                ),
+            )  # this messaging changed in Python 3.3 and again in Python 3.10
 
     def test_one_remainder(self):
         r = self.app_.get('/eater/1')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan.egg-info/PKG-INFO 
new/pecan-1.4.1/pecan.egg-info/PKG-INFO
--- old/pecan-1.4.0/pecan.egg-info/PKG-INFO     2020-07-30 18:29:36.000000000 
+0200
+++ new/pecan-1.4.1/pecan.egg-info/PKG-INFO     2021-12-08 18:51:10.000000000 
+0100
@@ -1,12 +1,11 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: pecan
-Version: 1.4.0
+Version: 1.4.1
 Summary: A WSGI object-dispatching web framework, designed to be lean and 
fast, with few dependencies.
 Home-page: http://github.com/pecan/pecan
 Author: Jonathan LaCour
 Author-email: i...@pecanpy.org
 License: BSD
-Description: UNKNOWN
 Keywords: web framework wsgi object-dispatch http
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
@@ -20,7 +19,15 @@
 Classifier: Operating System :: POSIX
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-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 :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
 Classifier: Topic :: Software Development :: Libraries :: Application 
Frameworks
+License-File: LICENSE
+License-File: AUTHORS
+
+UNKNOWN
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan.egg-info/SOURCES.txt 
new/pecan-1.4.1/pecan.egg-info/SOURCES.txt
--- old/pecan-1.4.0/pecan.egg-info/SOURCES.txt  2020-07-30 18:29:36.000000000 
+0200
+++ new/pecan-1.4.1/pecan.egg-info/SOURCES.txt  2021-12-08 18:51:10.000000000 
+0100
@@ -1,3 +1,4 @@
+AUTHORS
 LICENSE
 MANIFEST.in
 README.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/pecan.egg-info/requires.txt 
new/pecan-1.4.1/pecan.egg-info/requires.txt
--- old/pecan-1.4.0/pecan.egg-info/requires.txt 2020-07-30 18:29:36.000000000 
+0200
+++ new/pecan-1.4.1/pecan.egg-info/requires.txt 2021-12-08 18:51:10.000000000 
+0100
@@ -1,5 +1,6 @@
 WebOb>=1.8
 Mako>=0.4.0
 WebTest>=1.3.1
+setuptools
 six
 logutils>=0.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/requirements.txt 
new/pecan-1.4.1/requirements.txt
--- old/pecan-1.4.0/requirements.txt    2020-07-30 18:00:23.000000000 +0200
+++ new/pecan-1.4.1/requirements.txt    2021-12-08 18:46:27.000000000 +0100
@@ -1,5 +1,6 @@
 WebOb>=1.8
 Mako>=0.4.0
 WebTest>=1.3.1
+setuptools
 six
 logutils>=0.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pecan-1.4.0/setup.py new/pecan-1.4.1/setup.py
--- old/pecan-1.4.0/setup.py    2020-07-30 18:01:05.000000000 +0200
+++ new/pecan-1.4.1/setup.py    2021-12-08 18:46:27.000000000 +0100
@@ -3,7 +3,7 @@
 
 from setuptools import setup, find_packages
 
-version = '1.4.0'
+version = '1.4.1'
 
 #
 # determine requirements
@@ -67,8 +67,11 @@
         'Operating System :: POSIX',
         'Programming Language :: Python',
         'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.5',
         'Programming Language :: Python :: 3.6',
+        'Programming Language :: Python :: 3.7',
+        'Programming Language :: Python :: 3.8',
+        'Programming Language :: Python :: 3.9',
+        'Programming Language :: Python :: 3.10',
         'Topic :: Internet :: WWW/HTTP :: WSGI',
         'Topic :: Software Development :: Libraries :: Application Frameworks'
     ],

Reply via email to