1{ lib
2, buildPythonPackage
3, fetchPypi
4, pythonOlder
5
6# extras: babel
7, babel
8, flask-babel
9
10# extras: common
11, bcrypt
12, bleach
13, flask-mailman
14, qrcode
15
16# extras: fsqla
17, flask-sqlalchemy
18, sqlalchemy
19, sqlalchemy-utils
20
21# extras: mfa
22, cryptography
23, phonenumbers
24
25# propagates
26, blinker
27, email-validator
28, flask
29, flask-login
30, flask_principal
31, flask-wtf
32, itsdangerous
33, passlib
34
35# tests
36, argon2-cffi
37, flask-mongoengine
38, mongoengine
39, mongomock
40, peewee
41, pony
42, pytestCheckHook
43, python-dateutil
44, zxcvbn
45}:
46
47buildPythonPackage rec {
48 pname = "flask-security-too";
49 version = "5.1.2";
50 format = "setuptools";
51
52 disabled = pythonOlder "3.7";
53
54 src = fetchPypi {
55 pname = "Flask-Security-Too";
56 inherit version;
57 hash = "sha256-lZzm43m30y+2qjxNddFEeg9HDlQP9afq5VtuR25zaLc=";
58 };
59
60 propagatedBuildInputs = [
61 blinker
62 email-validator
63 flask
64 flask-login
65 flask_principal
66 flask-wtf
67 itsdangerous
68 passlib
69 ];
70
71 passthru.optional-dependencies = {
72 babel = [
73 babel
74 flask-babel
75 ];
76 common = [
77 bcrypt
78 bleach
79 flask-mailman
80 qrcode
81 ];
82 fsqla = [
83 flask-sqlalchemy
84 sqlalchemy
85 sqlalchemy-utils
86 ];
87 mfa = [
88 cryptography
89 phonenumbers
90 ];
91 };
92
93 nativeCheckInputs = [
94 argon2-cffi
95 flask-mongoengine
96 mongoengine
97 mongomock
98 peewee
99 pony
100 pytestCheckHook
101 python-dateutil
102 zxcvbn
103 ]
104 ++ passthru.optional-dependencies.babel
105 ++ passthru.optional-dependencies.common
106 ++ passthru.optional-dependencies.fsqla
107 ++ passthru.optional-dependencies.mfa;
108
109
110 pythonImportsCheck = [
111 "flask_security"
112 ];
113
114 meta = with lib; {
115 changelog = "https://github.com/Flask-Middleware/flask-security/blob/${version}/CHANGES.rst";
116 homepage = "https://github.com/Flask-Middleware/flask-security";
117 description = "Simple security for Flask apps (fork)";
118 license = licenses.mit;
119 maintainers = with maintainers; [ gador ];
120 };
121}