1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pint, 6 poetry-core, 7 psychrolib, 8 pytest-asyncio, 9 pytestCheckHook, 10 pythonOlder, 11}: 12 13buildPythonPackage rec { 14 pname = "pyweatherflowudp"; 15 version = "1.4.5"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.8"; 19 20 src = fetchFromGitHub { 21 owner = "briis"; 22 repo = "pyweatherflowudp"; 23 tag = "v${version}"; 24 hash = "sha256-aTwGFYTtd07BsWFaFc7ns+8oh2AxTUfRFSu81Zv5OoA="; 25 }; 26 27 nativeBuildInputs = [ poetry-core ]; 28 29 propagatedBuildInputs = [ 30 pint 31 psychrolib 32 ]; 33 34 nativeCheckInputs = [ 35 pytest-asyncio 36 pytestCheckHook 37 ]; 38 39 pythonImportsCheck = [ "pyweatherflowudp" ]; 40 41 disabledTests = [ 42 # Tests require network access 43 "test_flow_control" 44 "test_listen_and_stop" 45 "test_repetitive_listen_and_stop" 46 "test_process_message" 47 "test_listener_connection_errors" 48 "test_invalid_messages" 49 ]; 50 51 meta = with lib; { 52 description = "Library to receive UDP Packets from Weatherflow Weatherstations"; 53 homepage = "https://github.com/briis/pyweatherflowudp"; 54 changelog = "https://github.com/briis/pyweatherflowudp/blob/${version}/CHANGELOG.md"; 55 license = licenses.mit; 56 maintainers = with maintainers; [ fab ]; 57 }; 58}