1{ lib
2, aiohttp
3, aresponses
4, buildPythonPackage
5, fetchFromGitHub
6, pytestCheckHook
7, pytest-asyncio
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "pyuptimerobot";
13 version = "21.11.0";
14 format = "setuptools";
15
16 disabled = pythonOlder "3.8";
17
18 src = fetchFromGitHub {
19 owner = "ludeeus";
20 repo = pname;
21 rev = version;
22 sha256 = "1nmmwp9m38b75lz51ypcj0qxnxm9wq4id5cggl0pn2rx6gwnbw9n";
23 };
24
25 propagatedBuildInputs = [
26 aiohttp
27 ];
28
29 checkInputs = [
30 aresponses
31 pytestCheckHook
32 pytest-asyncio
33 ];
34
35 postPatch = ''
36 # Upstream doesn't set version in the repo
37 substituteInPlace setup.py \
38 --replace 'version="main",' 'version="${version}",'
39 '';
40
41 pythonImportsCheck = [
42 "pyuptimerobot"
43 ];
44
45 meta = with lib; {
46 description = "Python API wrapper for Uptime Robot";
47 homepage = "https://github.com/ludeeus/pyuptimerobot";
48 license = licenses.mit;
49 maintainers = with maintainers; [ fab ];
50 };
51}