1{ 2 lib, 3 aiohttp, 4 aresponses, 5 async-timeout, 6 backoff, 7 buildPythonPackage, 8 fetchFromGitHub, 9 poetry-core, 10 pytest-asyncio, 11 pytestCheckHook, 12 pythonOlder, 13 sigstore, 14 writableTmpDirAsHomeHook, 15}: 16 17buildPythonPackage rec { 18 pname = "aiogithubapi"; 19 version = "25.5.0"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.9"; 23 24 src = fetchFromGitHub { 25 owner = "ludeeus"; 26 repo = "aiogithubapi"; 27 tag = version; 28 hash = "sha256-zl9QpFpkvSTs0BUDMBmwTeLY1YvNRSqbkIZ5LDUP3zw="; 29 }; 30 31 __darwinAllowLocalNetworking = true; 32 33 postPatch = '' 34 # Upstream is releasing with the help of a CI to PyPI, GitHub releases 35 # are not in their focus 36 substituteInPlace pyproject.toml \ 37 --replace-fail 'version = "0"' 'version = "${version}"' 38 ''; 39 40 pythonRelaxDeps = [ "async-timeout" ]; 41 42 build-system = [ poetry-core ]; 43 44 dependencies = [ 45 aiohttp 46 async-timeout 47 backoff 48 ]; 49 50 # Optional dependencies for deprecated-verify are not added 51 # Only sigstore < 2 is supported 52 53 nativeCheckInputs = [ 54 aresponses 55 pytest-asyncio 56 pytestCheckHook 57 writableTmpDirAsHomeHook 58 ]; 59 60 pytestFlags = [ "--asyncio-mode=auto" ]; 61 62 preCheck = '' 63 # Need sigstore is an optional dependencies and need <2 64 rm -rf tests/test_helper.py 65 ''; 66 67 pythonImportsCheck = [ "aiogithubapi" ]; 68 69 meta = { 70 description = "Python client for the GitHub API"; 71 homepage = "https://github.com/ludeeus/aiogithubapi"; 72 changelog = "https://github.com/ludeeus/aiogithubapi/releases/tag/${version}"; 73 license = lib.licenses.mit; 74 maintainers = with lib.maintainers; [ fab ]; 75 }; 76}