e7ec2969af
GitOrigin-RevId: 9b19f5e77dd906cb52dade0b7bd280339d2a1f3d
134 lines
2.2 KiB
Nix
134 lines
2.2 KiB
Nix
{ lib
|
|
, buildPythonPackage
|
|
, fetchPypi
|
|
, pythonOlder
|
|
, setuptools
|
|
, pydantic
|
|
|
|
# extras: babel
|
|
, babel
|
|
, flask-babel
|
|
|
|
# extras: common
|
|
, bcrypt
|
|
, bleach
|
|
, flask-mailman
|
|
|
|
# extras: fsqla
|
|
, flask-sqlalchemy
|
|
, sqlalchemy
|
|
, sqlalchemy-utils
|
|
|
|
# extras: mfa
|
|
, cryptography
|
|
, phonenumbers
|
|
, webauthn
|
|
, qrcode
|
|
|
|
# propagates
|
|
, email-validator
|
|
, flask
|
|
, flask-login
|
|
, flask-principal
|
|
, flask-wtf
|
|
, passlib
|
|
, importlib-resources
|
|
, wtforms
|
|
|
|
# tests
|
|
, argon2-cffi
|
|
, mongoengine
|
|
, mongomock
|
|
, peewee
|
|
, pony
|
|
, pytestCheckHook
|
|
, python-dateutil
|
|
, zxcvbn
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "flask-security-too";
|
|
version = "5.3.3";
|
|
pyproject = true;
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchPypi {
|
|
pname = "Flask-Security-Too";
|
|
inherit version;
|
|
hash = "sha256-we2TquU28qP/ir4eE67J0Nlft/8IL8w7Ny3ypSE5cNk=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
setuptools
|
|
];
|
|
|
|
propagatedBuildInputs = [
|
|
email-validator
|
|
flask
|
|
flask-login
|
|
flask-principal
|
|
flask-wtf
|
|
passlib
|
|
importlib-resources
|
|
wtforms
|
|
];
|
|
|
|
passthru.optional-dependencies = {
|
|
babel = [
|
|
babel
|
|
flask-babel
|
|
];
|
|
common = [
|
|
bcrypt
|
|
bleach
|
|
flask-mailman
|
|
];
|
|
fsqla = [
|
|
flask-sqlalchemy
|
|
sqlalchemy
|
|
sqlalchemy-utils
|
|
];
|
|
mfa = [
|
|
cryptography
|
|
phonenumbers
|
|
webauthn
|
|
qrcode
|
|
];
|
|
};
|
|
|
|
nativeCheckInputs = [
|
|
argon2-cffi
|
|
mongoengine
|
|
mongomock
|
|
peewee
|
|
pony
|
|
pytestCheckHook
|
|
python-dateutil
|
|
zxcvbn
|
|
]
|
|
++ passthru.optional-dependencies.babel
|
|
++ passthru.optional-dependencies.common
|
|
++ passthru.optional-dependencies.fsqla
|
|
++ passthru.optional-dependencies.mfa;
|
|
|
|
|
|
disabledTests = [
|
|
# needs /etc/resolv.conf
|
|
"test_login_email_whatever"
|
|
];
|
|
|
|
pythonImportsCheck = [
|
|
"flask_security"
|
|
];
|
|
|
|
meta = with lib; {
|
|
changelog = "https://github.com/Flask-Middleware/flask-security/blob/${version}/CHANGES.rst";
|
|
homepage = "https://github.com/Flask-Middleware/flask-security";
|
|
description = "Simple security for Flask apps (fork)";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ gador ];
|
|
# https://github.com/Flask-Middleware/flask-security/pull/851
|
|
broken = versionAtLeast pydantic.version "2";
|
|
};
|
|
}
|