[bug#76835,v3,32/40] gnu: Add python-snakemake-interface-storage-plugins.

Message ID 20250310021652.17530-32-ngraves@ngraves.fr
State New
Headers
Series [bug#76835,v3,01/40] gnu: gunicorn: Migrate 'check phase to pyproject-build-system. |

Commit Message

Nicolas Graves March 10, 2025, 2:16 a.m. UTC
  * gnu/packages/python-science.scm
(python-snakemake-interface-storage-plugins): New variable.
---
 gnu/packages/python-science.scm | 34 +++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
  

Patch

diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 3ac753f55e..ac16401254 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -1060,6 +1060,40 @@  (define-public python-snakemake-interface-software-deployment-plugins
 its software deployment plugins.")
     (license license:expat)))
 
+(define-public python-snakemake-interface-storage-plugins
+  (package
+    (name "python-snakemake-interface-storage-plugins")
+    (version "3.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "\
+https://github.com/snakemake/snakemake-interface-storage-plugins")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "05n5xgwagb01nyzi8xfvp0nvdfl24lxidgksm7k86p68n1rijd5a"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:tests? #f  ;XXX: Circular dependency on snakemake
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'check
+                 (lambda* (#:key tests? #:allow-other-keys)
+                   (when tests?
+                     (invoke "python3" "tests/tests.py")))))))
+    (propagated-inputs (list python-reretry python-snakemake-interface-common
+                             python-throttler python-wrapt))
+    (native-inputs (list python-poetry-core python-pytest))
+    (home-page
+     "https://github.com/snakemake/snakemake-interface-storage-plugins")
+    (synopsis "Interface for Snakemake storage plugins")
+    (description
+     "This package provides a stable interface for interactions between
+Snakemake and its storage plugins.")
+    (license license:expat)))
+
 (define-public python-tdda
   (package
     (name "python-tdda")