1{ lib
2, aiohttp
3, buildPythonPackage
4, fetchFromGitHub
5, pydantic
6, pytest-aiohttp
7, pytestCheckHook
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "zwave-js-server-python";
13 version = "0.43.0";
14 format = "setuptools";
15
16 disabled = pythonOlder "3.9";
17
18 src = fetchFromGitHub {
19 owner = "home-assistant-libs";
20 repo = pname;
21 rev = "refs/tags/${version}";
22 hash = "sha256-qzAM3vcVySJB6OfOHKXYYXDR+xOSbGpyH7b9TaYkOLM=";
23 };
24
25 propagatedBuildInputs = [
26 aiohttp
27 pydantic
28 ];
29
30 doCheck = lib.versionAtLeast pytest-aiohttp.version "1.0.0";
31
32 checkInputs = [
33 pytest-aiohttp
34 pytestCheckHook
35 ];
36
37 pythonImportsCheck = [
38 "zwave_js_server"
39 ];
40
41 meta = with lib; {
42 description = "Python wrapper for zwave-js-server";
43 homepage = "https://github.com/home-assistant-libs/zwave-js-server-python";
44 license = with licenses; [ asl20 ];
45 maintainers = with maintainers; [ fab ];
46 };
47}