dev-python/scipy: Remove old

Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Michał Górny
2024-09-22 03:39:54 +02:00
parent f880b91493
commit 86fbcb4a46
4 changed files with 0 additions and 409 deletions

View File

@@ -1,3 +1,2 @@
DIST scipy-1.14.0.tar.gz 58618870 BLAKE2B bf9ed05628b02dc058555402995caae722cf6802bde80387d4e4477ec533589a66ca70b5dd44a32ddac652c7c69300406434b80e7cbc9aee2a78ae6b26ee4c2b SHA512 6579d988a2093602f5fc82203bbb5dc5690a95032484b5d5bd843d1e7995b3b89d802c7b38ec0345c1f3d8e22c98fb92b3982a1eadfcdf63607f929a52b56abf
DIST scipy-1.14.1.tar.gz 58620554 BLAKE2B 5cb383648a5f3b8d0d321efcd66992212c59ce3fc3dbf812a2fa97c09cb18831b280af6c7689553644f83c531a266e9152e2a139a12aed08307e1ed64deea78e SHA512 20e3cf13590f76dfdc40ca8f90e6d5a68502e74415f37fa24fdb8169098e1d7f0aa631ae742c8c3e9573fa7d63da61986d51f35f090a3785873ae0761f7fcfa6
DIST scipy-html-1.14.0.zip 65723829 BLAKE2B ba47dbf00a5d2a53a9addc5ea68ab18b42f211a018b89aa4b0b57ff0dee02e410a3effc59ddf8fbbc5aa33075d45d86880aed3a14068da5bd7b62ee526199967 SHA512 93be0bafcc64cea1ba130bbcc77c0741acc4f819c84a5030391a22657a1bc63abe8434a2723f66b7ad04c0809dc6d02e3a97ffb8d94bd3d4a4bb759ee796b475

View File

@@ -1,68 +0,0 @@
From 87c4932ca0e4dbe10f918bc5e8096e30fc6557e7 Mon Sep 17 00:00:00 2001
From: Lucas Colley <lucas.colley8@gmail.com>
Date: Mon, 29 Jul 2024 17:57:11 +0100
Subject: [PATCH 1/2] BUG: stats: adapt to `np.floor` type promotion removal
`rv_discrete._cdf` relied on `np.floor` promoting its integer input to `np.float64`. This is no longer the case since numpy/numpy#26766.
[skip cirrus] [skip circle]
---
scipy/stats/_distn_infrastructure.py | 2 +-
scipy/stats/tests/test_discrete_basic.py | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/scipy/stats/_distn_infrastructure.py b/scipy/stats/_distn_infrastructure.py
index a7a0bb66b396..83954af2c11f 100644
--- a/scipy/stats/_distn_infrastructure.py
+++ b/scipy/stats/_distn_infrastructure.py
@@ -3392,7 +3392,7 @@ def _cdf_single(self, k, *args):
return np.sum(self._pmf(m, *args), axis=0)
def _cdf(self, x, *args):
- k = floor(x)
+ k = floor(x).astype(np.float64)
return self._cdfvec(k, *args)
# generic _logcdf, _sf, _logsf, _ppf, _isf, _rvs defined in rv_generic
diff --git a/scipy/stats/tests/test_discrete_basic.py b/scipy/stats/tests/test_discrete_basic.py
index 1ebc9371c075..3db2f0666dbd 100644
--- a/scipy/stats/tests/test_discrete_basic.py
+++ b/scipy/stats/tests/test_discrete_basic.py
@@ -549,3 +549,15 @@ def test_rv_sample():
rng = np.random.default_rng(98430143469)
rvs0 = dist.ppf(rng.random(size=100))
assert_allclose(rvs, rvs0)
+
+def test__pmf_float_input():
+ # gh-21272
+ # test that `rvs()` can be computed when `_pmf` requires float input
+
+ class rv_exponential(stats.rv_discrete):
+ def _pmf(self, i):
+ return (2/3)*3**(1 - i)
+
+ rv = rv_exponential(a=0.0, b=float('inf'))
+ rvs = rv.rvs() # should not crash due to integer input to `_pmf`
+ assert_allclose(rvs, 0)
From fe924edb6564358df24de8b915861d6754c6e94d Mon Sep 17 00:00:00 2001
From: Matt Haberland <mhaberla@calpoly.edu>
Date: Sat, 10 Aug 2024 12:15:56 -0700
Subject: [PATCH 2/2] Update scipy/stats/tests/test_discrete_basic.py
[skip ci]
---
scipy/stats/tests/test_discrete_basic.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scipy/stats/tests/test_discrete_basic.py b/scipy/stats/tests/test_discrete_basic.py
index 3db2f0666dbd..2bc53d95228a 100644
--- a/scipy/stats/tests/test_discrete_basic.py
+++ b/scipy/stats/tests/test_discrete_basic.py
@@ -559,5 +559,5 @@ def _pmf(self, i):
return (2/3)*3**(1 - i)
rv = rv_exponential(a=0.0, b=float('inf'))
- rvs = rv.rvs() # should not crash due to integer input to `_pmf`
+ rvs = rv.rvs(random_state=42) # should not crash due to integer input to `_pmf`
assert_allclose(rvs, 0)

