Hello community,

here is the log from the commit of package python-Flask for openSUSE:Factory 
checked in at 2017-08-14 12:37:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Flask (Old)
 and      /work/SRC/openSUSE:Factory/.python-Flask.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-Flask"

Mon Aug 14 12:37:01 2017 rev:17 rq:515228 version:0.12.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Flask/python-Flask.changes        
2017-04-28 10:38:32.908082230 +0200
+++ /work/SRC/openSUSE:Factory/.python-Flask.new/python-Flask.changes   
2017-08-14 12:37:03.868903161 +0200
@@ -1,0 +2,6 @@
+Tue Aug  8 17:00:05 UTC 2017 - [email protected]
+
+- update to 0.12.2:
+  - Fix a bug in `safe_join` on Windows.
+
+-------------------------------------------------------------------

Old:
----
  Flask-0.12.1.tar.gz

New:
----
  Flask-0.12.2.tar.gz

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

Other differences:
------------------
++++++ python-Flask.spec ++++++
--- /var/tmp/diff_new_pack.zRhzbw/_old  2017-08-14 12:37:05.568664474 +0200
+++ /var/tmp/diff_new_pack.zRhzbw/_new  2017-08-14 12:37:05.580662789 +0200
@@ -19,7 +19,7 @@
 %define oldpython python
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-Flask
-Version:        0.12.1
+Version:        0.12.2
 Release:        0
 Summary:        A microframework based on Werkzeug, Jinja2 and good intentions
 License:        BSD-3-Clause
@@ -77,8 +77,12 @@
 %fdupes %{buildroot}%{python_sitelib}
 
 %check
+%if 0%{?suse_version} && 0%{?suse_version} <= 1315
+true
+%else
 export LANG=en_US.UTF-8
 %python_exec -m pytest tests
+%endif
 
 %files %{python_files}
 %defattr(-,root,root,-)

++++++ Flask-0.12.1.tar.gz -> Flask-0.12.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/CHANGES new/Flask-0.12.2/CHANGES
--- old/Flask-0.12.1/CHANGES    2017-03-31 18:43:21.000000000 +0200
+++ new/Flask-0.12.2/CHANGES    2017-05-16 08:39:14.000000000 +0200
@@ -15,6 +15,13 @@
   method returns compressed response by default, and pretty response in
   debug mode.
 
+Version 0.12.2
+--------------
+
+Released on May 16 2017
+
+- Fix a bug in `safe_join` on Windows.
+
 Version 0.12.1
 --------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/Flask.egg-info/PKG-INFO 
new/Flask-0.12.2/Flask.egg-info/PKG-INFO
--- old/Flask-0.12.1/Flask.egg-info/PKG-INFO    2017-03-31 18:43:36.000000000 
+0200
+++ new/Flask-0.12.2/Flask.egg-info/PKG-INFO    2017-05-16 08:39:30.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Flask
-Version: 0.12.1
+Version: 0.12.2
 Summary: A microframework based on Werkzeug, Jinja2 and good intentions
 Home-page: http://github.com/pallets/flask/
 Author: Armin Ronacher
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/PKG-INFO new/Flask-0.12.2/PKG-INFO
--- old/Flask-0.12.1/PKG-INFO   2017-03-31 18:43:37.000000000 +0200
+++ new/Flask-0.12.2/PKG-INFO   2017-05-16 08:39:32.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Flask
-Version: 0.12.1
+Version: 0.12.2
 Summary: A microframework based on Werkzeug, Jinja2 and good intentions
 Home-page: http://github.com/pallets/flask/
 Author: Armin Ronacher
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/docs/testing.rst 
new/Flask-0.12.2/docs/testing.rst
--- old/Flask-0.12.1/docs/testing.rst   2016-09-11 17:55:31.000000000 +0200
+++ new/Flask-0.12.2/docs/testing.rst   2017-05-16 08:39:01.000000000 +0200
@@ -41,7 +41,7 @@
 
         def setUp(self):
             self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp()
-            flaskr.app.config['TESTING'] = True
+            flaskr.app.testing = True
             self.app = flaskr.app.test_client()
             with flaskr.app.app_context():
                 flaskr.init_db()
@@ -98,8 +98,10 @@
 
         def setUp(self):
             self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp()
+            flaskr.app.testing = True
             self.app = flaskr.app.test_client()
-            flaskr.init_db()
+            with flaskr.app.app_context():
+                flaskr.init_db()
 
         def tearDown(self):
             os.close(self.db_fd)
@@ -208,7 +210,7 @@
 functions.  Here is a full example that demonstrates this approach::
 
     import flask
-    
+
     app = flask.Flask(__name__)
 
     with app.test_request_context('/?name=Peter'):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/flask/__init__.py 
