1{ lib
2, async-timeout
3, bitstring
4, buildPythonPackage
5, fetchFromGitHub
6, poetry-core
7, pyserial-asyncio
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "pysml";
13 version = "0.1.1";
14 format = "pyproject";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "mtdcr";
20 repo = pname;
21 rev = "refs/tags/${version}";
22 hash = "sha256-BtOx/kqPuvaaIyh/2/X5pW5BRvpsnMUMr1u6iZzbkt4=";
23 };
24
25 nativeBuildInputs = [
26 poetry-core
27 ];
28
29 propagatedBuildInputs = [
30 async-timeout
31 bitstring
32 pyserial-asyncio
33 ];
34
35 # Project has no tests
36 doCheck = false;
37
38 pythonImportsCheck = [
39 "sml"
40 ];
41
42 meta = with lib; {
43 description = "Python library for EDL21 smart meters using Smart Message Language (SML)";
44 homepage = "https://github.com/mtdcr/pysml";
45 license = with licenses; [ mit ];
46 maintainers = with maintainers; [ fab ];
47 };
48}