1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 httpx, 7 pytestCheckHook, 8 pytest-asyncio, 9}: 10buildPythonPackage rec { 11 pname = "biothings-client"; 12 version = "0.4.1"; 13 pyproject = true; 14 15 src = fetchFromGitHub { 16 owner = "biothings"; 17 repo = "biothings_client.py"; 18 tag = "v${version}"; 19 hash = "sha256-uItIVoWbclF5Xkt7BxI/Q9sfKtrOJxYeJJmTd2NeGfo="; 20 }; 21 22 build-system = [ setuptools ]; 23 dependencies = [ httpx ]; 24 pythonImportsCheck = [ "biothings_client" ]; 25 26 nativeCheckInputs = [ 27 pytestCheckHook 28 pytest-asyncio 29 ]; 30 31 enabledTestPaths = [ 32 # All other tests make network requests to exercise the API 33 "tests/test_async.py::test_generate_async_settings" 34 "tests/test_async.py::test_url_protocol" 35 "tests/test_async.py::test_async_client_proxy_discovery" 36 "tests/test_async_variant.py::test_format_hgvs" 37 "tests/test_sync.py::test_generate_settings" 38 "tests/test_sync.py::test_url_protocol" 39 "tests/test_sync.py::test_client_proxy_discovery" 40 "tests/test_variant.py::test_format_hgvs" 41 ]; 42 43 meta = { 44 changelog = "https://github.com/biothings/biothings_client.py/blob/${src.tag}/CHANGES.txt"; 45 description = "Wrapper to access Biothings.api-based backend services"; 46 homepage = "https://github.com/biothings/biothings_client.py"; 47 license = lib.licenses.bsd3; 48 maintainers = with lib.maintainers; [ rayhem ]; 49 }; 50}