View File

@@ -1,173 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
FORTRAN_NEEDED=fortran
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=meson-python
PYTHON_COMPAT=( pypy3 python3_{10..13} )
PYTHON_REQ_USE="threads(+)"
inherit flag-o-matic fortran-2 distutils-r1
DESCRIPTION="Scientific algorithms library for Python"
HOMEPAGE="
https://scipy.org/
https://github.com/scipy/scipy/
https://pypi.org/project/scipy/
"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
# Need submodules, so git for now.
EGIT_REPO_URI="https://github.com/scipy/scipy"
EGIT_BRANCH="maintenance/$(ver_cut 1-2).x"
EGIT_SUBMODULES=( '*' )
else
inherit pypi
# Upstream is often behind with doc updates
DOC_PV=${PV}
SRC_URI+="
doc? (
https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip
)"
if [[ ${PV} != *rc* ]] ; then
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
fi
LICENSE="BSD LGPL-2"
SLOT="0"
IUSE="doc +fortran test-rust"
# umfpack is technically optional but it's preferred to have it available.
DEPEND="
>=dev-python/numpy-1.23.5:=[lapack,${PYTHON_USEDEP}]
sci-libs/arpack:=
sci-libs/umfpack
virtual/cblas
>=virtual/lapack-3.8
"
RDEPEND="
${DEPEND}
dev-python/pillow[${PYTHON_USEDEP}]
"
BDEPEND="
dev-lang/swig
>=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
>=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}]
>=dev-python/pybind11-2.12.0[${PYTHON_USEDEP}]
>=dev-build/meson-1.1.0
!kernel_Darwin? ( dev-util/patchelf )
virtual/pkgconfig
doc? ( app-arch/unzip )
fortran? (
>=dev-python/pythran-0.16.0[${PYTHON_USEDEP}]
)
test? (
>=dev-python/hypothesis-6.30[${PYTHON_USEDEP}]
)
test-rust? (
dev-python/pooch[${PYTHON_USEDEP}]
)
"
EPYTEST_XDIST=1
distutils_enable_tests pytest
PATCHES=(
# https://github.com/scipy/scipy/pull/21283
# (breaks test_sample_scipy in dev-python/sympy)
"${FILESDIR}/${P}-np2.patch"
)
src_unpack() {
default
if use doc; then
unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
fi
}
python_configure_all() {
DISTUTILS_ARGS=(
-Dblas=blas
-Dlapack=lapack
-Duse-pythran=$(usex fortran true false)
)
# https://bugs.gentoo.org/932721
has_version '>=dev-python/numpy-2.0.0' && filter-lto
}
python_test() {
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
local EPYTEST_DESELECT=(
# Network
scipy/datasets/tests/test_data.py::TestDatasets::test_existence_all
scipy/datasets/tests/test_data.py::TestDatasets::test_ascent
scipy/datasets/tests/test_data.py::TestDatasets::test_face
scipy/datasets/tests/test_data.py::TestDatasets::test_electrocardiogram
# Precision issue with diff. blas?
scipy/optimize/tests/test__basinhopping.py::Test_Metropolis::test_gh7799
# Crashes with assertion, not a regression
# https://github.com/scipy/scipy/issues/19321
scipy/signal/tests/test_signaltools.py::test_lfilter_bad_object
# timeouts
scipy/sparse/linalg/tests/test_propack.py::test_examples
# hang or incredibly slow
scipy/optimize/tests/test_lsq_linear.py::TestBVLS::test_large_rank_deficient
scipy/optimize/tests/test_lsq_linear.py::TestTRF::test_large_rank_deficient
# TODO
scipy/optimize/tests/test_minimize_constrained.py::TestTrustRegionConstr::test_list_of_problems
)
local EPYTEST_IGNORE=()
if ! has_version -b "dev-python/pooch[${PYTHON_USEDEP}]" ; then
EPYTEST_IGNORE+=(
scipy/datasets/tests/test_data.py
)
fi
case ${EPYTHON} in
pypy3)
EPYTEST_DESELECT+=(
# fd leaks in tests
# https://github.com/scipy/scipy/issues/19553
scipy/fft/_pocketfft/tests/test_real_transforms.py
# TODO
'scipy/special/tests/test_data.py::test_boost[<Data for expi: expinti_data_long_ipp-expinti_data_long>]'
# missing dict.__ror__
# https://github.com/pypy/pypy/issues/4934
'scipy/sparse/tests/test_dok.py::test_dunder_ror[dok_matrix]'
# mismatched exception message
scipy/optimize/tests/test_hessian_update_strategy.py::TestHessianUpdateStrategy::test_initialize_catch_illegal
)
;;
python3.13)
EPYTEST_DESELECT+=(
# docstring formatting
scipy/misc/tests/test_doccer.py::test_decorator
)
;;
esac
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
epytest scipy
}
python_install_all() {
use doc && local HTML_DOCS=( "${WORKDIR}"/html/. )
distutils-r1_python_install_all
}