new/Flask-0.12.2/flask/__init__.py
--- old/Flask-0.12.1/flask/__init__.py  2017-03-31 18:43:36.000000000 +0200
+++ new/Flask-0.12.2/flask/__init__.py  2017-05-16 08:39:30.000000000 +0200
@@ -10,7 +10,7 @@
     :license: BSD, see LICENSE for more details.
 """
 
-__version__ = '0.12.1'
+__version__ = '0.12.2'
 
 # utilities we import from Werkzeug and Jinja2 that are unused
 # in the module but are exported as public interface.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/flask/helpers.py 
new/Flask-0.12.2/flask/helpers.py
--- old/Flask-0.12.1/flask/helpers.py   2017-03-31 18:40:46.000000000 +0200
+++ new/Flask-0.12.2/flask/helpers.py   2017-05-16 08:39:01.000000000 +0200
@@ -619,18 +619,24 @@
     :raises: :class:`~werkzeug.exceptions.NotFound` if one or more passed
             paths fall out of its boundaries.
     """
+
+    parts = [directory]
+
     for filename in pathnames:
         if filename != '':
             filename = posixpath.normpath(filename)
-        for sep in _os_alt_seps:
-            if sep in filename:
-                raise NotFound()
-        if os.path.isabs(filename) or \
-           filename == '..' or \
-           filename.startswith('../'):
+
+        if (
+            any(sep in filename for sep in _os_alt_seps)
+            or os.path.isabs(filename)
+            or filename == '..'
+            or filename.startswith('../')
+        ):
             raise NotFound()
-        directory = os.path.join(directory, filename)
-    return directory
+
+        parts.append(filename)
+
+    return posixpath.join(*parts)
 
 
 def send_from_directory(directory, filename, **options):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-0.12.1/tests/test_helpers.py 
new/Flask-0.12.2/tests/test_helpers.py
--- old/Flask-0.12.1/tests/test_helpers.py      2017-03-31 18:40:46.000000000 
+0200
+++ new/Flask-0.12.2/tests/test_helpers.py      2017-05-16 08:39:01.000000000 
+0200
@@ -515,7 +515,7 @@
         assert rv.status_code == 416
         rv.close()
 
-        last_modified = datetime.datetime.fromtimestamp(os.path.getmtime(
+        last_modified = datetime.datetime.utcfromtimestamp(os.path.getmtime(
             os.path.join(app.root_path, 'static/index.html'))).replace(
             microsecond=0)
 
@@ -846,21 +846,20 @@
 
 
 class TestSafeJoin(object):
-
     def test_safe_join(self):
         # Valid combinations of *args and expected joined paths.
         passing = (
-            (('a/b/c', ), 'a/b/c'),
-            (('/', 'a/', 'b/', 'c/', ), '/a/b/c'),
-            (('a', 'b', 'c', ), 'a/b/c'),
-            (('/a', 'b/c', ), '/a/b/c'),
-            (('a/b', 'X/../c'), 'a/b/c', ),
-            (('/a/b', 'c/X/..'), '/a/b/c', ),
+            (('a/b/c',), 'a/b/c'),
+            (('/', 'a/', 'b/', 'c/'), '/a/b/c'),
+            (('a', 'b', 'c'), 'a/b/c'),
+            (('/a', 'b/c'), '/a/b/c'),
+            (('a/b', 'X/../c'), 'a/b/c'),
+            (('/a/b', 'c/X/..'), '/a/b/c'),
             # If last path is '' add a slash
-            (('/a/b/c', '', ), '/a/b/c/', ),
+            (('/a/b/c', ''), '/a/b/c/'),
             # Preserve dot slash
-            (('/a/b/c', './', ), '/a/b/c/.', ),
-            (('a/b/c', 'X/..'), 'a/b/c/.', ),
+            (('/a/b/c', './'), '/a/b/c/.'),
+            (('a/b/c', 'X/..'), 'a/b/c/.'),
             # Base directory is always considered safe
             (('../', 'a/b/c'), '../a/b/c'),
             (('/..', ), '/..'),
@@ -874,12 +873,12 @@
         failing = (
             # path.isabs and ``..'' checks
             ('/a', 'b', '/c'),
-            ('/a', '../b/c', ),
+            ('/a', '../b/c'),
             ('/a', '..', 'b/c'),
             # Boundaries violations after path normalization
-            ('/a', 'b/../b/../../c', ),
+            ('/a', 'b/../b/../../c'),
             ('/a', 'b', 'c/../..'),
-            ('/a', 'b/../../c', ),
+            ('/a', 'b/../../c'),
         )
 
         for args in failing:


Reply via email to