import python3.11-scipy-1.10.0-1.el8
This commit is contained in:
		
						commit
						30e6264c0f
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| SOURCES/scipy-1.10.0.tar.gz | ||||
							
								
								
									
										1
									
								
								.python3.11-scipy.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.python3.11-scipy.metadata
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| 8094557cc6c2d2ec32faf2a9b33ed41b3a8acecc SOURCES/scipy-1.10.0.tar.gz | ||||
							
								
								
									
										93
									
								
								SOURCES/fix-32bit-test-failures.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								SOURCES/fix-32bit-test-failures.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,93 @@ | ||||
| diff --git a/scipy/sparse/linalg/_isolve/tests/test_iterative.py b/scipy/sparse/linalg/_isolve/tests/test_iterative.py
 | ||||
| index a782a8d27c2..48fc16b7a00 100644
 | ||||
| --- a/scipy/sparse/linalg/_isolve/tests/test_iterative.py
 | ||||
| +++ b/scipy/sparse/linalg/_isolve/tests/test_iterative.py
 | ||||
| @@ -409,7 +409,9 @@ def test_atol(solver):
 | ||||
|          residual = A.dot(x) - b | ||||
|          err = np.linalg.norm(residual) | ||||
|          atol2 = tol * b_norm | ||||
| -        assert_(err <= max(atol, atol2))
 | ||||
| +        # Added 1.00025 fudge factor because of `err` exceeding `atol` just
 | ||||
| +        # very slightly on s390x (see gh-17839)
 | ||||
| +        assert_(err <= 1.00025 * max(atol, atol2))
 | ||||
|   | ||||
|   | ||||
|  @pytest.mark.parametrize("solver", [cg, cgs, bicg, bicgstab, gmres, qmr, minres, lgmres, gcrotmk, tfqmr]) | ||||
| @@ -452,8 +454,10 @@ def test_zero_rhs(solver):
 | ||||
|                                                  and sys.version_info[1] == 9, | ||||
|                                                  reason="gh-13019")), | ||||
|      qmr, | ||||
| -    pytest.param(lgmres, marks=pytest.mark.xfail(platform.machine() == 'ppc64le',
 | ||||
| -                                                 reason="fails on ppc64le")),
 | ||||
| +    pytest.param(lgmres, marks=pytest.mark.xfail(
 | ||||
| +        platform.machine() not in ['x86_64' 'x86', 'aarch64', 'arm64'],
 | ||||
| +        reason="fails on at least ppc64le, ppc64 and riscv64, see gh-17839")
 | ||||
| +    ),
 | ||||
|      pytest.param(cgs, marks=pytest.mark.xfail), | ||||
|      pytest.param(bicg, marks=pytest.mark.xfail), | ||||
|      pytest.param(bicgstab, marks=pytest.mark.xfail), | ||||
| diff --git a/scipy/special/tests/test_orthogonal.py b/scipy/special/tests/test_orthogonal.py
 | ||||
| index a325cb1a9ef..408b03bde2e 100644
 | ||||
| --- a/scipy/special/tests/test_orthogonal.py
 | ||||
| +++ b/scipy/special/tests/test_orthogonal.py
 | ||||
| @@ -546,7 +546,7 @@ def test_roots_gegenbauer():
 | ||||
|      vgq(rootf(170), evalf(170), weightf(170), -1., 1., 5, atol=1e-13) | ||||
|      vgq(rootf(170), evalf(170), weightf(170), -1., 1., 25, atol=1e-12) | ||||
|      vgq(rootf(170), evalf(170), weightf(170), -1., 1., 100, atol=1e-11) | ||||
| -    vgq(rootf(170.5), evalf(170.5), weightf(170.5), -1., 1., 5, atol=1e-13)
 | ||||
| +    vgq(rootf(170.5), evalf(170.5), weightf(170.5), -1., 1., 5, atol=1.25e-13)
 | ||||
|      vgq(rootf(170.5), evalf(170.5), weightf(170.5), -1., 1., 25, atol=1e-12) | ||||
|      vgq(rootf(170.5), evalf(170.5), weightf(170.5), -1., 1., 100, atol=1e-11) | ||||
|   | ||||
| diff --git a/scipy/stats/tests/test_distributions.py b/scipy/stats/tests/test_distributions.py
 | ||||
| index eceeafdffe0..139b0537174 100644
 | ||||
| --- a/scipy/stats/tests/test_distributions.py
 | ||||
| +++ b/scipy/stats/tests/test_distributions.py
 | ||||
