1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 strenum,
7 token-bucket,
8}:
9
10buildPythonPackage rec {
11 pname = "limiter";
12 version = "0.3.1";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.10";
16
17 src = fetchFromGitHub {
18 owner = "alexdelorenzo";
19 repo = "limiter";
20 rev = "v${version}";
21 hash = "sha256-2Et4ozVf9t+tp2XtLbDk/LgLIU+jQAEAlU8hA5lpxdk=";
22 };
23
24 propagatedBuildInputs = [
25 strenum
26 token-bucket
27 ];
28
29 # Module has no tests
30 doCheck = false;
31
32 pythonImportsCheck = [ "limiter" ];
33
34 meta = with lib; {
35 description = "Python rate-limiting, thread-safe and asynchronous decorators and context managers";
36 homepage = "https://github.com/alexdelorenzo/limiter";
37 license = with licenses; [ agpl3Only ];
38 maintainers = with maintainers; [ fab ];
39 };
40}