summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2024-01-11 13:34:33 +0100
committerRicardo Wurmus <rekado@elephly.net>2024-01-16 12:44:37 +0100
commit65d021a95032bc2dff81c19158fe9eeeb46f89d4 (patch)
treed97de735907270666212257661a5edfbf37388ab
parenta8c1d812a030f07dbc22afa12f82539c3152a9e2 (diff)
gnu: python-scikit-bio: Update to 0.5.9.
* gnu/packages/bioinformatics.scm (python-scikit-bio): Update to 0.5.9. [source]: Add patch. [arguments]: Disable one test via #:test-flags; adjust 'compatibility phase; update 'check phase. [propagated-inputs]: Remove python-cachecontrol, python-lockfile, and python-scikit-learn; add python-requests. * gnu/packages/patches/python-scikit-bio-1887.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Change-Id: Ie57b0256cf695e5ea088545cd2102335303a93e7
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/bioinformatics.scm39
-rw-r--r--gnu/packages/patches/python-scikit-bio-1887.patch109
3 files changed, 122 insertions, 27 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index d2e2843372..ed4e82772e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1926,6 +1926,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-robotframework-atest.patch \
%D%/packages/patches/python-robotframework-source-date-epoch.patch \
%D%/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch \
+ %D%/packages/patches/python-scikit-bio-1887.patch \
%D%/packages/patches/python-scikit-optimize-1148.patch \
%D%/packages/patches/python-scikit-optimize-1150.patch \
%D%/packages/patches/python-typing-inspect-fix.patch \
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index c05ca19022..462dd54bc9 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -4732,58 +4732,43 @@ and record oriented data modeling and the Semantic Web.")
(define-public python-scikit-bio
(package
(name "python-scikit-bio")
- (version "0.5.7")
+ (version "0.5.9")
(source (origin
(method url-fetch)
(uri (pypi-uri "scikit-bio" version))
(sha256
(base32
- "1a8xbp3vrw8wfpm3pa2nb4rcar0643iqnb043ifwqbqyc86clhv3"))))
+ "0429060pkyq1pm19zb2n1la7czh7b633mp4a4h01j8zfigf49q3s"))
+ (patches (search-patches "python-scikit-bio-1887.patch"))))
(build-system pyproject-build-system)
(arguments
(list
+ ;; Accuracy problem
+ #:test-flags '(list "-k" "not test_fisher_alpha")
#:phases
'(modify-phases %standard-phases
- ;; See https://github.com/biocore/scikit-bio/pull/1826
(add-after 'unpack 'compatibility
(lambda _
- (substitute* "skbio/sequence/tests/test_sequence.py"
- (("def test_concat_strict_many")
- "def _do_not_test_concat_strict_many"))
- (substitute* "skbio/stats/distance/_mantel.py"
- (("from scipy.stats import PearsonRConstantInputWarning")
- "from scipy.stats import ConstantInputWarning")
- (("from scipy.stats import PearsonRNearConstantInputWarning")
- "from scipy.stats import NearConstantInputWarning")
- (("from scipy.stats import SpearmanRConstantInputWarning") "")
- (("warnings.warn\\(PearsonRConstantInputWarning\\(\\)\\)")
- "warnings.warn(ConstantInputWarning())")
- (("warnings.warn\\(PearsonRNearConstantInputWarning\\(\\)\\)")
- "warnings.warn(NearConstantInputWarning())")
- (("warnings.warn\\(SpearmanRConstantInputWarning\\(\\)\\)")
- "warnings.warn(ConstantInputWarning())"))
- (substitute* "skbio/diversity/alpha/tests/test_base.py"
- (("self.assertEqual\\(pielou_e")
- "self.assertAlmostEqual(pielou_e"))))
+ (substitute* "skbio/diversity/__init__.py"
+ ((", numeric_only=True") ""))))
(add-before 'check 'build-extensions
(lambda _
;; Cython extensions have to be built before running the tests.
(invoke "python3" "setup.py" "build_ext" "--inplace")))
(replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests? (invoke "python3" "-m" "skbio.test")))))))
+ (lambda* (#:key tests? test-flags #:allow-other-keys)
+ (when tests?
+ (apply invoke "python3" "-m" "skbio.test" test-flags)))))))
(propagated-inputs
- (list python-cachecontrol
- python-decorator
+ (list python-decorator
python-h5py
python-hdmedians
python-ipython
- python-lockfile
python-matplotlib
python-natsort
python-numpy
python-pandas
- python-scikit-learn
+ python-requests
python-scipy))
(native-inputs
(list python-coverage python-pytest))
diff --git a/gnu/packages/patches/python-scikit-bio-1887.patch b/gnu/packages/patches/python-scikit-bio-1887.patch
new file mode 100644
index 0000000000..7ee7518128
--- /dev/null
+++ b/gnu/packages/patches/python-scikit-bio-1887.patch
@@ -0,0 +1,109 @@
+From 290da0472e3a0af01b242cd1d3dd6a24588db0e5 Mon Sep 17 00:00:00 2001
+From: qiyunzhu <qiyunzhu@gmail.com>
+Date: Sat, 4 Nov 2023 12:59:54 -0700
+Subject: [PATCH 1/2] removed kulsinski
+
+---
+ CHANGELOG.md | 6 ++++++
+ ci/aarch64.conda_requirements.txt | 2 +-
+ ci/conda_requirements.txt | 2 +-
+ setup.py | 2 +-
+ skbio/diversity/_driver.py | 2 --
+ 5 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/CHANGELOG.md b/CHANGELOG.md
+index 0ce69c2c6..cd9adea6c 100644
+--- a/CHANGELOG.md
++++ b/CHANGELOG.md
+@@ -2,6 +2,12 @@
+
+ ## Version 0.5.10
+
++### Features
++* SciPy 1.11+ is now supported.
++
++### Backward-incompatible changes [experimental]
++* Beta diversity metric `kulsinski` was removed. This was motivated by that SciPy replaced this distance metric with `kulczynski1` in version 1.11 (see SciPy issue [#2009](https://github.com/scipy/scipy/issues/2009)), and that both metrics do not return 0 on two identical vectors.
++
+ ### Bug fixes
+
+ * Re-enabled OpenMP support, which has been mistakenly disabled in 0.5.8 ([#1874](https://github.com/biocore/scikit-bio/pull/1874))
+diff --git a/ci/aarch64.conda_requirements.txt b/ci/aarch64.conda_requirements.txt
+index a329bc666..3564f4c3c 100644
+--- a/ci/aarch64.conda_requirements.txt
++++ b/ci/aarch64.conda_requirements.txt
+@@ -5,5 +5,5 @@ matplotlib >= 1.4.3
+ natsort >= 4.0.3
+ numpy >= 1.9.2
+ pandas >= 1.5.0
+-scipy <= 1.10.1
++scipy >= 1.9.0
+ h5py >= 3.6.0
+diff --git a/ci/conda_requirements.txt b/ci/conda_requirements.txt
+index 4402e4ebb..0f1bd715c 100644
+--- a/ci/conda_requirements.txt
++++ b/ci/conda_requirements.txt
+@@ -5,6 +5,6 @@ matplotlib >= 1.4.3
+ natsort >= 4.0.3
+ numpy >= 1.9.2
+ pandas >= 1.5.0
+-scipy <= 1.10.1
++scipy >= 1.9.0
+ h5py >= 3.6.0
+ hdmedians >= 0.14.1
+diff --git a/setup.py b/setup.py
+index 36600e427..fa4d5e0a7 100644
+--- a/setup.py
++++ b/setup.py
+@@ -221,7 +221,7 @@ def check_bin(ccbin, source, allow_dash):
+ 'natsort >= 4.0.3',
+ 'numpy >= 1.9.2',
+ 'pandas >= 1.5.0',
+- 'scipy <= 1.10.1',
++ 'scipy >= 1.9.0',
+ 'h5py >= 3.6.0',
+ 'hdmedians >= 0.14.1',
+ ],
+diff --git a/skbio/diversity/_driver.py b/skbio/diversity/_driver.py
+index 016020743..1a792efb6 100644
+--- a/skbio/diversity/_driver.py
++++ b/skbio/diversity/_driver.py
+@@ -296,7 +296,6 @@ def partial_beta_diversity(metric, counts, ids, id_pairs, validate=True,
+ "dice",
+ "hamming",
+ "jaccard",
+- "kulsinski",
+ "mahalanobis",
+ "manhattan", # aliases to "cityblock" in beta_diversity
+ "matching",
+@@ -314,7 +313,6 @@ def partial_beta_diversity(metric, counts, ids, id_pairs, validate=True,
+ _qualitative_beta_metrics = [
+ "dice",
+ "jaccard",
+- "kulsinski",
+ "matching",
+ "rogerstanimoto",
+ "russellrao",
+
+From 9dd9c6dd68a015f1159f884c57878b8a00fad14c Mon Sep 17 00:00:00 2001
+From: Qiyun Zhu <qiyunzhu@gmail.com>
+Date: Tue, 7 Nov 2023 22:42:10 -0700
+Subject: [PATCH 2/2] fixing numpy exception
+
+---
+ skbio/stats/tests/test_composition.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/skbio/stats/tests/test_composition.py b/skbio/stats/tests/test_composition.py
+index 90921be5b..e720a594f 100644
+--- a/skbio/stats/tests/test_composition.py
++++ b/skbio/stats/tests/test_composition.py
+@@ -1222,7 +1222,7 @@ def test_ancom_fail_alpha(self):
+ ancom(self.table1, self.cats1, alpha=1.1)
+
+ def test_ancom_fail_multiple_groups(self):
+- with self.assertRaises(TypeError):
++ with self.assertRaises((TypeError, np.AxisError)):
+ ancom(self.table4, self.cats4,
+ significance_test=scipy.stats.ttest_ind)
+