1{ lib
2, aniso8601
3, blinker
4, buildPythonPackage
5, fetchPypi
6, flask
7, mock
8, nose
9, pytestCheckHook
10, pythonOlder
11, pytz
12, six
13, werkzeug
14}:
15
16buildPythonPackage rec {
17 pname = "flask-restful";
18 version = "0.3.10";
19 format = "setuptools";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 pname = "Flask-RESTful";
25 inherit version;
26 hash = "sha256-/kry7wAn34+bT3l6uiDFVmgBtq3plaxjtYir8aWc7Dc=";
27 };
28
29 # conditional so that overrides are easier for web applications
30 patches = lib.optionals (lib.versionAtLeast werkzeug.version "2.1.0") [
31 ./werkzeug-2.1.0-compat.patch
32 ];
33
34 propagatedBuildInputs = [
35 aniso8601
36 flask
37 pytz
38 six
39 ];
40
41 nativeCheckInputs = [
42 blinker
43 mock
44 nose
45 pytestCheckHook
46 ];
47
48 disabledTests = [
49 # Broke in flask 2.2 upgrade
50 "test_exception_header_forwarded"
51 # Broke in werkzeug 2.3 upgrade
52 "test_media_types_method"
53 "test_media_types_q"
54 ];
55
56 pythonImportsCheck = [
57 "flask_restful"
58 ];
59
60 meta = with lib; {
61 description = "Framework for creating REST APIs";
62 homepage = "https://flask-restful.readthedocs.io";
63 longDescription = ''
64 Flask-RESTful provides the building blocks for creating a great
65 REST API.
66 '';
67 license = licenses.bsd3;
68 maintainers = with maintainers; [ ];
69 };
70}