anki-bin: 24.06.3 -> 24.11 (#360722)
[NixPkgs.git] / pkgs / development / python-modules / pyenphase / default.nix
blob7278ff2efc81620f4e3d46bbbae14553125e5857
2   lib,
3   awesomeversion,
4   buildPythonPackage,
5   envoy-utils,
6   fetchFromGitHub,
7   httpx,
8   lxml,
9   orjson,
10   poetry-core,
11   pyjwt,
12   pytest-asyncio,
13   pytest-cov-stub,
14   pytestCheckHook,
15   pythonOlder,
16   respx,
17   syrupy,
18   tenacity,
21 buildPythonPackage rec {
22   pname = "pyenphase";
23   version = "1.23.0";
24   pyproject = true;
26   disabled = pythonOlder "3.11";
28   src = fetchFromGitHub {
29     owner = "pyenphase";
30     repo = "pyenphase";
31     rev = "refs/tags/v${version}";
32     hash = "sha256-nGOxGZxPTlU5/nI2m+MXzzcVA+twxfNL1Jf51xT0XLc=";
33   };
35   pythonRelaxDeps = [ "tenacity" ];
37   build-system = [ poetry-core ];
39   dependencies = [
40     awesomeversion
41     envoy-utils
42     httpx
43     lxml
44     orjson
45     pyjwt
46     tenacity
47   ];
49   nativeCheckInputs = [
50     pytest-asyncio
51     pytest-cov-stub
52     pytestCheckHook
53     respx
54     syrupy
55   ];
57   disabledTestPaths = [
58     # Tests need network access
59     "tests/test_retries.py"
60   ];
62   pythonImportsCheck = [ "pyenphase" ];
64   meta = with lib; {
65     description = "Library to control enphase envoy";
66     homepage = "https://github.com/pyenphase/pyenphase";
67     changelog = "https://github.com/pyenphase/pyenphase/blob/v${version}/CHANGELOG.md";
68     license = licenses.mit;
69     maintainers = with maintainers; [ fab ];
70   };