1{ lib
2, async-timeout
3, buildPythonPackage
4, fetchFromGitHub
5, pythonOlder
6, pytest-asyncio
7, pytestCheckHook
8}:
9
10buildPythonPackage rec {
11 pname = "screenlogicpy";
12 version = "0.9.4";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.6";
16
17 src = fetchFromGitHub {
18 owner = "dieselrabbit";
19 repo = pname;
20 rev = "refs/tags/v${version}";
21 hash = "sha256-OdAhA+vzIrUnE8Xdv52x7ij0LJKyxawaSY4QORP1TUg=";
22 };
23
24 propagatedBuildInputs = [
25 async-timeout
26 ];
27
28 nativeCheckInputs = [
29 pytest-asyncio
30 pytestCheckHook
31 ];
32
33 disabledTests = [
34 # Tests require network access
35 "test_gateway_discovery"
36 "test_async_discovery"
37 "test_gateway"
38 "test_async"
39 "test_asyncio_gateway_discovery"
40 ];
41
42 pythonImportsCheck = [
43 "screenlogicpy"
44 ];
45
46 meta = with lib; {
47 description = "Python interface for Pentair Screenlogic devices";
48 homepage = "https://github.com/dieselrabbit/screenlogicpy";
49 changelog = "https://github.com/dieselrabbit/screenlogicpy/releases/tag/v${version}";
50 license = with licenses; [ gpl3Only ];
51 maintainers = with maintainers; [ fab ];
52 };
53}