1{
2 lib,
3 aiohttp,
4 buildPythonPackage,
5 fetchFromGitHub,
6 poetry-core,
7 poetry-dynamic-versioning,
8 iso4217,
9 pythonOlder,
10 pytz,
11}:
12
13buildPythonPackage rec {
14 pname = "pyefergy";
15 version = "22.5.0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "tkdrob";
22 repo = "pyefergy";
23 tag = "v${version}";
24 hash = "sha256-4M3r/+C42X95/7BGZAJbkXKKFEkGzLlvX0Ynv+eL8qc=";
25 };
26
27 build-system = [
28 poetry-core
29 poetry-dynamic-versioning
30 ];
31
32 pythonRemoveDeps = [
33 "codecov"
34 "types-pytz"
35 ];
36
37 dependencies = [
38 aiohttp
39 iso4217
40 pytz
41 ];
42
43 # Tests require network access
44 doCheck = false;
45
46 pythonImportsCheck = [ "pyefergy" ];
47
48 meta = with lib; {
49 changelog = "https://github.com/tkdrob/pyefergy/releases/tag/v${version}";
50 description = "Python API library for Efergy energy meters";
51 homepage = "https://github.com/tkdrob/pyefergy";
52 license = with licenses; [ mit ];
53 maintainers = with maintainers; [ fab ];
54 };
55}