1 { lib
2, aiohttp
3, async-timeout
4, buildPythonPackage
5, crcmod
6, defusedxml
7, fetchFromGitHub
8, freezegun
9, jsonpickle
10, munch
11, pyserial
12, pytest-aiohttp
13, pytest-asyncio
14, pytestCheckHook
15, python-dateutil
16, pythonOlder
17, pytz
18, semver
19}:
20
21buildPythonPackage rec {
22 pname = "plugwise";
23 version = "0.35.1";
24 format = "setuptools";
25
26 disabled = pythonOlder "3.7";
27
28 src = fetchFromGitHub {
29 owner = pname;
30 repo = "python-plugwise";
31 rev = "refs/tags/v${version}";
32 hash = "sha256-eHJQXLiuWmJo/Eo4B8gEo44rwpPA7ASjxKSmdu6Tv9M=";
33 };
34
35 propagatedBuildInputs = [
36 aiohttp
37 async-timeout
38 crcmod
39 defusedxml
40 munch
41 pyserial
42 python-dateutil
43 pytz
44 semver
45 ];
46
47 nativeCheckInputs = [
48 freezegun
49 jsonpickle
50 pytest-aiohttp
51 pytest-asyncio
52 pytestCheckHook
53 ];
54
55 pythonImportsCheck = [
56 "plugwise"
57 ];
58
59 __darwinAllowLocalNetworking = true;
60
61 meta = with lib; {
62 description = "Python module for Plugwise Smiles, Stretch and USB stick";
63 homepage = "https://github.com/plugwise/python-plugwise";
64 changelog = "https://github.com/plugwise/python-plugwise/releases/tag/v${version}";
65 license = with licenses; [ mit ];
66 maintainers = with maintainers; [ fab ];
67 };
68}