blob: c593c855c70f21d7f0febc68d88c56f876cdd9df (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
{ lib
, buildPythonPackage
, fetchFromGitHub
, flask
, flask-restful
, hiro
, limits
, mock
, pymemcache
, pytestCheckHook
, redis
}:
buildPythonPackage rec {
pname = "Flask-Limiter";
version = "1.4";
src = fetchFromGitHub {
owner = "alisaifee";
repo = "flask-limiter";
rev = version;
sha256 = "1k1b4b3s1acphqnar0y5g747bh1y7w35gcl5g819idq2a5vqnass";
};
propagatedBuildInputs = [ flask limits ];
checkInputs = [
pytestCheckHook
hiro
mock
redis
flask-restful
pymemcache
];
postPatch = ''
sed -i "/--cov/d" pytest.ini
'';
# Some tests requires a local Redis instance
disabledTests = [
"test_fallback_to_memory"
"test_reset_unsupported"
"test_constructor_arguments_over_config"
"test_fallback_to_memory_config"
"test_fallback_to_memory_backoff_check"
"test_fallback_to_memory_with_global_override"
"test_custom_key_prefix"
"test_redis_request_slower_than_fixed_window"
"test_redis_request_slower_than_moving_window"
"test_custom_key_prefix_with_headers"
];
pythonImportsCheck = [ "flask_limiter" ];
meta = with lib; {
description = "Rate limiting for flask applications";
homepage = "https://flask-limiter.readthedocs.org/";
license = licenses.mit;
};
}
|