about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix32
1 files changed, 20 insertions, 12 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
index 6e98f6e80ac5..f39393ecff7a 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
@@ -1,11 +1,11 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, nose
 , apispec
 , colorama
 , click
 , email_validator
+, fetchpatch
 , flask
 , flask-babel
 , flask_login
@@ -20,21 +20,28 @@
 , python-dateutil
 , prison
 , pyjwt
+, pyyaml
 , sqlalchemy-utils
 }:
 
 buildPythonPackage rec {
   pname = "flask-appbuilder";
-  version = "3.1.1";
+  version = "3.3.0";
 
   src = fetchPypi {
     pname = "Flask-AppBuilder";
     inherit version;
-    sha256 = "076b020b0ba125339a2e710e74eab52648cde2b18599f7cb0fa1eada9bbb648c";
+    sha256 = "00dsfv1apl6483wy20aj91f9h5ak2casbx5vcajv2nd3i7c7v8gx";
   };
 
-  checkInputs = [
-    nose
+  patches = [
+    # https://github.com/dpgaspar/Flask-AppBuilder/pull/1610
+    (fetchpatch {
+      name = "flask_jwt_extended-and-pyjwt-patch";
+      url = "https://github.com/dpgaspar/Flask-AppBuilder/commit/7097a7b133f27c78d2b54d2a46e4a4c24478a066.patch";
+      sha256 = "sha256-ZpY8+2Hoz3z01GVtw2OIbQcsmAwa7iwilFWzgcGhY1w=";
+      includes = [ "flask_appbuilder/security/manager.py" "setup.py" ];
+    })
   ];
 
   propagatedBuildInputs = [
@@ -56,22 +63,23 @@ buildPythonPackage rec {
     python-dateutil
     prison
     pyjwt
+    pyyaml
     sqlalchemy-utils
   ];
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "apispec[yaml]>=3.3, <4" "apispec" \
-      --replace "Flask-Login>=0.3, <0.5" "Flask-Login" \
-      --replace "Flask-Babel>=1, <2" "Flask-Babel" \
-      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy" \
-      --replace "prison>=0.1.3, <1.0.0" "prison"
+      --replace "apispec[yaml]>=3.3, <4" "apispec[yaml] >=3.3, <5" \
+      --replace "Flask-Login>=0.3, <0.5" "Flask-Login >=0.3, <0.6" \
+      --replace "Flask-Babel>=1, <2" "Flask-Babel >=1, <3" \
+      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy >=0.22.0, <0.25.0"
   '';
 
-
-  # majority of tests require network access or mongo
+  # Majority of tests require network access or mongo
   doCheck = false;
 
+  pythonImportsCheck = [ "flask_appbuilder" ];
+
   meta = with lib; {
     description = "Simple and rapid application development framework, built on top of Flask";
     homepage = "https://github.com/dpgaspar/flask-appbuilder/";