parent
de8cee97b4
commit
803fd0655e
1
.gitignore
vendored
1
.gitignore
vendored
@ -29,3 +29,4 @@ scipy-0.7.2.tar.gz
|
|||||||
/scipy-1.3.1.tar.gz
|
/scipy-1.3.1.tar.gz
|
||||||
/scipy-1.4.1.tar.gz
|
/scipy-1.4.1.tar.gz
|
||||||
/scipy-1.5.0.tar.gz
|
/scipy-1.5.0.tar.gz
|
||||||
|
/scipy-1.5.2.tar.gz
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
diff --git a/scipy/conftest.py b/scipy/conftest.py
|
|
||||||
index e5fac23..1a971e8 100644
|
|
||||||
--- a/scipy/conftest.py
|
|
||||||
+++ b/scipy/conftest.py
|
|
||||||
@@ -37,3 +38,15 @@ def check_fpu_mode(request):
|
|
||||||
warnings.warn("FPU mode changed from {0:#x} to {1:#x} during "
|
|
||||||
"the test".format(old_mode, new_mode),
|
|
||||||
category=FPUModeChangeWarning, stacklevel=0)
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+ACCEPTABLE_FAILURE_RATE = int(os.environ.get('ACCEPTABLE_FAILURE_RATE', 0))
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+@pytest.hookimpl()
|
|
||||||
+def pytest_sessionfinish(session, exitstatus):
|
|
||||||
+ if exitstatus != 1:
|
|
||||||
+ return
|
|
||||||
+ failure_rate = (100.0 * session.testsfailed) / session.testscollected
|
|
||||||
+ if failure_rate <= ACCEPTABLE_FAILURE_RATE:
|
|
||||||
+ session.exitstatus = 0
|
|
51
scipy.spec
51
scipy.spec
@ -14,8 +14,8 @@
|
|||||||
|
|
||||||
Summary: Scientific Tools for Python
|
Summary: Scientific Tools for Python
|
||||||
Name: scipy
|
Name: scipy
|
||||||
Version: 1.5.0
|
Version: 1.5.2
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
# BSD -- whole package except:
|
# BSD -- whole package except:
|
||||||
# Boost -- scipy/special/cephes/scipy_iv.c
|
# Boost -- scipy/special/cephes/scipy_iv.c
|
||||||
@ -24,10 +24,8 @@ License: BSD and Boost and Public Domain
|
|||||||
Url: http://www.scipy.org/scipylib/index.html
|
Url: http://www.scipy.org/scipylib/index.html
|
||||||
Source0: https://github.com/scipy/scipy/releases/download/v%{version}/scipy-%{version}.tar.gz
|
Source0: https://github.com/scipy/scipy/releases/download/v%{version}/scipy-%{version}.tar.gz
|
||||||
|
|
||||||
# Previously we ignored the tests results, because they don't always pass
|
# https://github.com/scipy/scipy/pull/12899
|
||||||
# Instead of ignoring the results entirely, we allow certain failure rate
|
Patch0: test_nnz_overflow.patch
|
||||||
# https://stackoverflow.com/a/47731333/1839451
|
|
||||||
Patch0: acceptable_failure_rate.patch
|
|
||||||
|
|
||||||
BuildRequires: fftw-devel, suitesparse-devel
|
BuildRequires: fftw-devel, suitesparse-devel
|
||||||
BuildRequires: %{blaslib}-devel
|
BuildRequires: %{blaslib}-devel
|
||||||
@ -139,33 +137,24 @@ pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch
|
|||||||
# check against the reference BLAS/LAPACK
|
# check against the reference BLAS/LAPACK
|
||||||
export FLEXIBLAS=netlib
|
export FLEXIBLAS=netlib
|
||||||
|
|
||||||
# Skip all tests on s390x because they hangs unexpectedly and randomly
|
|
||||||
# and pytest-timeout has no effect. Note that the outcome of the tests
|
|
||||||
# was previously ignored anyway so by disabling the test for s390x we
|
|
||||||
# are not doing anything more dangerous.
|
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
exit 0
|
# skip failing tests on s390x for now
|
||||||
%endif
|
export PYTEST_ADDOPTS="-k '\
|
||||||
|
not (TestNoData and test_nodata) and \
|
||||||
%ifarch x86_64
|
not test_fortranfile_read_mixed_record and \
|
||||||
export ACCEPTABLE_FAILURE_RATE=0
|
not test_kde_1d and \
|
||||||
%else
|
not test_kde_1d_weighted and \
|
||||||
# there are usually 10-21 test failing, so we allow 1% failure rate
|
not test_kde_2d and \
|
||||||
# XXX ppc fails 2%+, so we've extended this to 3% for now
|
not test_kde_2d_weighted and \
|
||||||
export ACCEPTABLE_FAILURE_RATE=3
|
not test_gaussian_kde_subclassing and \
|
||||||
%endif
|
not test_gaussian_kde_covariance_caching and \
|
||||||
|
not test_kde_integer_input and \
|
||||||
%ifarch ppc64le
|
not test_pdf_logpdf and \
|
||||||
# test_decomp segfaults on ppc64le
|
not test_pdf_logpdf_weighted'"
|
||||||
export k="not test_denormals and not test_decomp"
|
|
||||||
%else
|
|
||||||
# test_denormals tends to stuck
|
|
||||||
export k="not test_denormals"
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
pushd %{buildroot}/%{python3_sitearch}
|
pushd %{buildroot}/%{python3_sitearch}
|
||||||
# TODO TestIQR.test_scale fails on Python 3.8+ due to some warnings, investigate
|
%{pytest} --timeout=300 scipy --numprocesses=auto
|
||||||
%{pytest} --timeout=500 -k "$k and not (TestIQR and test_scale)" scipy --numprocesses=auto
|
|
||||||
# Remove test remnants
|
# Remove test remnants
|
||||||
rm -rf gram{A,B}
|
rm -rf gram{A,B}
|
||||||
popd
|
popd
|
||||||
@ -182,6 +171,10 @@ popd
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Aug 31 2020 Nikola Forró <nforro@redhat.com> - 1.5.2-1
|
||||||
|
- New upstream release 1.5.2
|
||||||
|
resolves: #1853871 and #1840077
|
||||||
|
|
||||||
* Sun Aug 16 2020 Iñaki Úcar <iucar@fedoraproject.org> - 1.5.0-4
|
* Sun Aug 16 2020 Iñaki Úcar <iucar@fedoraproject.org> - 1.5.0-4
|
||||||
- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager
|
- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (scipy-1.5.0.tar.gz) = 4c981a3125a88593cbc5a17417022a5db8f6ccb4c1c24e78afeb9bb26428b81d2d0fe9965caa418753b1bbbda2fa30533fa1307aac6ab168458d68f7b46049be
|
SHA512 (scipy-1.5.2.tar.gz) = 45463df30a0f6270d9f4cf52235f31607904a6ae1375e12600e7f1ab2d27b1dc25a6211b49dceb71506be22c756890adaf9f81d9e6be7455def86c9caf0dc923
|
||||||
|
30
test_nnz_overflow.patch
Normal file
30
test_nnz_overflow.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From b4da1455615fd7dc6d3554d16008a1e88018fa4d Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||||
|
Date: Wed, 30 Sep 2020 11:44:25 +0200
|
||||||
|
Subject: [PATCH] TST: skip test_nnz_overflow on 32-bit architectures
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
On a 32-bit architecture, in case check_free_memory() passes, the first
|
||||||
|
np.zeros() fails with "ValueError: Maximum allowed dimension exceeded",
|
||||||
|
which I believe is expected.
|
||||||
|
|
||||||
|
Signed-off-by: Nikola Forró <nforro@redhat.com>
|
||||||
|
---
|
||||||
|
scipy/sparse/tests/test_sparsetools.py | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/scipy/sparse/tests/test_sparsetools.py b/scipy/sparse/tests/test_sparsetools.py
|
||||||
|
index 0c208ef4451..19c7de43fa1 100644
|
||||||
|
--- a/scipy/sparse/tests/test_sparsetools.py
|
||||||
|
+++ b/scipy/sparse/tests/test_sparsetools.py
|
||||||
|
@@ -61,6 +61,8 @@ def test_regression_std_vector_dtypes():
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.slow
|
||||||
|
+@pytest.mark.skipif(not (sys.platform.startswith('linux') and np.dtype(np.intp).itemsize >= 8),
|
||||||
|
+ reason="test requires 64-bit Linux")
|
||||||
|
def test_nnz_overflow():
|
||||||
|
# Regression test for gh-7230 / gh-7871, checking that coo_todense
|
||||||
|
# with nnz > int32max doesn't overflow.
|
Loading…
Reference in New Issue
Block a user