| @@ -4254,7 +4254,7 @@ def test_pdf_nolan_samples(
 | ||||
|              ], | ||||
|              # for small alpha very slightly reduced accuracy | ||||
|              [ | ||||
| -                'piecewise', 5e-11, lambda r: (
 | ||||
| +                'piecewise', 2.5e-10, lambda r: (
 | ||||
|                      np.isin(r['pct'], pct_range) & | ||||
|                      np.isin(r['alpha'], alpha_range) & | ||||
|                      np.isin(r['beta'], beta_range) & | ||||
| @@ -4358,7 +4358,7 @@ def test_cdf_nolan_samples(
 | ||||
|          tests = [ | ||||
|              # piecewise generally good accuracy | ||||
|              [ | ||||
| -                'piecewise', 1e-12, lambda r: (
 | ||||
| +                'piecewise', 2e-12, lambda r: (
 | ||||
|                      np.isin(r['pct'], pct_range) & | ||||
|                      np.isin(r['alpha'], alpha_range) & | ||||
|                      np.isin(r['beta'], beta_range) & | ||||
| @@ -4480,6 +4480,14 @@ def test_location_scale(
 | ||||
|      ): | ||||
|          """Tests for pdf and cdf where loc, scale are different from 0, 1 | ||||
|          """ | ||||
| +
 | ||||
| +        uname = platform.uname()
 | ||||
| +        is_linux_32 = uname.system == 'Linux' and "32bit" in platform.architecture()[0]
 | ||||
| +        # Test seems to be unstable (see gh-17839 for a bug report on Debian
 | ||||
| +        # i386), so skip it.
 | ||||
| +        if is_linux_32 and case == 'pdf':
 | ||||
| +            pytest.skip("Test unstable on some platforms; see gh-17839, 17859")
 | ||||
| +
 | ||||
|          data = nolan_loc_scale_sample_data | ||||
|          # We only test against piecewise as location/scale transforms | ||||
|          # are same for other methods. | ||||
| diff --git a/scipy/stats/tests/test_mstats_basic.py b/scipy/stats/tests/test_mstats_basic.py
 | ||||
| index cd53c7b7914..76cbfd8c253 100644
 | ||||
| --- a/scipy/stats/tests/test_mstats_basic.py
 | ||||
| +++ b/scipy/stats/tests/test_mstats_basic.py
 | ||||
| @@ -1768,8 +1768,8 @@ def test_skewtest_2D_WithMask(self):
 | ||||
|                  r = stats.skewtest(x) | ||||
|                  rm = stats.mstats.skewtest(xm) | ||||
|   | ||||
| -                assert_allclose(r[0][0], rm[0][0], rtol=2e-15)
 | ||||
| -                assert_allclose(r[0][1], rm[0][1], rtol=1e-15)
 | ||||
| +                assert_allclose(r[0][0], rm[0][0], rtol=1e-14)
 | ||||
| +                assert_allclose(r[0][1], rm[0][1], rtol=1e-14)
 | ||||
|   | ||||
|      def test_normaltest(self): | ||||
|          with np.errstate(over='raise'), suppress_warnings() as sup: | ||||
							
								
								
									
										287
									
								
								SPECS/python3.11-scipy.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										287
									
								
								SPECS/python3.11-scipy.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,287 @@ | ||||
| %global __python3 /usr/bin/python3.11 | ||||
| %global python3_pkgversion 3.11 | ||||
| 
 | ||||
| # Pythran is an optional build dependency. | ||||
| # When used, it makes some modules faster, | ||||
| # but it is usually not available soon enough for new major Python versions. | ||||
| %bcond_with pythran | ||||
| 
 | ||||
| # Set to pre-release version suffix if building pre-release, else %%{nil} | ||||
| %global rcver %{nil} | ||||
| 
 | ||||
| %if 0%{?fedora} >= 33 || 0%{?rhel} >= 9 | ||||
| %global blaslib flexiblas | ||||
| %global blasvar %{nil} | ||||
| %else | ||||
| %global blaslib openblas | ||||
| %global blasvar p | ||||
| %endif | ||||
| 
 | ||||
| %global modname scipy | ||||
| 
 | ||||
| Summary:    Scientific Tools for Python | ||||
| Name:       python%{python3_pkgversion}-scipy | ||||
| Version:    1.10.0 | ||||
| Release:    1%{?dist} | ||||
| 
 | ||||
| # BSD -- whole package except: | ||||
| # Boost -- scipy/special/cephes/scipy_iv.c | ||||
| # Public Domain -- scipy/odr/__odrpack.c | ||||
| License:    BSD and Boost and Public Domain | ||||
| Url:        http://www.scipy.org/scipylib/index.html | ||||
| Source0:    https://github.com/scipy/scipy/releases/download/v%{version}/scipy-%{version}.tar.gz | ||||
| 
 | ||||
| # Fix some test failures on 32 bits | ||||
| # https://github.com/scipy/scipy/pull/17859 | ||||
| # https://github.com/scipy/scipy/pull/17931 | ||||
| Patch0:     fix-32bit-test-failures.patch | ||||
| 
 | ||||
| BuildRequires: fftw-devel, suitesparse-devel | ||||
| BuildRequires: %{blaslib}-devel | ||||
| BuildRequires: gcc-gfortran, swig, gcc-c++ | ||||
| BuildRequires: qhull-devel | ||||
| 
 | ||||
| BuildRequires:  python%{python3_pkgversion}-pybind11-devel | ||||
| BuildRequires:  python%{python3_pkgversion}-pybind11 >= 2.4.0 | ||||
| BuildRequires:  python%{python3_pkgversion}-numpy, python%{python3_pkgversion}-devel, python%{python3_pkgversion}-numpy-f2py | ||||
| BuildRequires:  python%{python3_pkgversion}-rpm-macros | ||||
| BuildRequires:  python%{python3_pkgversion}-setuptools | ||||
| BuildRequires:  python%{python3_pkgversion}-Cython | ||||
| BuildRequires:  python%{python3_pkgversion}-pytest | ||||
| 
 | ||||
| %if %{with pythran} | ||||
| BuildRequires:  pythran | ||||
| %endif | ||||
| 
 | ||||
| Requires:   python%{python3_pkgversion}-numpy, python%{python3_pkgversion}-f2py | ||||
| 
 | ||||
| %global _description %{expand: | ||||
| Scipy is open-source software for mathematics, science, and | ||||
| engineering. The core library is NumPy which provides convenient and | ||||
| fast N-dimensional array manipulation. The SciPy library is built to | ||||
| work with NumPy arrays, and provides many user-friendly and efficient | ||||
| numerical routines such as routines for numerical integration and | ||||
| optimization. Together, they run on all popular operating systems, are | ||||
| quick to install, and are free of charge. NumPy and SciPy are easy to | ||||
| use, but powerful enough to be depended upon by some of the world's | ||||
| leading scientists and engineers.} | ||||
| 
 | ||||
| %description %_description | ||||
| 
 | ||||
| %prep | ||||
| %autosetup -p1 -n %{modname}-%{version}%{?rcver} | ||||
| cat > site.cfg << EOF | ||||
| 
 | ||||
| [amd] | ||||
| library_dirs = %{_libdir} | ||||
| include_dirs = /usr/include/suitesparse | ||||
| amd_libs = amd | ||||
| 
 | ||||
| [umfpack] | ||||
| library_dirs = %{_libdir} | ||||
| include_dirs = /usr/include/suitesparse | ||||
| umfpack_libs = umfpack | ||||
| 
 | ||||
| [openblas] | ||||
| libraries = %{blaslib}%{blasvar} | ||||
| library_dirs = %{_libdir} | ||||
| EOF | ||||
| 
 | ||||
| rm $(grep -rl '/\* Generated by Cython') PKG-INFO | ||||
| 
 | ||||
| %build | ||||
| export SCIPY_USE_PYTHRAN=0%{?with_pythran} | ||||
| 
 | ||||
| for PY in %{python3_pkgversion}; do | ||||
|   # Adding -fallow-argument-mismatch workaround for https://github.com/scipy/scipy/issues/11611 | ||||
|   env CFLAGS="$RPM_OPT_FLAGS -lm" \ | ||||
|       FFLAGS="$RPM_OPT_FLAGS -fPIC -cpp" \ | ||||
|       LDFLAGS="$RPM_LD_FLAGS -shared" \ | ||||
|   %if 0%{?rhel} >= 9 | ||||
|   %ifarch x86_64 | ||||
|       # workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2068530 | ||||
|       LDFLAGS="%{__global_ldflags} -Wl,--no-as-needed -lmvec -Wl,--as-needed" \ | ||||
|   %endif | ||||
|   %endif | ||||
|     %{_bindir}/python$PY setup.py config_fc \ | ||||
|     --fcompiler=gnu95 --noarch \ | ||||
|     build | ||||
| 
 | ||||
| done | ||||
| 
 | ||||
| %install | ||||
| export SCIPY_USE_PYTHRAN=0%{?with_pythran} | ||||
| 
 | ||||
| %py3_install | ||||
| # Some files got ambiguous python shebangs, we fix them after everything else is done | ||||
| %py3_shebang_fix %{buildroot}%{python3_sitearch} | ||||
| 
 | ||||
| %check | ||||
| # check against the reference BLAS/LAPACK | ||||
| export FLEXIBLAS=netlib | ||||
| 
 | ||||
| 
 | ||||
| # https://github.com/scipy/scipy/issues/17912 | ||||
| SKIP_ALL_ARCHS="\ | ||||
| not TestDatasets and \ | ||||
| not TestOde and \ | ||||
| not TestComplexOde and \ | ||||
| not TestVODECheckParameterUse and \ | ||||
| not TestZVODECheckParameterUse and \ | ||||
| not test_banded_ode_solvers and \ | ||||
| not test_examples[True-complex64]" | ||||
| 
 | ||||
| # skip also failing test_sygst for now | ||||
| SKIP_X86_64="-k '$SKIP_ALL_ARCHS and \ | ||||
| not test_sygst'" | ||||
| 
 | ||||
| # https://bugzilla.redhat.com/show_bug.cgi?id=1959353 | ||||
| # TestConstructUtils::test_concatenate_int32_overflow is flaky on aarch64 | ||||
| SKIP_AARCH64="-k '$SKIP_ALL_ARCHS and \ | ||||
| not test_solve_discrete_are and \ | ||||
| not test_maxiter_worsening[lgmres] and \ | ||||
| not test_concatenate_int32_overflow'" | ||||
| 
 | ||||
| # Those tests fail on koji/brew for ppc64le but pass | ||||
| # locally for that architecture | ||||
| SKIP_PPC64LE="-k '$SKIP_ALL_ARCHS and \ | ||||
| not TestFFTConvolve and \ | ||||
| not TestDoubleFFT and \ | ||||
| not TestSingleFFT and \ | ||||
| not TestDoubleIFFT and \ | ||||
| not TestSingleIFFT and \ | ||||
| not test_tpsv and \ | ||||
| not TestLinear and \ | ||||
| not test_various_drivers_standard and \ | ||||
| not test_Mx1_economic and \ | ||||
| not test_hegst and \ | ||||
| not test_tpqrt_tpmqrt and \ | ||||
| not test_pteqr and \ | ||||
| not test_pptrs_pptri_pptrf_ppsv_ppcon and \ | ||||
| not test_against_numpy_convolve and \ | ||||
| not test_convolve_method and \ | ||||
| not test_rank1 and \ | ||||
| not test_splu_smoketest and \ | ||||
| not test_spilu_smoketest and \ | ||||
| not test_threads_parallel and \ | ||||
| not test_hermitian and \ | ||||
| not test_convergence and \ | ||||
| not test_precond_dummy and \ | ||||
| not test_x0_equals_Mb and \ | ||||
| not test_svdp and \ | ||||
| not test_examples'" | ||||
| 
 | ||||
| # https://bugzilla.redhat.com/show_bug.cgi?id=1959353 | ||||
| SKIP_S390X="-k '$SKIP_ALL_ARCHS and \ | ||||
| not test_solve_discrete_are and \ | ||||
| not test_maxiter_worsening[lgmres] and \ | ||||
| not TestInterop and \ | ||||
| not TestSplder and \ | ||||
| not test_dblint and \ | ||||
| not TestUnivariateSpline and \ | ||||
| not TestLSQBivariateSpline and \ | ||||
| not TestPPoly and \ | ||||
| not TestLevyStable'" | ||||
| 
 | ||||
| # skip also test_cython_api: https://bugzilla.redhat.com/show_bug.cgi?id=2068496 | ||||
| # https://github.com/scipy/scipy/issues/17213 | ||||
| SKIP_32BIT="-k '$SKIP_ALL_ARCHS and \ | ||||
| not test_sygst and \ | ||||
| not test_cython_api and \ | ||||
| not test_examples and \ | ||||
| not test_shifts and \ | ||||
| not test_mu and \ | ||||
| not test_sum and \ | ||||
| not test_svdp and \ | ||||
| not test_resiliency_all_32 and \ | ||||
| not test_resiliency_random[TestCSC-test_sum_dtype] and \ | ||||
| not test_x0_equals_Mb[bicgstab] and \ | ||||
| not test_gh12218'" | ||||
| 
 | ||||
| export PYTEST_ADDOPTS="-k '$SKIP_ALL_ARCHS'" | ||||
| # default test timeout | ||||
| TIMEOUT=500 | ||||
| 
 | ||||
| %ifarch x86_64 | ||||
| export PYTEST_ADDOPTS=$SKIP_X86_64 | ||||
| %endif | ||||
| 
 | ||||
| %ifarch aarch64 | ||||
| export PYTEST_ADDOPTS=$SKIP_AARCH64 | ||||
| TIMEOUT=1000 | ||||
| %endif | ||||
| 
 | ||||
| %ifarch ppc64le | ||||
| export PYTEST_ADDOPTS=$SKIP_PPC64LE | ||||
| TIMEOUT=1000 | ||||
| %endif | ||||
| 
 | ||||
| %ifarch s390x | ||||
| export PYTEST_ADDOPTS=$SKIP_S390X | ||||
| TIMEOUT=1000 | ||||
| %endif | ||||
| 
 | ||||
| %ifarch armv7hl | ||||
| export PYTEST_ADDOPTS=$SKIP_32BIT | ||||
| %endif | ||||
| 
 | ||||
| %ifarch i686 | ||||
| export PYTEST_ADDOPTS=$SKIP_32BIT | ||||
| %endif | ||||
| 
 | ||||
| pushd %{buildroot}/%{python3_sitearch} | ||||
| # Ignoring the datasets tests as we don't have the optional pooch | ||||
| # dependency on RHEL. | ||||
| %{pytest} --ignore=scipy/datasets/tests/test_data.py scipy | ||||
| # Remove test remnants | ||||
| rm -rf gram{A,B} | ||||
| popd | ||||
| 
 | ||||
| %files -n python%{python3_pkgversion}-scipy | ||||
| %doc LICENSE.txt | ||||
| %{python3_sitearch}/scipy/ | ||||
| %{python3_sitearch}/*.egg-info | ||||
| 
 | ||||
| %changelog | ||||
| * Sun Feb 19 2023 Charalampos Stratakis <cstratak@redhat.com> - 1.10.0-1 | ||||
| - Update to 1.10.0 | ||||
| 
 | ||||
| * Thu Dec 01 2022 Charalampos Stratakis <cstratak@redhat.com> - 1.8.1-1 | ||||
| - Initial package | ||||
| - Fedora contributions by: | ||||
|       Antonio Trande <anto.trande@gmail.com> | ||||
|       Bill Nottingham <notting@fedoraproject.org> | ||||
|       Björn Esser <me@besser82.io> | ||||
|       Charalampos Stratakis <cstratak@redhat.com> | ||||
|       Christian Dersch <lupinix@mailbox.org> | ||||
|       David Malcolm <dmalcolm@redhat.com> | ||||
|       Deji Akingunola <deji@fedoraproject.org> | ||||
|       Dennis Gilmore <dennis@ausil.us> | ||||
|       Elliott Sales de Andrade <quantum.analyst@gmail.com> | ||||
|       Ignacio Vazquez-Abrams <ivazquez@fedoraproject.org> | ||||
|       Igor Gnatenko <ignatenkobrain@fedoraproject.org> | ||||
|       Iñaki Úcar <iucar@fedoraproject.org> | ||||
|       Jef Spaleta <jspaleta@fedoraproject.org> | ||||
|       Jesse Keating <jkeating@fedoraproject.org> | ||||
|       Jitka Plesnikova <jplesnik@redhat.com> | ||||
|       Jonathan Wakely <jwakely@redhat.com> | ||||
|       Jon Ciesla <limb@fedoraproject.org> | ||||
|       Kalev Lember <klember@redhat.com> | ||||
|       Kevin Fenzi <kevin@scrye.com> | ||||
|       Lumir Balhar <lbalhar@redhat.com> | ||||
|       Mamoru TASAKA <mtasaka@fedoraproject.org> | ||||
|       Marcel Plch <mplch@redhat.com> | ||||
|       Miro Hrončok <miro@hroncok.cz> | ||||
|       Nikola Forró <nforro@redhat.com> | ||||
|       Nils Philippsen <nils@redhat.com> | ||||
|       Orion Poplawski <orion@nwra.com> | ||||
|       Pavel Šimovec <psimovec@redhat.com> | ||||
|       Peter Robinson <pbrobinson@fedoraproject.org> | ||||
|       Petr Viktorin <pviktori@redhat.com> | ||||
|       Robert Kuska <rkuska@redhat.com> | ||||
|       Than Ngo <than@redhat.com> | ||||
|       Thomas Spura <thomas.spura@gmail.com> | ||||
|       Tomas Tomecek <ttomecek@redhat.com> | ||||
|       Toshio Kuratomi <toshio@fedoraproject.org> | ||||
|       Troy Dawson <tdawson@fedoraproject.org> | ||||
|       Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user