Subject: [bug#76835] [PATCH v3 18/40] gnu: python-pyvcf: Rename package to python-pyvcf3.

From: Nicolas Graves <[email-masked]>
Date: Mon, 10 Mar 2025 03:16:23 +0100

* gnu/packages/bioinformatics.scm (python-pyvcf): Define in terms of
'deprecated-package'.
(python-pyvcf3): New variable, formerly known as "python-pyvcf".
---
 gnu/packages/bioinformatics.scm | 65 +++++++++++----------------------
 1 file changed, 21 insertions(+), 44 deletions(-)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 6f4c5053b6..c593c37d35 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -23715,50 +23715,27 @@ (define-public tombo
     ;; Some parts may be BSD-3-licensed.
     (license license:mpl2.0)))
 
-(define-public python-pyvcf
-  (let ((commit "476169cd457ba0caa6b998b301a4d91e975251d9")
-        (revision "0"))
-    (package
-      (name "python-pyvcf")
-      (version (git-version "0.6.8" revision commit))
-      ;; Use git, because the PyPI tarballs lack test data.
-      (source
-       (origin
-         (method git-fetch)
-         (uri (git-reference
-               (url "https://github.com/jamescasbon/PyVCF.git")
-               ;; Latest release is not tagged.
-               (commit commit)))
-         (file-name (git-file-name name version))
-         (sha256
-          (base32
-           "0qf9lwj7r2hjjp4bd4vc7nayrhblfm4qcqs4dbd43a6p4bj2jv5p"))))
-      (build-system python-build-system)
-      (arguments
-       `(#:phases
-         (modify-phases %standard-phases
-           (add-after 'unpack 'patch-sample-script
-             (lambda _
-               ;; Add Python 3 compatibility to this sample script.
-               (substitute* "scripts/vcf_sample_filter.py"
-                 (("print (.*)\n" _ arg)
-                  (string-append "print(" arg ")\n")))))
-           (add-after 'install 'remove-installed-tests
-             ;; Do not install test files.
-             (lambda* (#:key inputs outputs #:allow-other-keys)
-               (delete-file-recursively (string-append
-                                         (site-packages inputs outputs)
-                                         "/vcf/test")))))))
-      (native-inputs
-       ;; Older setuptools is needed for use_2to3.
-       (list python-cython python-setuptools-57))
-      (propagated-inputs
-       (list python-pysam python-rpy2))
-      (home-page "https://github.com/jamescasbon/PyVCF")
-      (synopsis "Variant Call Format parser for Python")
-      (description "This package provides a @acronym{VCF,Variant Call Format}
+;; This is a fork of the original unmaintained python-pyvcf.
+(define-public python-pyvcf3
+  (package
+    (name "python-pyvcf3")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "PyVCF3" version))
+       (sha256
+        (base32 "0783pb2p5qx3vgwksc9b9vxbpdq7ax6znff9wa3h80cpicfdf5jb"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-setuptools))
+    (native-inputs (list python-setuptools python-wheel))
+    (home-page "https://github.com/dridk/PyVCF3")
+    (synopsis "Variant Call Format parser for Python")
+    (description "This package provides a @acronym{VCF,Variant Call Format}
 parser for Python.")
-      (license license:expat))))
+    (license license:expat)))
+
+(define-deprecated/public-alias python-pyvcf python-pyvcf3)
 
 (define-public nanosv
   (package
@@ -23772,7 +23749,7 @@ (define-public nanosv
               "1wl2daj0bwrl8fx5xi8j8hfs3mp3vg3qycy66538n032v1qkc6xg"))))
    (build-system python-build-system)
    (inputs
-    (list python-configparser python-pysam python-pyvcf))
+    (list python-configparser python-pysam python-pyvcf3))
    (home-page "https://github.com/mroosmalen/nanosv")
    (synopsis "Structural variation detection tool for Oxford Nanopore data")
    (description "NanoSV is a software package that can be used to identify
-- 
2.48.1