1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, aiohttp
5, jinja2
6, markupsafe
7, pytest-aiohttp
8, pytestCheckHook
9, pythonOlder
10, pyyaml
11}:
12
13buildPythonPackage rec {
14 pname = "aiohttp-swagger";
15 version = "1.0.15";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.6";
19
20 src = fetchFromGitHub {
21 owner = "cr0hn";
22 repo = pname;
23 rev = version;
24 hash = "sha256-M43sNpbXWXFRTd549cZhvhO35nBB6OH+ki36BzSk87Q=";
25 };
26
27 propagatedBuildInputs = [
28 aiohttp
29 jinja2
30 markupsafe
31 pyyaml
32 ];
33
34 checkInputs = [
35 pytestCheckHook
36 pytest-aiohttp
37 ];
38
39 postPatch = ''
40 substituteInPlace requirements.txt \
41 --replace "markupsafe~=1.1.1" "markupsafe>=1.1.1" \
42 --replace "jinja2~=2.11.2" "jinja2>=2.11.2"
43 '';
44
45 preCheck = ''
46 # The custom client is obsolete
47 rm tests/conftest.py
48 '';
49
50 pythonImportsCheck = [
51 "aiohttp_swagger"
52 ];
53
54 meta = with lib; {
55 description = "Swagger API Documentation builder for aiohttp";
56 homepage = "https://github.com/cr0hn/aiohttp-swagger";
57 license = licenses.mit;
58 maintainers = with maintainers; [ elohmeier ];
59 };
60}