View File

@@ -1,167 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
FORTRAN_NEEDED=fortran
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=meson-python
PYTHON_COMPAT=( pypy3 python3_{10..13} )
PYTHON_REQ_USE="threads(+)"
inherit flag-o-matic fortran-2 distutils-r1
DESCRIPTION="Scientific algorithms library for Python"
HOMEPAGE="
https://scipy.org/
https://github.com/scipy/scipy/
https://pypi.org/project/scipy/
"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
# Need submodules, so git for now.
EGIT_REPO_URI="https://github.com/scipy/scipy"
EGIT_BRANCH="maintenance/$(ver_cut 1-2).x"
EGIT_SUBMODULES=( '*' )
else
inherit pypi
# Upstream is often behind with doc updates
DOC_PV=${PV}
SRC_URI+="
doc? (
https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip
)"
if [[ ${PV} != *rc* ]] ; then
KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
fi
LICENSE="BSD LGPL-2"
SLOT="0"
IUSE="doc +fortran test-rust"
# umfpack is technically optional but it's preferred to have it available.
DEPEND="
>=dev-python/numpy-1.23.5:=[lapack,${PYTHON_USEDEP}]
sci-libs/arpack:=
sci-libs/umfpack
virtual/cblas
>=virtual/lapack-3.8
"
RDEPEND="
${DEPEND}
dev-python/pillow[${PYTHON_USEDEP}]
"
BDEPEND="
dev-lang/swig
>=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
>=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}]
>=dev-python/pybind11-2.12.0[${PYTHON_USEDEP}]
>=dev-build/meson-1.1.0
!kernel_Darwin? ( dev-util/patchelf )
virtual/pkgconfig
doc? ( app-arch/unzip )
fortran? (
>=dev-python/pythran-0.16.0[${PYTHON_USEDEP}]
)
test? (
>=dev-python/hypothesis-6.30[${PYTHON_USEDEP}]
)
test-rust? (
dev-python/pooch[${PYTHON_USEDEP}]
)
"
EPYTEST_XDIST=1
distutils_enable_tests pytest
src_unpack() {
default
if use doc; then
unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
fi
}
python_configure_all() {
DISTUTILS_ARGS=(
-Dblas=blas
-Dlapack=lapack
-Duse-pythran=$(usex fortran true false)
)
# https://bugs.gentoo.org/932721
has_version '>=dev-python/numpy-2.0.0' && filter-lto
}
python_test() {
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
local EPYTEST_DESELECT=(
# Network
scipy/datasets/tests/test_data.py::TestDatasets::test_existence_all
scipy/datasets/tests/test_data.py::TestDatasets::test_ascent
scipy/datasets/tests/test_data.py::TestDatasets::test_face
scipy/datasets/tests/test_data.py::TestDatasets::test_electrocardiogram
# Precision issue with diff. blas?
scipy/optimize/tests/test__basinhopping.py::Test_Metropolis::test_gh7799
# Crashes with assertion, not a regression
# https://github.com/scipy/scipy/issues/19321
scipy/signal/tests/test_signaltools.py::test_lfilter_bad_object
# timeouts
scipy/sparse/linalg/tests/test_propack.py::test_examples
# hang or incredibly slow
scipy/optimize/tests/test_lsq_linear.py::TestBVLS::test_large_rank_deficient
scipy/optimize/tests/test_lsq_linear.py::TestTRF::test_large_rank_deficient
# TODO
scipy/optimize/tests/test_minimize_constrained.py::TestTrustRegionConstr::test_list_of_problems
)
local EPYTEST_IGNORE=()
if ! has_version -b "dev-python/pooch[${PYTHON_USEDEP}]" ; then
EPYTEST_IGNORE+=(
scipy/datasets/tests/test_data.py
)
fi
case ${EPYTHON} in
pypy3)
EPYTEST_DESELECT+=(
# fd leaks in tests
# https://github.com/scipy/scipy/issues/19553
scipy/fft/_pocketfft/tests/test_real_transforms.py
# TODO
'scipy/special/tests/test_data.py::test_boost[<Data for expi: expinti_data_long_ipp-expinti_data_long>]'
# missing dict.__ror__
# https://github.com/pypy/pypy/issues/4934
'scipy/sparse/tests/test_dok.py::test_dunder_ror[dok_matrix]'
# mismatched exception message
scipy/optimize/tests/test_hessian_update_strategy.py::TestHessianUpdateStrategy::test_initialize_catch_illegal
)
;;
python3.13)
EPYTEST_DESELECT+=(
# docstring formatting
scipy/misc/tests/test_doccer.py::test_decorator
)
;;
esac
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
epytest scipy
}
python_install_all() {
use doc && local HTML_DOCS=( "${WORKDIR}"/html/. )
distutils-r1_python_install_all
}