mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-27 23:02:16 -05:00
gnu: snakemake-7: Fix version reporting.
* gnu/packages/python-xyz.scm (snakemake-7)[arguments]: Add phase 'patch-version and use G-exp. [build-system]: Use pyproject-build-system.
This commit is contained in:
parent
896b40d2ca
commit
f872482043
1 changed files with 34 additions and 25 deletions
|
@ -11519,32 +11519,41 @@ (define-public snakemake-7
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1qrqbmx4cbis0wxr6dl2rdjv9v627sbirsz6v5c31vlbqwkvs04q"))))
|
||||
(build-system python-build-system)
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; For cluster execution Snakemake will call Python. Since there is
|
||||
;; no suitable GUIX_PYTHONPATH set, cluster execution will fail. We
|
||||
;; fix this by calling the snakemake wrapper instead.
|
||||
(add-after 'unpack 'call-wrapper-not-wrapped-snakemake
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "snakemake/executors/__init__.py"
|
||||
(("self\\.get_python_executable\\(\\),")
|
||||
"")
|
||||
(("\"-m snakemake\"")
|
||||
(string-append "\"" (assoc-ref outputs "out")
|
||||
"/bin/snakemake" "\"")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "HOME" "/tmp")
|
||||
;; This test attempts to change S3 buckets on AWS and fails
|
||||
;; because there are no AWS credentials.
|
||||
(delete-file "tests/test_tibanna.py")
|
||||
;; It's a similar story with this test, which requires access
|
||||
;; to the Google Storage service.
|
||||
(delete-file "tests/test_google_lifesciences.py")
|
||||
(invoke "pytest")))))))
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; For cluster execution Snakemake will call Python. Since there is
|
||||
;; no suitable GUIX_PYTHONPATH set, cluster execution will fail. We
|
||||
;; fix this by calling the snakemake wrapper instead.
|
||||
(add-after 'unpack 'call-wrapper-not-wrapped-snakemake
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "snakemake/executors/__init__.py"
|
||||
(("self\\.get_python_executable\\(\\),")
|
||||
"")
|
||||
(("\"-m snakemake\"")
|
||||
(string-append "\"" #$output
|
||||
"/bin/snakemake" "\"")))))
|
||||
(add-after 'unpack 'patch-version
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("version=versioneer.get_version\\(\\)")
|
||||
(format #f "version=~s" #$version)))
|
||||
(substitute* '("snakemake/_version.py"
|
||||
"versioneer.py")
|
||||
(("0\\+unknown") #$version))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "HOME" "/tmp")
|
||||
;; This test attempts to change S3 buckets on AWS and fails
|
||||
;; because there are no AWS credentials.
|
||||
(delete-file "tests/test_tibanna.py")
|
||||
;; It's a similar story with this test, which requires access
|
||||
;; to the Google Storage service.
|
||||
(delete-file "tests/test_google_lifesciences.py")
|
||||
(invoke "pytest")))))))
|
||||
(propagated-inputs
|
||||
(list python-appdirs
|
||||
python-configargparse
|
||||
|
|
Loading…
Reference in a new issue