1{ lib 2, buildPythonPackage 3, email-validator 4, fetchFromGitHub 5, flask 6, flask-wtf 7, markupsafe 8, mongoengine 9, pythonOlder 10, setuptools 11, setuptools-scm 12, typing-extensions 13, wtforms 14}: 15 16buildPythonPackage rec { 17 pname = "flask-mongoengine"; 18 version = "1.0.0-unstable-2022-08-16"; 19 format = "pyproject"; 20 21 disabled = pythonOlder "3.7"; 22 23 src = fetchFromGitHub { 24 owner = "MongoEngine"; 25 repo = pname; 26 rev = "d4526139cb1e2e94111ab7de96bb629d574c1690"; 27 hash = "sha256-oMQU9Z8boc0q+0KzIQAZ8qSyxiITDY0M9FCg75S9MEY="; 28 }; 29 30 env.SETUPTOOLS_SCM_PRETEND_VERSION = "1.0.0"; 31 32 nativeBuildInputs = [ 33 setuptools 34 setuptools-scm 35 ]; 36 37 propagatedBuildInputs = [ 38 email-validator 39 flask 40 flask-wtf 41 mongoengine 42 ] ++ lib.optionals (pythonOlder "3.8") [ 43 typing-extensions 44 ]; 45 46 passthru.optional-dependencies = { 47 wtf = [ 48 flask-wtf 49 wtforms 50 ] ++ wtforms.optional-dependencies.email; 51 # toolbar = [ 52 # flask-debugtoolbar 53 # ]; 54 legacy = [ 55 markupsafe 56 ]; 57 }; 58 59 # Tests require working mongodb connection 60 doCheck = false; 61 62 pythonImportsCheck = [ 63 "flask_mongoengine" 64 ]; 65 66 meta = with lib; { 67 description = "Flask extension that provides integration with MongoEngine and WTF model forms"; 68 homepage = "https://github.com/mongoengine/flask-mongoengine"; 69 changelog = "https://github.com/MongoEngine/flask-mongoengine/releases/tag/v${version}"; 70 license = licenses.bsd3; 71 maintainers = with maintainers; [ ]; 72 }; 73}