Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
2.0 kB · 88 lines
Nix
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889{ lib, buildPythonPackage, deprecated, fetchFromGitHub, etcd3, hiro, importlib-resources, packaging, pymemcache, pymongo, pytest-asyncio, pytest-lazy-fixture, pytestCheckHook, pythonOlder, redis, setuptools, typing-extensions}:
buildPythonPackage rec { pname = "limits"; version = "3.7.0"; format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub { owner = "alisaifee"; repo = pname; rev = "refs/tags/${version}"; # Upstream uses versioneer, which relies on git attributes substitution. # This leads to non-reproducible archives on github. Remove the substituted # file here, and recreate it later based on our version info. postFetch = '' rm "$out/limits/_version.py" ''; hash = "sha256-0h3ofungHkjycUvNJ3jf+VB/GSrshgUDECN2YoPGzzg="; };
propagatedBuildInputs = [ deprecated importlib-resources packaging setuptools typing-extensions ];
nativeCheckInputs = [ etcd3 hiro pymemcache pymongo pytest-asyncio pytest-lazy-fixture pytestCheckHook redis ];
postPatch = '' substituteInPlace pytest.ini \ --replace "--cov=limits" "" \ --replace "-K" ""
substituteInPlace setup.py \ --replace "versioneer.get_version()" "'${version}'"
# Recreate _version.py, deleted at fetch time due to non-reproducibility. echo 'def get_versions(): return {"version": "${version}"}' > limits/_version.py '';
pythonImportsCheck = [ "limits" ];
pytestFlagsArray = [ # All other tests require a running Docker instance "tests/test_limits.py" "tests/test_ratelimit_parser.py" "tests/test_limit_granularities.py" ];
meta = with lib; { description = "Rate limiting using various strategies and storage backends such as redis & memcached"; homepage = "https://github.com/alisaifee/limits"; license = licenses.mit; maintainers = with maintainers; [ ]; };}