diff --git a/pkgs/by-name/sn/snakemake/package.nix b/pkgs/by-name/sn/snakemake/package.nix index b3d49ae7bc86..7444d183d82d 100644 --- a/pkgs/by-name/sn/snakemake/package.nix +++ b/pkgs/by-name/sn/snakemake/package.nix @@ -10,14 +10,14 @@ python3Packages.buildPythonApplication rec { pname = "snakemake"; - version = "8.29.2"; + version = "9.1.10"; pyproject = true; src = fetchFromGitHub { owner = "snakemake"; repo = "snakemake"; tag = "v${version}"; - hash = "sha256-69NsbfHF29l92gwO8If9vp8Cdjac3BnO+hbY3b2bZ8E="; + hash = "sha256-saEfclp6cRcBBUv/ssszr9Q8PGPapkSsjDwTUP9XOhg="; }; postPatch = '' @@ -25,13 +25,13 @@ python3Packages.buildPythonApplication rec { substituteInPlace tests/common.py \ --replace-fail 'os.environ["PYTHONPATH"] = os.getcwd()' "pass" \ --replace-fail 'del os.environ["PYTHONPATH"]' "pass" - substituteInPlace snakemake/unit_tests/__init__.py \ + substituteInPlace src/snakemake/unit_tests/__init__.py \ --replace-fail '"unit_tests/templates"' '"'"$PWD"'/snakemake/unit_tests/templates"' - substituteInPlace snakemake/assets/__init__.py \ + substituteInPlace src/snakemake/assets/__init__.py \ --replace-fail "raise err" "return bytes('err','ascii')" ''; - build-system = with python3Packages; [ setuptools ]; + build-system = with python3Packages; [ setuptools-scm ]; dependencies = with python3Packages; [ appdirs @@ -55,6 +55,7 @@ python3Packages.buildPythonApplication rec { smart-open snakemake-interface-executor-plugins snakemake-interface-common + snakemake-interface-logger-plugins snakemake-interface-storage-plugins snakemake-interface-report-plugins stopit @@ -126,6 +127,20 @@ python3Packages.buildPythonApplication rec { "test_deploy_sources" "test_output_file_cache_storage" "test_storage" + + # Tries to access internet + "test_report_after_run" + + # Needs stress-ng + "test_benchmark" + "test_benchmark_jsonl" + + # Needs unshare + "test_nodelocal" + + # Requires snakemake-storage-plugin-http + "test_keep_local" + "test_retrieve" ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ # Unclear failure: @@ -144,6 +159,14 @@ python3Packages.buildPythonApplication rec { "test_queue_input_forceall" "test_resources_submitted_to_cluster" "test_scopes_submitted_to_cluster" + + # Issue with /dev/stderr in sandbox + "test_protected_symlink_output" + + # Unclear issue: + # pulp.apis.core.PulpSolverError: Pulp: cannot execute cbc cwd: + # but pulp solver is not default + "test_access_patterns" ]; pythonImportsCheck = [ "snakemake" ]; diff --git a/pkgs/development/python-modules/snakemake-interface-logger-plugins/default.nix b/pkgs/development/python-modules/snakemake-interface-logger-plugins/default.nix new file mode 100644 index 000000000000..ef56cbc43bec --- /dev/null +++ b/pkgs/development/python-modules/snakemake-interface-logger-plugins/default.nix @@ -0,0 +1,35 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + hatchling, + snakemake-interface-common, +}: + +buildPythonPackage rec { + pname = "snakemake-interface-logger-plugins"; + version = "1.2.3"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "snakemake"; + repo = pname; + tag = "v${version}"; + hash = "sha256-VHbta+R2a/K2L03IRu/Ya7dJzshIAvyK9cNIRbx8QqM="; + }; + + nativeBuildInputs = [ hatchling ]; + + propagatedBuildInputs = [ + snakemake-interface-common + ]; + + pythonImportsCheck = [ "snakemake_interface_logger_plugins" ]; + + meta = with lib; { + description = "A stable interface for interactions between Snakemake and its logger plugins"; + homepage = "https://github.com/snakemake/snakemake-interface-logger-plugins"; + license = licenses.mit; + maintainers = with maintainers; [ veprbl ]; + }; +} diff --git a/pkgs/development/python-modules/snakemake-interface-storage-plugins/default.nix b/pkgs/development/python-modules/snakemake-interface-storage-plugins/default.nix index a50fec725053..f40ea176ee08 100644 --- a/pkgs/development/python-modules/snakemake-interface-storage-plugins/default.nix +++ b/pkgs/development/python-modules/snakemake-interface-storage-plugins/default.nix @@ -3,6 +3,7 @@ buildPythonPackage, fetchFromGitHub, poetry-core, + humanfriendly, reretry, snakemake-interface-common, throttler, @@ -11,19 +12,20 @@ buildPythonPackage rec { pname = "snakemake-interface-storage-plugins"; - version = "3.3.0"; + version = "4.2.1"; format = "pyproject"; src = fetchFromGitHub { owner = "snakemake"; repo = pname; tag = "v${version}"; - hash = "sha256-qjQZc7DIXIPmqXq+Fjslgrq2LbjbdRS/twGsp/jrxRY="; + hash = "sha256-mGpKmKWWL4ue9Dddjs4fXCaITrC97yHC58Jh2vclXAY="; }; nativeBuildInputs = [ poetry-core ]; propagatedBuildInputs = [ + humanfriendly reretry snakemake-interface-common throttler diff --git a/pkgs/development/python-modules/snakemake-storage-plugin-fs/default.nix b/pkgs/development/python-modules/snakemake-storage-plugin-fs/default.nix index e3da29ae9b04..632f9da90058 100644 --- a/pkgs/development/python-modules/snakemake-storage-plugin-fs/default.nix +++ b/pkgs/development/python-modules/snakemake-storage-plugin-fs/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "snakemake-storage-plugin-fs"; - version = "1.0.6"; + version = "1.1.1"; pyproject = true; src = fetchFromGitHub { owner = "snakemake"; repo = pname; tag = "v${version}"; - hash = "sha256-9A2W+V0d9K1Ei4WXqIZfIcOYsWgpGVP7P/ANy8jOGu0="; + hash = "sha256-Y+Fofz4D/CWgdG3lOneadRu/VfJ23D4Dz751j9rUKNo="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix b/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix index 7b78e60fec07..d5b77dace8f9 100644 --- a/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix +++ b/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "snakemake-storage-plugin-s3"; - version = "0.3.1"; + version = "0.3.3"; pyproject = true; src = fetchFromGitHub { owner = "snakemake"; repo = "snakemake-storage-plugin-s3"; tag = "v${version}"; - hash = "sha256-WbGlXu6/7e9U2GfVd4IF86bRfulNxjP1Tw5pVHpEj/g="; + hash = "sha256-jIz8Stx2Abd+xGx6kEwlgq3KGsFO13Lk2N8eLB8marA="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/snakemake-storage-plugin-xrootd/default.nix b/pkgs/development/python-modules/snakemake-storage-plugin-xrootd/default.nix index 9c88ce9f45a4..1620865f1869 100644 --- a/pkgs/development/python-modules/snakemake-storage-plugin-xrootd/default.nix +++ b/pkgs/development/python-modules/snakemake-storage-plugin-xrootd/default.nix @@ -2,7 +2,8 @@ lib, buildPythonPackage, fetchFromGitHub, - poetry-core, + hatch-vcs, + hatchling, snakemake, snakemake-interface-storage-plugins, snakemake-interface-common, @@ -11,20 +12,23 @@ buildPythonPackage rec { pname = "snakemake-storage-plugin-xrootd"; - version = "0.1.4"; + version = "0.4.1"; pyproject = true; src = fetchFromGitHub { owner = "snakemake"; repo = pname; tag = "v${version}"; - hash = "sha256-1plBss9jRzIIGQE7rXDEnAomFxNzSUKsw0VyhYA2mIc="; + hash = "sha256-vfMAgOTmT3uzUZHXeKsd8Ze3+b3nFsVHDhkPG+xvz+k="; }; # xrootd<6.0.0,>=5.6.4 not satisfied by version 5.7rc20240303 pythonRelaxDeps = [ "xrootd" ]; - build-system = [ poetry-core ]; + build-system = [ + hatch-vcs + hatchling + ]; dependencies = [ snakemake-interface-storage-plugins diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index dfb5f4b148d4..488efa43c9bf 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15968,6 +15968,10 @@ self: super: with self; { callPackage ../development/python-modules/snakemake-interface-executor-plugins { }; + snakemake-interface-logger-plugins = + callPackage ../development/python-modules/snakemake-interface-logger-plugins + { }; + snakemake-interface-report-plugins = callPackage ../development/python-modules/snakemake-interface-report-plugins { };