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