From 0a044f75b54d92417debf600fe7c4c4f86af344d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 16 Mar 2020 03:55:16 +0100 Subject: 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. --- gnu/local.mk | 1 + .../python-flask-restful-werkzeug-compat.patch | 36 ++++++++++++++++++++++ gnu/packages/python-web.scm | 8 ++--- 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/patches/python-flask-restful-werkzeug-compat.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3be54b2627..1dd7e0a6a8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1327,6 +1327,7 @@ dist_patch_DATA = \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ %D%/packages/patches/python-configobj-setuptools.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ + %D%/packages/patches/python-flask-restful-werkzeug-compat.patch \ %D%/packages/patches/python-keras-integration-test.patch \ %D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \ %D%/packages/patches/python-pyfakefs-remove-bad-test.patch \ 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 -- cgit v1.2.3