1{
2 aiohttp,
3 buildPythonPackage,
4 fetchFromGitHub,
5 lib,
6 pydantic,
7 pytest-asyncio,
8 pytestCheckHook,
9 pythonOlder,
10 setuptools,
11}:
12
13buildPythonPackage rec {
14 pname = "pytouchlinesl";
15 version = "0.5.0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.10";
19
20 src = fetchFromGitHub {
21 owner = "jnsgruk";
22 repo = "pytouchlinesl";
23 tag = version;
24 hash = "sha256-R5XgH8A9P5KcjQL/f+E189A+iRVUIbWsmyRrnfV43v4=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 aiohttp
31 pydantic
32 ];
33
34 nativeCheckInputs = [
35 pytestCheckHook
36 pytest-asyncio
37 ];
38
39 pythonImportsCheck = [ "pytouchlinesl" ];
40
41 meta = {
42 description = "Python API client for Roth's TouchlineSL API";
43 homepage = "https://github.com/jnsgruk/pytouchlinesl";
44 changelog = "https://github.com/jnsgruk/pytouchlinesl/releases/tag/${version}";
45 license = lib.licenses.asl20;
46 maintainers = with lib.maintainers; [ jnsgruk ];
47 };
48}