1{ lib
2, brotlipy
3, buildPythonPackage
4, decorator
5, fetchpatch
6, fetchPypi
7, flask
8, flask-limiter
9, itsdangerous
10, markupsafe
11, raven
12, six
13, pytestCheckHook
14, werkzeug
15}:
16
17buildPythonPackage rec {
18 pname = "httpbin";
19 version = "0.7.0";
20 format = "setuptools";
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-y7N3kMkVdfTxV1f0KtQdn3KesifV7b6J5OwXVIbbjfo=";
25 };
26
27 patches = [
28 (fetchpatch {
29 # Replaces BaseResponse class with Response class for Werkezug 2.1.0 compatibility
30 # https://github.com/postmanlabs/httpbin/pull/674
31 url = "https://github.com/postmanlabs/httpbin/commit/5cc81ce87a3c447a127e4a1a707faf9f3b1c9b6b.patch";
32 hash = "sha256-SbEWjiqayMFYrbgAPZtSsXqSyCDUz3z127XgcKOcrkE=";
33 })
34 ];
35
36 propagatedBuildInputs = [
37 brotlipy
38 decorator
39 flask
40 flask-limiter
41 itsdangerous
42 markupsafe
43 raven
44 six
45 werkzeug
46 ] ++ raven.optional-dependencies.flask;
47
48 checkInputs = [
49 pytestCheckHook
50 ];
51
52 pytestFlagsArray = [
53 "test_httpbin.py"
54 ];
55
56 disabledTests = [
57 # Tests seems to be outdated
58 "test_anything"
59 "test_get"
60 "test_redirect_n_equals_to_1"
61 "test_redirect_n_higher_than_1"
62 "test_redirect_to_post"
63 "test_relative_redirect_n_equals_to_1"
64 "test_relative_redirect_n_higher_than_1"
65 ];
66
67 pythonImportsCheck = [
68 "httpbin"
69 ];
70
71 meta = with lib; {
72 description = "HTTP Request and Response Service";
73 homepage = "https://github.com/kennethreitz/httpbin";
74 license = licenses.mit;
75 maintainers = with maintainers; [ ];
76 };
77}