Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, buildPythonPackage 3, fetchPypi 4, apispec 5, colorama 6, click 7, email-validator 8, flask 9, flask-babel 10, flask-login 11, flask-openid 12, flask-sqlalchemy 13, flask-wtf 14, flask-jwt-extended 15, jsonschema 16, marshmallow 17, marshmallow-enum 18, marshmallow-sqlalchemy 19, python-dateutil 20, pythonOlder 21, prison 22, pyjwt 23, pyyaml 24, sqlalchemy-utils 25}: 26 27buildPythonPackage rec { 28 pname = "flask-appbuilder"; 29 version = "4.2.1"; 30 format = "setuptools"; 31 32 disabled = pythonOlder "3.7"; 33 34 src = fetchPypi { 35 pname = "Flask-AppBuilder"; 36 inherit version; 37 hash = "sha256-rZbu0Bif5pOa/zu6MCrbGJpkqUdYzWyVgp6tqRzGyIc="; 38 }; 39 40 propagatedBuildInputs = [ 41 apispec 42 colorama 43 click 44 email-validator 45 flask 46 flask-babel 47 flask-login 48 flask-openid 49 flask-sqlalchemy 50 flask-wtf 51 flask-jwt-extended 52 jsonschema 53 marshmallow 54 marshmallow-enum 55 marshmallow-sqlalchemy 56 python-dateutil 57 prison 58 pyjwt 59 pyyaml 60 sqlalchemy-utils 61 ] ++ apispec.optional-dependencies.yaml; 62 63 postPatch = '' 64 substituteInPlace setup.py \ 65 --replace "apispec[yaml]>=3.3, <6" "apispec[yaml]" \ 66 --replace "Flask-SQLAlchemy>=2.4, <3" "Flask-SQLAlchemy" \ 67 --replace "Flask-Babel>=1, <3" "Flask-Babel" \ 68 --replace "marshmallow-sqlalchemy>=0.22.0, <0.27.0" "marshmallow-sqlalchemy" \ 69 --replace "prison>=0.2.1, <1.0.0" "prison" 70 ''; 71 72 # Majority of tests require network access or mongo 73 doCheck = false; 74 75 pythonImportsCheck = [ 76 "flask_appbuilder" 77 ]; 78 79 meta = with lib; { 80 description = "Application development framework, built on top of Flask"; 81 homepage = "https://github.com/dpgaspar/flask-appbuilder/"; 82 changelog = "https://github.com/dpgaspar/Flask-AppBuilder/blob/v${version}/CHANGELOG.rst"; 83 license = licenses.bsd3; 84 maintainers = with maintainers; [ costrouc ]; 85 # Support for flask-sqlalchemy >= 3.0 is missing, https://github.com/dpgaspar/Flask-AppBuilder/pull/1940 86 broken = true; 87 }; 88}