1{ lib
2, aiohttp
3, aioresponses
4, buildPythonPackage
5, fetchFromGitHub
6, poetry-core
7, pyjwt
8, pytest-aiohttp
9, pytest-freezegun
10, pytestCheckHook
11, pythonOlder
12, deepdiff
13}:
14
15buildPythonPackage rec {
16 pname = "pylitterbot";
17 version = "2022.11.0";
18 format = "pyproject";
19
20 disabled = pythonOlder "3.9";
21
22 src = fetchFromGitHub {
23 owner = "natekspencer";
24 repo = pname;
25 rev = "refs/tags/${version}";
26 hash = "sha256-GEKLkFzQV8xI3c8061fO1p66WKj3eDXmx7VaRYDu7kw=";
27 };
28
29 nativeBuildInputs = [
30 poetry-core
31 ];
32
33 propagatedBuildInputs = [
34 aiohttp
35 deepdiff
36 pyjwt
37 ];
38
39 checkInputs = [
40 aioresponses
41 pytest-aiohttp
42 pytest-freezegun
43 pytestCheckHook
44 ];
45
46 postPatch = ''
47 # https://github.com/natekspencer/pylitterbot/issues/73
48 substituteInPlace pyproject.toml \
49 --replace 'deepdiff = "^5.8.1"' 'deepdiff = ">=5.8.1"'
50 '';
51
52 pythonImportsCheck = [
53 "pylitterbot"
54 ];
55
56 meta = with lib; {
57 description = "Modulefor controlling a Litter-Robot";
58 homepage = "https://github.com/natekspencer/pylitterbot";
59 license = with licenses; [ mit ];
60 maintainers = with maintainers; [ fab ];
61 };
62}