1{ 2 lib, 3 aiohttp, 4 aioresponses, 5 apischema, 6 buildPythonPackage, 7 fetchFromGitHub, 8 freezegun, 9 gql, 10 graphql-core, 11 pytest-asyncio, 12 pytestCheckHook, 13 pythonOlder, 14 requests, 15 setuptools, 16 setuptools-scm, 17}: 18 19buildPythonPackage rec { 20 pname = "pydrawise"; 21 version = "2024.4.1"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.10"; 25 26 src = fetchFromGitHub { 27 owner = "dknowles2"; 28 repo = "pydrawise"; 29 rev = "refs/tags/${version}"; 30 hash = "sha256-rJul7UAhgB0a6+3buPlfjnhhy2QOo82gvmRtZB+vrko="; 31 }; 32 33 build-system = [ 34 setuptools 35 setuptools-scm 36 ]; 37 38 dependencies = [ 39 aiohttp 40 apischema 41 gql 42 graphql-core 43 requests 44 ]; 45 46 nativeCheckInputs = [ 47 aioresponses 48 freezegun 49 pytest-asyncio 50 pytestCheckHook 51 ]; 52 53 pythonImportsCheck = [ "pydrawise" ]; 54 55 meta = with lib; { 56 description = "Library for interacting with Hydrawise sprinkler controllers through the GraphQL API"; 57 homepage = "https://github.com/dknowles2/pydrawise"; 58 changelog = "https://github.com/dknowles2/pydrawise/releases/tag/${version}"; 59 license = licenses.asl20; 60 maintainers = with maintainers; [ fab ]; 61 }; 62}