nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 80 lines 1.4 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 geopy, 6 hatchling, 7 httpx, 8 numpy, 9 pytest-asyncio, 10 pytest-cov-stub, 11 pytestCheckHook, 12 python-dateutil, 13 rapidfuzz, 14 scipy, 15 shapely, 16 time-machine, 17 xmltodict, 18}: 19 20buildPythonPackage rec { 21 pname = "avwx-engine"; 22 version = "1.9.7"; 23 pyproject = true; 24 25 src = fetchFromGitHub { 26 owner = "avwx-rest"; 27 repo = "avwx-engine"; 28 tag = version; 29 hash = "sha256-j+WT0v1h+dOGW90u+LIVQ0xIE4YzsWRo2E0mGOZUU1A="; 30 }; 31 32 build-system = [ hatchling ]; 33 34 dependencies = [ 35 geopy 36 httpx 37 python-dateutil 38 xmltodict 39 ]; 40 41 optional-dependencies = { 42 all = [ 43 numpy 44 rapidfuzz 45 scipy 46 shapely 47 ]; 48 fuzz = [ rapidfuzz ]; 49 scipy = [ 50 numpy 51 scipy 52 ]; 53 shape = [ shapely ]; 54 }; 55 56 nativeCheckInputs = [ 57 pytest-asyncio 58 pytest-cov-stub 59 pytestCheckHook 60 time-machine 61 ] 62 ++ lib.concatAttrValues optional-dependencies; 63 64 pythonImportsCheck = [ "avwx" ]; 65 66 disabledTests = [ 67 # Tests require network access 68 "fetch" 69 "test_nbm_all" 70 "test_station_nearest_ip" 71 ]; 72 73 meta = { 74 description = "Aviation Weather parsing engine"; 75 homepage = "https://github.com/avwx-rest/avwx-engine"; 76 changelog = "https://github.com/avwx-rest/avwx-engine/blob/${src.tag}/changelog.md"; 77 license = lib.licenses.mit; 78 maintainers = with lib.maintainers; [ fab ]; 79 }; 80}