1{ 2 lib, 3 betamax, 4 blinker, 5 buildPythonPackage, 6 coverage, 7 fetchFromGitHub, 8 flask, 9 flask-caching, 10 flask-login, 11 flask-sqlalchemy, 12 flit, 13 freezegun, 14 oauthlib, 15 pallets-sphinx-themes, 16 pillow, 17 pytest, 18 pytest-mock, 19 pytestCheckHook, 20 requests, 21 requests-oauthlib, 22 responses, 23 sphinx, 24 sphinxcontrib-seqdiag, 25 sphinxcontrib-spelling, 26 sqlalchemy, 27 urlobject, 28 werkzeug, 29}: 30 31buildPythonPackage rec { 32 pname = "flask-dance"; 33 version = "7.1.0"; 34 pyproject = true; 35 36 src = fetchFromGitHub { 37 owner = "singingwolfboy"; 38 repo = "flask-dance"; 39 tag = "v${version}"; 40 hash = "sha256-rKHC0G5S7l52QSrbbweMii68AZuBAgf6tYsJdPKIeUk="; 41 }; 42 43 build-system = [ flit ]; 44 45 dependencies = [ 46 flask 47 oauthlib 48 requests 49 requests-oauthlib 50 urlobject 51 werkzeug 52 ]; 53 54 optional-dependencies = { 55 docs = [ 56 betamax 57 pallets-sphinx-themes 58 pillow 59 sphinx 60 sphinxcontrib-seqdiag 61 sphinxcontrib-spelling 62 sqlalchemy 63 ]; 64 65 signals = [ blinker ]; 66 67 sqla = [ sqlalchemy ]; 68 69 test = [ 70 betamax 71 coverage 72 flask-caching 73 flask-login 74 flask-sqlalchemy 75 freezegun 76 oauthlib 77 pytest 78 pytest-mock 79 responses 80 sqlalchemy 81 ]; 82 }; 83 84 nativeCheckInputs = [ pytestCheckHook ] ++ lib.flatten (lib.attrValues optional-dependencies); 85 86 pythonImportsCheck = [ "flask_dance" ]; 87 88 meta = { 89 description = "Doing the OAuth dance with style using Flask, requests, and oauthlib"; 90 homepage = "https://github.com/singingwolfboy/flask-dance"; 91 changelog = "https://github.com/singingwolfboy/flask-dance/releases/tag/${src.tag}"; 92 license = lib.licenses.mit; 93 maintainers = with lib.maintainers; [ getchoo ]; 94 }; 95}