diff --git a/gnu/local.mk b/gnu/local.mk index 947d1b0efc..e95c6aedc3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -743,6 +743,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-2.7-source-date-epoch.patch \ %D%/packages/patches/python-3-deterministic-build-info.patch \ %D%/packages/patches/python-3-search-paths.patch \ + %D%/packages/patches/python-dendropy-exclude-failing-tests.patch \ %D%/packages/patches/python-disable-ssl-test.patch \ %D%/packages/patches/python-fix-tests.patch \ %D%/packages/patches/python-ipython-inputhook-ctype.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 03e7584f54..23a4470d7a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1446,6 +1446,40 @@ accessing bigWig files.") (native-inputs `(("python-setuptools" ,python2-setuptools)))))) +(define-public python-dendropy + (package + (name "python-dendropy") + (version "4.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "DendroPy" version)) + (sha256 + (base32 + "1jfz7gp18wph311w1yygbvjanb3n5mdqal439bb6myw41dwb5m63")) + ;; There are two known test failures that will be fixed in the next + ;; release after 4.1.0. + ;; https://github.com/jeetsukumaran/DendroPy/issues/48 + (patches (search-patches + "python-dendropy-exclude-failing-tests.patch")))) + (build-system python-build-system) + (home-page "http://packages.python.org/DendroPy/") + (synopsis "Library for phylogenetics and phylogenetic computing") + (description + "DendroPy is a library for phylogenetics and phylogenetic computing: reading, +writing, simulation, processing and manipulation of phylogenetic +trees (phylogenies) and characters.") + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-dendropy)))))) + +(define-public python2-dendropy + (let ((base (package-with-python2 (strip-python2-variant python-dendropy)))) + (package + (inherit base) + (native-inputs `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + + (define-public deeptools (package (name "deeptools") diff --git a/gnu/packages/patches/python-dendropy-exclude-failing-tests.patch b/gnu/packages/patches/python-dendropy-exclude-failing-tests.patch new file mode 100644 index 0000000000..288a58b06f --- /dev/null +++ b/gnu/packages/patches/python-dendropy-exclude-failing-tests.patch @@ -0,0 +1,21 @@ +diff --git a/dendropy/test/test_phylogenetic_distance_matrix.py b/dendropy/test/test_phylogenetic_distance_matrix.py +index 10c05f5..a18ba52 100644 +--- a/dendropy/test/test_phylogenetic_distance_matrix.py ++++ b/dendropy/test/test_phylogenetic_distance_matrix.py +@@ -793,7 +793,7 @@ class PdmUpgmaTree(PdmTreeChecker, unittest.TestCase): + expected_tree=expected_tree) + + class NodeToNodeDistancesTest(unittest.TestCase): +- ++ @unittest.expectedFailure + def test_distances(self): + ## get distances from ape + # library(ape) +@@ -825,6 +825,7 @@ class NodeToNodeDistancesTest(unittest.TestCase): + e = reference_table[nd1.label, nd2.label] + self.assertAlmostEqual(d, e) + ++ @unittest.expectedFailure + def test_mrca(self): + test_runs = [ + "hiv1.newick",