Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 aiofiles, 4 aiohttp, 5 aioresponses, 6 aiounittest, 7 buildPythonPackage, 8 ciso8601, 9 fetchFromGitHub, 10 freenub, 11 poetry-core, 12 propcache, 13 pyjwt, 14 pytest-asyncio, 15 pytest-cov-stub, 16 pytest-freezegun, 17 pytestCheckHook, 18 python-dateutil, 19 python-socketio, 20 pythonOlder, 21 requests-mock, 22 requests, 23 typing-extensions, 24}: 25 26buildPythonPackage rec { 27 pname = "yalexs"; 28 version = "8.11.0"; 29 pyproject = true; 30 31 disabled = pythonOlder "3.9"; 32 33 src = fetchFromGitHub { 34 owner = "bdraco"; 35 repo = "yalexs"; 36 tag = "v${version}"; 37 hash = "sha256-ajKe0pIUV2xwFi49MR4NK19G1DZ84e6oSJQIGlXq+Vo="; 38 }; 39 40 build-system = [ poetry-core ]; 41 42 pythonRelaxDeps = [ "aiohttp" ]; 43 44 dependencies = [ 45 aiofiles 46 aiohttp 47 ciso8601 48 freenub 49 propcache 50 pyjwt 51 python-dateutil 52 python-socketio 53 requests 54 typing-extensions 55 ] 56 ++ python-socketio.optional-dependencies.asyncio_client; 57 58 nativeCheckInputs = [ 59 aioresponses 60 aiounittest 61 pytest-asyncio 62 pytest-cov-stub 63 pytest-freezegun 64 pytestCheckHook 65 requests-mock 66 ]; 67 68 pythonImportsCheck = [ "yalexs" ]; 69 70 meta = with lib; { 71 description = "Python API for Yale Access (formerly August) Smart Lock and Doorbell"; 72 homepage = "https://github.com/bdraco/yalexs"; 73 changelog = "https://github.com/bdraco/yalexs/blob/${src.rev}/CHANGELOG.md"; 74 license = with licenses; [ mit ]; 75 maintainers = with maintainers; [ fab ]; 76 }; 77}