Repository: spack/spack

Issue:
Installation issue: py-mikado
I have detected two problems.
1) The version of py-biopython and py-pysam specified in depends_on is the version that spack does not support.
2) py-mikado will result in a Fetch Error.

I can handle the error 1), but not 2).



Discussion:
For 2), I would change the download to https://pypi.io/packages/source/M/Mikado/Mikado-1.2.4.tar.gz and update the package to that version.
Thank you for your comment on how to deal with it.
I have confirmed that it can be built on x86_64 and aarch64 machines.

Should I issue this PR as one PR?
Since the change in 1) is the addition of a new version, I am wondering whether to create one PR or separate it.
Yes, one PR for the whole package is fine.
thank you for your answer.

Resolving patch:
diff --git a/var/spack/repos/builtin/packages/py-biopython/package.py b/var/spack/repos/builtin/packages/py-biopython/package.py
--- a/var/spack/repos/builtin/packages/py-biopython/package.py
+++ b/var/spack/repos/builtin/packages/py-biopython/package.py
@@ -15,9 +15,11 @@ class PyBiopython(PythonPackage):
     homepage = "http://biopython.org/wiki/Main_Page"
     url      = "http://biopython.org/DIST/biopython-1.65.tar.gz"
 
+    version('1.78', sha256='1ee0a0b6c2376680fea6642d5080baa419fd73df104a62d58a8baf7a8bbe4564')
     version('1.73', sha256='70c5cc27dc61c23d18bb33b6d38d70edc4b926033aea3b7434737c731c94a5e0')
     version('1.70', sha256='4a7c5298f03d1a45523f32bae1fffcff323ea9dce007fb1241af092f5ab2e45b')
     version('1.65', sha256='463cc81db84e9bfcdfb15629511c81ed556a6c0287e670dbfe80f03c65d2a88e')
 
     depends_on('py-numpy', type=('build', 'run'))
     depends_on('py-setuptools', type='build')
+    depends_on('python@3.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mikado/package.py b/var/spack/repos/builtin/packages/py-mikado/package.py
--- a/var/spack/repos/builtin/packages/py-mikado/package.py
+++ b/var/spack/repos/builtin/packages/py-mikado/package.py
@@ -12,34 +12,30 @@ class PyMikado(PythonPackage):
        the best models in each locus."""
 
     homepage = "https://github.com/EI-CoreBioinformatics/mikado"
-    git      = "git://github.com/EI-CoreBioinformatics/mikado"
+    pypi = "Mikado/Mikado-1.2.4.tar.gz"
 
-    version('20201016', commit='2501ba995d85e62e47165fe72592666a4c79f61a')
+    version('1.2.4', sha256='c0485dba3b7c285599809e058c83f33b5efa9522d20d9f980423410604207f61')
 
-    depends_on('python@3:', type=('build', 'run'))
-    depends_on('py-setuptools', type='build')
-    depends_on('py-cython', type='build')
-    depends_on('py-wheel@0.28.0:', type=('build', 'run'))
+    depends_on('py-wheel@0.28.0:', type='build')
     depends_on('py-pyyaml', type=('build', 'run'))
-    depends_on('py-jsonschema@3.0.1:', type=('build', 'run'))
-    depends_on('py-numpy@1.16.0:', type=('build', 'run'))
-    depends_on('py-networkx@2:', type=('build', 'run'))
-    depends_on('py-sqlalchemy@1.3:', type=('build', 'run'))
+    depends_on('py-jsonschema', type=('build', 'run'))
+    depends_on('py-cython@0.25:', type='build')
+    depends_on('py-numpy', type=('build', 'run'))
+    depends_on('py-networkx@1.10:', type=('build', 'run'))
+    depends_on('py-sqlalchemy@1:', type=('build', 'run'))
     depends_on('py-sqlalchemy-utils', type=('build', 'run'))
-    depends_on('py-biopython@1.78:', type=('build', 'run'))
+    depends_on('py-biopython@1.66:', type=('build', 'run'))
     depends_on('py-intervaltree', type=('build', 'run'))
-    depends_on('py-pytest', type=('build', 'run'))
+    depends_on('py-nose', type=('build', 'run'))
     depends_on('py-pyfaidx', type=('build', 'run'))
     depends_on('py-scikit-learn@0.17.0:', type=('build', 'run'))
-    depends_on('py-scipy@1.0.0:', type=('build', 'run'))
+    depends_on('py-scipy@0.15.0:', type=('build', 'run'))
+    depends_on('py-python-magic', type=('build', 'run'))
     depends_on('py-drmaa', type=('build', 'run'))
     depends_on('snakemake', type=('build', 'run'))
-    depends_on('py-docutils@0.13.2:', type=('build', 'run'))
+    depends_on('py-docutils@:0.13.0,0.13.2:', type=('build', 'run'))
     depends_on('py-tabulate', type=('build', 'run'))
-    depends_on('py-msgpack@1.0.0:', type=('build', 'run'))
-    depends_on('py-python-rapidjson@0.8:', type=('build', 'run'))
-    depends_on('py-pandas', type=('build', 'run'))
-    depends_on('py-jsonref', type=('build', 'run'))
-    depends_on('py-pysam@0.15.3:', type=('build', 'run'))
-    depends_on('py-toml', type=('build', 'run'))
-    depends_on('py-tomlkit', type=('build', 'run'))
+    depends_on('py-ujson', type=('build', 'run'))
+    depends_on('py-simplejson', type=('build', 'run'))
+    depends_on('python@3.4:', type=('build', 'run'))
+    depends_on('py-typing', when='^python@:3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pysam/package.py b/var/spack/repos/builtin/packages/py-pysam/package.py
--- a/var/spack/repos/builtin/packages/py-pysam/package.py
+++ b/var/spack/repos/builtin/packages/py-pysam/package.py
@@ -13,6 +13,7 @@ class PyPysam(PythonPackage):
     homepage = "https://github.com/pysam-developers/pysam"
     url      = "https://github.com/pysam-developers/pysam/archive/v0.14.1.tar.gz"
 
+    version('0.15.3', sha256='f553d48d0345404b6b103d0b82bad09c8d78420e1cc6bef33040553fc579e284')
     version('0.15.2', sha256='8cb3dd70f0d825086ac059ec2445ebd2ec5f14af73e7f1f4bd358966aaee5ed3')
     version('0.15.1', sha256='12221285af17e32b8f3fed033f90c6177a798afe41420eb5c3352d4e18ee12ed')
     version('0.14.1', sha256='d2bb40cd083c1357768e4683377f03471d160cfe8421136630bfa47f5adb3219')


Test patch: