1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, hypothesis
5, ifaddr
6, lxml
7, poetry-core
8, pytest-vcr
9, pytestCheckHook
10, pythonOlder
11, requests
12, urllib3
13}:
14
15buildPythonPackage rec {
16 pname = "pywemo";
17 version = "1.3.1";
18 format = "pyproject";
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchFromGitHub {
23 owner = pname;
24 repo = pname;
25 rev = "refs/tags/${version}";
26 hash = "sha256-RZeg6/xAGRumd4aM/mQQnIrIXB/rUrdeQQxk2c1mJNI=";
27 };
28
29 nativeBuildInputs = [
30 poetry-core
31 ];
32
33 propagatedBuildInputs = [
34 ifaddr
35 requests
36 urllib3
37 lxml
38 ];
39
40 __darwinAllowLocalNetworking = true;
41
42 nativeCheckInputs = [
43 hypothesis
44 pytest-vcr
45 pytestCheckHook
46 ];
47
48 pythonImportsCheck = [
49 "pywemo"
50 ];
51
52 meta = with lib; {
53 description = "Python module to discover and control WeMo devices";
54 homepage = "https://github.com/pywemo/pywemo";
55 changelog = "https://github.com/pywemo/pywemo/releases/tag/${version}";
56 license = with licenses; [ mit ];
57 maintainers = with maintainers; [ fab ];
58 };
59}