summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-03-16 03:55:16 +0100
committerMarius Bakke <mbakke@fastmail.com>2020-03-16 15:45:33 +0100
commit0a044f75b54d92417debf600fe7c4c4f86af344d (patch)
tree8e227cdb67c427fbd77a50779c6fcb813b7d3505 /gnu/packages
parent8f29817ed523dd4e5dbd459ecb94dbd1cab6a4fc (diff)
downloadguix-0a044f75b54d92417debf600fe7c4c4f86af344d.tar.gz
gnu: python-flask-restful: Update to 0.3.8.
* gnu/packages/patches/python-flask-restful-werkzeug-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-web.scm (python-flask-restful): Update to 0.3.8.
[source](patches): New field.
[native-inputs]: Remove PYTHON-SPHINX.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/patches/python-flask-restful-werkzeug-compat.patch36
-rw-r--r--gnu/packages/python-web.scm8
2 files changed, 40 insertions, 4 deletions
diff --git a/gnu/packages/patches/python-flask-restful-werkzeug-compat.patch b/gnu/packages/patches/python-flask-restful-werkzeug-compat.patch
new file mode 100644
index 0000000000..0e928ef455
--- /dev/null
+++ b/gnu/packages/patches/python-flask-restful-werkzeug-compat.patch
@@ -0,0 +1,36 @@
+We need one patch on top of 0.3.8 for compatibility with Werkzeug 1.0.
+
+Taken from upstream:
+https://github.com/flask-restful/flask-restful/commit/73376a488907af3042b52678ac4c23f8a8911e5b
+
+diff --git a/tests/test_api.py b/tests/test_api.py
+index f7f8e661..6795d362 100644
+--- a/tests/test_api.py
++++ b/tests/test_api.py
+@@ -445,7 +445,9 @@ def test_handle_non_api_error(self):
+ 
+         resp = app.get("/foo")
+         self.assertEquals(resp.status_code, 404)
+-        self.assertEquals('text/html', resp.headers['Content-Type'])
++        # in newer versions of werkzeug this is `text/html; charset=utf8`
++        content_type, _, _ = resp.headers['Content-Type'].partition(';')
++        self.assertEquals('text/html', content_type)
+ 
+     def test_non_api_error_404_catchall(self):
+         app = Flask(__name__)
+diff --git a/tests/test_reqparse.py b/tests/test_reqparse.py
+index 2f1fbedf..9776f17c 100644
+--- a/tests/test_reqparse.py
++++ b/tests/test_reqparse.py
+@@ -2,9 +2,9 @@
+ import unittest
+ from mock import Mock, patch
+ from flask import Flask
+-from werkzeug import exceptions, MultiDict
++from werkzeug import exceptions
+ from werkzeug.wrappers import Request
+-from werkzeug.datastructures import FileStorage
++from werkzeug.datastructures import FileStorage, MultiDict
+ from flask_restful.reqparse import Argument, RequestParser, Namespace
+ import six
+ import decimal
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6d4204bad0..ae01f83611 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2173,14 +2173,15 @@ pretty printer and a tree visitor.")
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-    (version "0.3.7")
+    (version "0.3.8")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "Flask-RESTful" version))
+        (patches (search-patches "python-flask-restful-werkzeug-compat.patch"))
         (sha256
          (base32
-          "1a9cbwkr6krryyzq4sd3f415nkkc6dyfls5i3pgyibs94g0hw97q"))))
+          "05b9lzx5yc3wgml2bcq50lq35h66m8zpj6dc9advcb5z3acsbaay"))))
     (build-system python-build-system)
     (propagated-inputs
       `(("python-aniso8601" ,python-aniso8601)
@@ -2191,8 +2192,7 @@ pretty printer and a tree visitor.")
       `(;; Optional dependency of Flask. Tests need it.
         ("python-blinker" ,python-blinker)
         ("python-mock" ,python-mock) ; For tests
-        ("python-nose" ,python-nose) ; For tests
-        ("python-sphinx" ,python-sphinx)))
+        ("python-nose" ,python-nose)))  ;for tests
     (home-page
       "https://www.github.com/flask-restful/flask-restful/")
     (synopsis