diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix index f162e2329a74..f38281761319 100644 --- a/pkgs/applications/science/misc/snakemake/default.nix +++ b/pkgs/applications/science/misc/snakemake/default.nix @@ -5,14 +5,14 @@ python3.pkgs.buildPythonApplication rec { pname = "snakemake"; - version = "7.14.2"; + version = "7.25.3"; format = "setuptools"; src = fetchFromGitHub { owner = "snakemake"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-4XduybmDmlux3zvjbN1ouaJ1PkNO8h6vHuxgZ3YLBrw="; + hash = "sha256-KrstajTocVX5Tw7aiPoJ9vxJ0nKF+jqJcYJKrJvBt0Q="; }; propagatedBuildInputs = with python3.pkgs; [ @@ -21,22 +21,20 @@ python3.pkgs.buildPythonApplication rec { connection-pool datrie docutils - filelock gitpython + humanfriendly jinja2 jsonschema nbformat - networkx psutil pulp - pygraphviz pyyaml - ratelimiter requests - retry + reretry smart-open stopit tabulate + throttler toposort wrapt yte @@ -44,7 +42,7 @@ python3.pkgs.buildPythonApplication rec { # See # https://github.com/snakemake/snakemake/blob/main/.github/workflows/main.yml#L99 - # for the current basic test suite. Tibanna and Tes require extra + # for the current basic test suite. Slurm, Tibanna and Tes require extra # setup. nativeCheckInputs = with python3.pkgs; [ @@ -54,6 +52,7 @@ python3.pkgs.buildPythonApplication rec { ]; disabledTestPaths = [ + "tests/test_slurm.py" "tests/test_tes.py" "tests/test_tibanna.py" "tests/test_linting.py" diff --git a/pkgs/development/python-modules/reretry/default.nix b/pkgs/development/python-modules/reretry/default.nix new file mode 100644 index 000000000000..c4c6928af042 --- /dev/null +++ b/pkgs/development/python-modules/reretry/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "reretry"; + version = "0.11.8"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-8nkfzr5RLqLx0VOih0d4UjqAZIYLWRzZCvwhqL7UMuM="; + }; + + meta = with lib; { + description = "An easy to use retry decorator."; + homepage = "https://github.com/leshchenko1979/reretry"; + license = licenses.asl20; + maintainers = with maintainers; [ renatoGarcia ]; + }; +} diff --git a/pkgs/development/python-modules/throttler/default.nix b/pkgs/development/python-modules/throttler/default.nix new file mode 100644 index 000000000000..2742cdaa2935 --- /dev/null +++ b/pkgs/development/python-modules/throttler/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, aiohttp +, codecov +, flake8 +, pytest +, pytest-asyncio +, pytest-cov +}: + +buildPythonPackage rec { + pname = "throttler"; + version = "1.2.2"; + + src = fetchFromGitHub { + owner = "uburuntu"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-fE35zPjBUn4e1VRkkIUMtYJ/+LbnUxnxyfnU+UEPwr4="; + }; + + checkInputs = [ + aiohttp + codecov + flake8 + pytest + pytest-asyncio + pytest-cov + pytestCheckHook + ]; + + pytestFlagsArray = [ "tests/" ]; + + meta = with lib; { + description = "Zero-dependency Python package for easy throttling with asyncio support."; + homepage = "https://github.com/uburuntu/throttler"; + license = licenses.mit; + maintainers = with maintainers; [ renatoGarcia ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1df7f1a0dd0c..1d8480857819 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10366,6 +10366,8 @@ self: super: with self; { requirements-parser = callPackage ../development/python-modules/requirements-parser { }; + reretry = callPackage ../development/python-modules/reretry { }; + resampy = callPackage ../development/python-modules/resampy { }; resolvelib = callPackage ../development/python-modules/resolvelib { }; @@ -11881,6 +11883,8 @@ self: super: with self; { thriftpy2 = callPackage ../development/python-modules/thriftpy2 { }; + throttler = callPackage ../development/python-modules/throttler { }; + thumborPexif = callPackage ../development/python-modules/thumborpexif { }; tkinter = callPackage ../development/python-modules/tkinter {