1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 poetry-core, 6 itsdangerous, 7 redis, 8 starlette, 9 pytestCheckHook, 10 pytest-asyncio, 11 pytest-cov-stub, 12 httpx, 13}: 14 15buildPythonPackage rec { 16 pname = "starsessions"; 17 version = "2.2.1"; 18 pyproject = true; 19 20 src = fetchFromGitHub { 21 owner = "alex-oleshkevich"; 22 repo = "starsessions"; 23 tag = "v${version}"; 24 hash = "sha256-JI044sn6LQI37PvSLdz2dooa3v5qdHmp6DZD0p7VzJU="; 25 }; 26 27 build-system = [ poetry-core ]; 28 29 dependencies = [ 30 itsdangerous 31 starlette 32 ]; 33 34 pythonImportsCheck = [ "starsessions" ]; 35 36 optional-dependencies = { 37 redis = [ 38 redis 39 ]; 40 }; 41 42 nativeCheckInputs = [ 43 httpx 44 pytestCheckHook 45 pytest-asyncio 46 pytest-cov-stub 47 ]; 48 49 disabledTestPaths = [ 50 "tests/backends/test_redis.py" # requires a running redis instance 51 ]; 52 53 meta = { 54 description = "Advanced sessions for Starlette and FastAPI frameworks"; 55 homepage = "https://github.com/alex-oleshkevich/starsessions"; 56 license = lib.licenses.mit; 57 maintainers = with lib.maintainers; [ drupol ]; 58 }; 59}