1{ lib 2, buildPythonPackage 3, cachelib 4, cryptography 5, fetchFromGitHub 6, flask 7, flask-sqlalchemy 8, httpx 9, mock 10, pytest-asyncio 11, pytestCheckHook 12, pythonOlder 13, requests 14, starlette 15, werkzeug 16}: 17 18buildPythonPackage rec { 19 pname = "authlib"; 20 version = "1.2.1"; 21 format = "setuptools"; 22 23 disabled = pythonOlder "3.7"; 24 25 src = fetchFromGitHub { 26 owner = "lepture"; 27 repo = "authlib"; 28 rev = "refs/tags/v${version}"; 29 hash = "sha256-K6u590poZ9C3Uzi3a8k8aXMeSeRgn91e+p2PWYno3Y8="; 30 }; 31 32 propagatedBuildInputs = [ 33 cryptography 34 requests 35 ]; 36 37 nativeCheckInputs = [ 38 cachelib 39 flask 40 flask-sqlalchemy 41 httpx 42 mock 43 pytest-asyncio 44 pytestCheckHook 45 starlette 46 werkzeug 47 ]; 48 49 pythonImportsCheck = [ 50 "authlib" 51 ]; 52 53 disabledTestPaths = [ 54 # Django tests require a running instance 55 "tests/django/" 56 "tests/clients/test_django/" 57 # Unsupported encryption algorithm 58 "tests/jose/test_chacha20.py" 59 ]; 60 61 meta = with lib; { 62 description = "Library for building OAuth and OpenID Connect servers"; 63 homepage = "https://github.com/lepture/authlib"; 64 changelog = "https://github.com/lepture/authlib/blob/v${version}/docs/changelog.rst"; 65 license = licenses.bsd3; 66 maintainers = with maintainers; [ flokli ]; 67 }; 68}