forked from pool/python-numpy
Accepting request 1194834 from devel:languages:python:numeric
Automatic submission by obs-autosubmit OBS-URL: https://build.opensuse.org/request/show/1194834 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-numpy?expand=0&rev=130
This commit is contained in:
commit
edd60e5d10
@ -1,64 +0,0 @@
|
|||||||
From bf50761dee8f0670542bcdc1fd9bff5cdb0448d4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabian Vogt <fvogt@suse.de>
|
|
||||||
Date: Thu, 28 Mar 2024 14:39:45 +0100
|
|
||||||
Subject: [PATCH] BUG: Fix test_impossible_feature_enable failing without
|
|
||||||
BASELINE_FEAT
|
|
||||||
|
|
||||||
If the build has no baseline features set, the test ended up setting
|
|
||||||
e.g. NPY_ENABLE_CPU_FEATURES="ASIMDHP, None". This actually made the
|
|
||||||
execution succeed, as the warning for decoding "None" overrode the
|
|
||||||
error for the real feature. Fix the error handling there by removing
|
|
||||||
the errorneous "return 0;", add a test for this, and avoid passing
|
|
||||||
"None" by accident.
|
|
||||||
---
|
|
||||||
numpy/core/src/common/npy_cpu_features.c | 1 -
|
|
||||||
numpy/core/tests/test_cpu_features.py | 14 ++++++++++++--
|
|
||||||
2 files changed, 12 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/numpy/core/src/common/npy_cpu_features.c b/numpy/core/src/common/npy_cpu_features.c
|
|
||||||
index bd149f8b4..f4d25cc50 100644
|
|
||||||
--- a/numpy/core/src/common/npy_cpu_features.c
|
|
||||||
+++ b/numpy/core/src/common/npy_cpu_features.c
|
|
||||||
@@ -324,7 +324,6 @@ npy__cpu_check_env(int disable, const char *env) {
|
|
||||||
) < 0) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
- return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define NOTSUPP_BODY \
|
|
||||||
diff --git a/numpy/core/tests/test_cpu_features.py b/numpy/core/tests/test_cpu_features.py
|
|
||||||
index 48ab30a4a..88e4ad185 100644
|
|
||||||
--- a/numpy/core/tests/test_cpu_features.py
|
|
||||||
+++ b/numpy/core/tests/test_cpu_features.py
|
|
||||||
@@ -308,8 +308,8 @@ def test_impossible_feature_enable(self):
|
|
||||||
err_type = "RuntimeError"
|
|
||||||
self._expect_error(msg, err_type)
|
|
||||||
|
|
||||||
- # Ensure that only the bad feature gets reported
|
|
||||||
- feats = f"{bad_feature}, {self.BASELINE_FEAT}"
|
|
||||||
+ # Ensure that it fails even when providing garbage in addition
|
|
||||||
+ feats = f"{bad_feature}, Foobar"
|
|
||||||
self.env['NPY_ENABLE_CPU_FEATURES'] = feats
|
|
||||||
msg = (
|
|
||||||
f"You cannot enable CPU features \\({bad_feature}\\), since they "
|
|
||||||
@@ -317,6 +317,16 @@ def test_impossible_feature_enable(self):
|
|
||||||
)
|
|
||||||
self._expect_error(msg, err_type)
|
|
||||||
|
|
||||||
+ if self.BASELINE_FEAT is not None:
|
|
||||||
+ # Ensure that only the bad feature gets reported
|
|
||||||
+ feats = f"{bad_feature}, {self.BASELINE_FEAT}"
|
|
||||||
+ self.env['NPY_ENABLE_CPU_FEATURES'] = feats
|
|
||||||
+ msg = (
|
|
||||||
+ f"You cannot enable CPU features \\({bad_feature}\\), since "
|
|
||||||
+ "they are not supported by your machine."
|
|
||||||
+ )
|
|
||||||
+ self._expect_error(msg, err_type)
|
|
||||||
+
|
|
||||||
is_linux = sys.platform.startswith('linux')
|
|
||||||
is_cygwin = sys.platform.startswith('cygwin')
|
|
||||||
machine = platform.machine()
|
|
||||||
--
|
|
||||||
2.44.0
|
|
||||||
|
|
@ -1,46 +0,0 @@
|
|||||||
From 79e7c3c3262374de778145946b612135fb7cd581 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabian Vogt <fvogt@suse.de>
|
|
||||||
Date: Thu, 28 Mar 2024 13:15:54 +0100
|
|
||||||
Subject: [PATCH] feature module: Fix handling of multiple conflicts per
|
|
||||||
attribute
|
|
||||||
|
|
||||||
- Attributes without match were never actually added to the list
|
|
||||||
- Only the last conflict actually had an effect, earlier results were
|
|
||||||
discarded
|
|
||||||
---
|
|
||||||
vendored-meson/meson/mesonbuild/modules/features/module.py | 7 ++-----
|
|
||||||
1 file changed, 2 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/vendored-meson/meson/mesonbuild/modules/features/module.py b/vendored-meson/meson/mesonbuild/modules/features/module.py
|
|
||||||
index 0be6af06c..a6f357b3f 100644
|
|
||||||
--- a/vendored-meson/meson/mesonbuild/modules/features/module.py
|
|
||||||
+++ b/vendored-meson/meson/mesonbuild/modules/features/module.py
|
|
||||||
@@ -371,15 +371,12 @@ class Module(NewExtensionModule):
|
|
||||||
values: List[ConflictAttr] = getattr(fet, attr)
|
|
||||||
accumulate_values = test_result[attr] # type: ignore
|
|
||||||
for conflict in values:
|
|
||||||
- if not conflict.match:
|
|
||||||
- accumulate_values.append(conflict.val)
|
|
||||||
- continue
|
|
||||||
conflict_vals: List[str] = []
|
|
||||||
# select the acc items based on the match
|
|
||||||
new_acc: List[str] = []
|
|
||||||
for acc in accumulate_values:
|
|
||||||
# not affected by the match so we keep it
|
|
||||||
- if not conflict.match.match(acc):
|
|
||||||
+ if not (conflict.match and conflict.match.match(acc)):
|
|
||||||
new_acc.append(acc)
|
|
||||||
continue
|
|
||||||
# no filter so we totaly escape it
|
|
||||||
@@ -396,7 +393,7 @@ class Module(NewExtensionModule):
|
|
||||||
continue
|
|
||||||
conflict_vals.append(conflict.mjoin.join(filter_val))
|
|
||||||
new_acc.append(conflict.val + conflict.mjoin.join(conflict_vals))
|
|
||||||
- test_result[attr] = new_acc # type: ignore
|
|
||||||
+ accumulate_values = test_result[attr] = new_acc # type: ignore
|
|
||||||
|
|
||||||
test_args = compiler.has_multi_arguments
|
|
||||||
args = test_result['args']
|
|
||||||
--
|
|
||||||
2.44.0
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
|||||||
From 59694be29a71b17ad1ce58c865a5524c50bfedee Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ralf Gommers <ralf.gommers@gmail.com>
|
|
||||||
Date: Fri, 16 Feb 2024 22:18:43 +0100
|
|
||||||
Subject: [PATCH] TST: fix Cython compile test which invokes `meson`
|
|
||||||
|
|
||||||
Closes gh-24956
|
|
||||||
|
|
||||||
[skip circle]
|
|
||||||
---
|
|
||||||
numpy/core/tests/test_cython.py | 14 ++++++++++++--
|
|
||||||
1 file changed, 12 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
Index: numpy-1.26.4/numpy/core/tests/test_cython.py
|
|
||||||
===================================================================
|
|
||||||
--- numpy-1.26.4.orig/numpy/core/tests/test_cython.py
|
|
||||||
+++ numpy-1.26.4/numpy/core/tests/test_cython.py
|
|
||||||
@@ -37,6 +37,13 @@ def install_temp(tmpdir_factory):
|
|
||||||
srcdir = os.path.join(os.path.dirname(__file__), 'examples', 'cython')
|
|
||||||
build_dir = tmpdir_factory.mktemp("cython_test") / "build"
|
|
||||||
os.makedirs(build_dir, exist_ok=True)
|
|
||||||
+ # Ensure we use the correct Python interpreter even when `meson` is
|
|
||||||
+ # installed in a different Python environment (see gh-24956)
|
|
||||||
+ native_file = str(build_dir / 'interpreter-native-file.ini')
|
|
||||||
+ with open(native_file, 'w') as f:
|
|
||||||
+ f.write("[binaries]\n")
|
|
||||||
+ f.write(f"python = '{sys.executable}'")
|
|
||||||
+
|
|
||||||
try:
|
|
||||||
subprocess.check_call(["meson", "--version"])
|
|
||||||
except FileNotFoundError:
|
|
||||||
@@ -44,17 +51,20 @@ def install_temp(tmpdir_factory):
|
|
||||||
if sys.platform == "win32":
|
|
||||||
subprocess.check_call(["meson", "setup",
|
|
||||||
"--buildtype=release",
|
|
||||||
- "--vsenv", str(srcdir)],
|
|
||||||
+ "--vsenv", "--native-file", native_file,
|
|
||||||
+ str(srcdir)],
|
|
||||||
cwd=build_dir,
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
- subprocess.check_call(["meson", "setup", str(srcdir)],
|
|
||||||
+ subprocess.check_call(["meson", "setup",
|
|
||||||
+ "--native-file", native_file, str(srcdir)],
|
|
||||||
cwd=build_dir
|
|
||||||
)
|
|
||||||
subprocess.check_call(["meson", "compile", "-vv"], cwd=build_dir)
|
|
||||||
|
|
||||||
sys.path.append(str(build_dir))
|
|
||||||
|
|
||||||
+
|
|
||||||
def test_is_timedelta64_object(install_temp):
|
|
||||||
import checks
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010
|
|
||||||
size 15786129
|
|
@ -1,28 +0,0 @@
|
|||||||
From: toddrme2178@gmail.com
|
|
||||||
Date: 2014-09-09 04:45:00 +0000
|
|
||||||
Subject: Remove windows-specific function
|
|
||||||
Upstream: openSUSE Fix
|
|
||||||
References:
|
|
||||||
http://lists.opensuse.org/opensuse-packaging/2014-09/msg00004.html
|
|
||||||
http://lists.opensuse.org/opensuse-packaging/2014-09/msg00005.html
|
|
||||||
|
|
||||||
__declspec(thread) is a windows-specific function that is causing
|
|
||||||
spurious compiler warnings. These warnings can be safely ignored,
|
|
||||||
but are being falsely flagged as serious problems that cause the
|
|
||||||
build to fail. Since this is windows-specific, it can be
|
|
||||||
safely removed.
|
|
||||||
|
|
||||||
|
|
||||||
Index: numpy-1.24.0/numpy/core/setup_common.py
|
|
||||||
===================================================================
|
|
||||||
--- numpy-1.24.0.orig/numpy/core/setup_common.py
|
|
||||||
+++ numpy-1.24.0/numpy/core/setup_common.py
|
|
||||||
@@ -141,7 +141,7 @@ OPTIONAL_FILE_FUNCS = ["ftello", "fseeko
|
|
||||||
OPTIONAL_MISC_FUNCS = ["backtrace", "madvise"]
|
|
||||||
|
|
||||||
# variable attributes tested via "int %s a" % attribute
|
|
||||||
-OPTIONAL_VARIABLE_ATTRIBUTES = ["__thread", "__declspec(thread)"]
|
|
||||||
+OPTIONAL_VARIABLE_ATTRIBUTES = ["__thread"]
|
|
||||||
|
|
||||||
# Subset of OPTIONAL_*_FUNCS which may already have HAVE_* defined by Python.h
|
|
||||||
OPTIONAL_FUNCS_MAYBE = [
|
|
3
numpy-2.0.0.tar.gz
Normal file
3
numpy-2.0.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:cf5d1c9e6837f8af9f92b6bd3e86d513cdc11f60fd62185cc49ec7d1aba34864
|
||||||
|
size 18326228
|
@ -1,7 +1,7 @@
|
|||||||
# These files are required for testing (and testing the package on a live system)
|
# These files are required for testing (and testing the package on a live system)
|
||||||
addFilter("devel-file-in-non-devel-package .*numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c")
|
addFilter("devel-file-in-non-devel-package .*numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c")
|
||||||
addFilter("devel-file-in-non-devel-package .*numpy/core/tests/examples")
|
addFilter("devel-file-in-non-devel-package .*numpy/_core/tests/examples")
|
||||||
addFilter("devel-file-in-non-devel-package .*numpy/core/tests/data")
|
addFilter("devel-file-in-non-devel-package .*numpy/_core/tests/data")
|
||||||
addFilter("hidden-file-or-dir .*numpy/f2py/tests/src/assumed_shape/.f2py_f2cmap")
|
addFilter("hidden-file-or-dir .*numpy/f2py/tests/src/assumed_shape/.f2py_f2cmap")
|
||||||
addFilter("hidden-file-or-dir .*numpy/f2py/tests/src/f2cmap/.f2py_f2cmap")
|
addFilter("hidden-file-or-dir .*numpy/f2py/tests/src/f2cmap/.f2py_f2cmap")
|
||||||
addFilter("zero-length .*numpy/_core/__init__.pyi")
|
addFilter("zero-length .*numpy/core/__init__.pyi")
|
||||||
|
@ -1,3 +1,116 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 13 06:04:49 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- remove meson-python upper limit (per upstream)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 11 08:29:38 UTC 2024 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Fix numpy-config path tests, provide reason for failing meson
|
||||||
|
test
|
||||||
|
- Remove mistaken pycache rpmlint filter
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 28 06:47:52 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Update to 2.0.0, changes include:
|
||||||
|
* Adds support for array parameter declaration in fortran...
|
||||||
|
* Added ``bitwise_count`` UFuncs
|
||||||
|
* Add binding for random pyx files
|
||||||
|
* Use AVX512-FP16 SVML content for float16 umath functions
|
||||||
|
* allow int sequences as shape arguments in numpy.memmap
|
||||||
|
* Add .mT attribute for arrays
|
||||||
|
* Create complex scalars from real and imaginary parts
|
||||||
|
* add copy parameter for api.reshape function
|
||||||
|
* make use of locals() in a comprehension fully compatible...
|
||||||
|
* Add array API standard v2022.12 support to numpy.array_api
|
||||||
|
* Change string to bool conversions to be consistent with...
|
||||||
|
* Allow np.info on non-hashable objects with a dtype
|
||||||
|
* let zeros, empty, and empty_like accept dtype classes
|
||||||
|
* Bump C-ABI to 2 but accept older NumPy if compiled against...
|
||||||
|
* Use high accuracy SVML for double precision umath functions
|
||||||
|
* expose PyUFunc_GiveFloatingpointErrors in the dtype API
|
||||||
|
* PyObject_IsTrue and PyObject_Not error handling in setflags
|
||||||
|
* array2string does not add signs for positive integers.
|
||||||
|
* Vectorize np.partition and np.argpartition using AVX-512
|
||||||
|
* Create helper for conversion to arrays
|
||||||
|
* Add size check for threaded array assignment
|
||||||
|
* Finalize ``fastCopyAndTranpose`` and other old C-funcs/members...
|
||||||
|
* assert_array_less should report max violations instead of...
|
||||||
|
* Introduce tracer for enabled CPU targets on each optimized...
|
||||||
|
* Extend np.add ufunc to work with unicode and byte dtypes
|
||||||
|
* Add find/rfind ufuncs for unicode and byte dtypes
|
||||||
|
* Make ``intp`` ``ssize_t`` and introduce characters nN
|
||||||
|
* Add isdigit/isspace/isdecimal/isnumeric ufuncs for string...
|
||||||
|
* DType API slot for descriptor finalization before array...
|
||||||
|
* ensure passing ``np.dtype`` to itself doesn't crash
|
||||||
|
* Vectorize np.sort and np.partition with AVX2
|
||||||
|
* Change add/isalpha ufuncs to use buffer class & general...
|
||||||
|
* Add strip/lstrip/rstrip ufuncs for unicode and bytes
|
||||||
|
* Add ``matrix_norm``, ``vector_norm``, ``vecdot`` and ``matrix_transpose``
|
||||||
|
* Make ``encoding=None`` the default in loadtxt
|
||||||
|
* Introduce ``copy`` argument for ``np.asarray``
|
||||||
|
* Introduce ``correction`` argument for ``np.var`` and ``np.std``...
|
||||||
|
* Handle ``common`` blocks with ``kind`` specifications from modules
|
||||||
|
* Handle ``iso_c_type`` mappings more consistently
|
||||||
|
* Add ``device`` and ``to_device`` to ``numpy.ndarray``
|
||||||
|
* Shrink MultiIterObject and make ``NPY_MAXARGS`` a runtime...
|
||||||
|
* enable linking of external libraries in the f2py Meson backend
|
||||||
|
* Don't use the _Complex extension in C++ mode
|
||||||
|
* Add fft optional extension submodule to numpy.array_api
|
||||||
|
* make arange ``start`` argument positional-only
|
||||||
|
* Make numpy.array_api more portable
|
||||||
|
* Adjust ``linalg.pinv`` and ``linalg.cholesky`` to Array...
|
||||||
|
* define a gufunc for vecdot (with BLAS support)
|
||||||
|
* Add ``rtol`` to ``matrix_rank`` and ``stable``
|
||||||
|
* adjust nD fft ``s`` param to array API
|
||||||
|
* three string ufunc bugs, one leading to segfault
|
||||||
|
* allow building in cython with Py_LIMITED_API
|
||||||
|
* support axes argument in np.linalg.tensordot
|
||||||
|
* Add replace ufunc to np.strings
|
||||||
|
* change list-of-array to tuple-of-array returns (Numba compat)
|
||||||
|
* Wrap string ufuncs in np.strings to allow default arguments
|
||||||
|
* Allow ``None`` as ``api_version`` in ``__array_namespace__``...
|
||||||
|
* Vectorize argsort and argselect with AVX2
|
||||||
|
* Use large file fallocate on 32 bit linux platforms
|
||||||
|
* Allow strings in logical ufuncs
|
||||||
|
* Allow NumPy int scalars to be divided by out-of-bound Python...
|
||||||
|
* correct irfft with n=1 on larger input
|
||||||
|
* check for overflow when converting a string to an int scalar
|
||||||
|
* Ensure meson updates generated umath doc correctly.
|
||||||
|
* support float and longdouble in FFT using C++ pocketfft...
|
||||||
|
* Make any and all return booleans by default
|
||||||
|
* Finalize future warning move in lstsq default
|
||||||
|
* add a pkg-config file and a ``numpy-config`` script
|
||||||
|
* Finalize future warning for shape=1 descriptor dropping...
|
||||||
|
* Add index/rindex ufuncs for unicode and bytes dtypes
|
||||||
|
* Add rest of unary ufuncs for unicode/bytes dtypes
|
||||||
|
* Create ``PyArray_DescrProto`` for legacy descriptor registration
|
||||||
|
* Make ``descr->f`` only accessible through ``PyDataType_GetArrFuncs``
|
||||||
|
* ensure that FFT routines can deal with integer and bool...
|
||||||
|
* ensure static_string.buf is never NULL for a non-null string
|
||||||
|
* Include broadcasting for ``rtol`` argument in ``matrix_rank``
|
||||||
|
* Add expandtabs ufunc for string & unicode dtypes
|
||||||
|
* implement stringdtype <-> timedelta roundtrip casts
|
||||||
|
* Make descr->f only accessible through ``PyDataType_GetArrFuncs``
|
||||||
|
* Ensure non-array logspace base does not influence dtype...
|
||||||
|
* Require reduce promoters to start with None to match
|
||||||
|
* inherit numerical dtypes from abstract ones.
|
||||||
|
* Infinite Loop in numpy.base_repr
|
||||||
|
* Ensure seed sequences are restored through pickling
|
||||||
|
* use PyArray_SafeCast in array_astype
|
||||||
|
* introduce a notion of "compatible" stringdtype instances...
|
||||||
|
* add support for nan-like null strings in string replace
|
||||||
|
* Make sure that NumPy scalars are supported by can_cast
|
||||||
|
* Disallow string inputs for copy keyword in np.array and...
|
||||||
|
* Adds asanyarray to start of linalg.cross
|
||||||
|
* weighted nanpercentile, nanquantile and multi-dim q
|
||||||
|
- Remove patches, no longer required:
|
||||||
|
* 0001-BUG-Fix-test_impossible_feature_enable-failing-witho.patch
|
||||||
|
* 0001-feature-module-Fix-handling-of-multiple-conflicts-pe.patch
|
||||||
|
* fix-meson-multiple-python-versions.patch
|
||||||
|
* numpy-1.9.0-remove-__declspec.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun May 12 14:46:08 UTC 2024 - Sarah Kriesch <sarah.kriesch@opensuse.org>
|
Sun May 12 14:46:08 UTC 2024 - Sarah Kriesch <sarah.kriesch@opensuse.org>
|
||||||
|
|
||||||
|
@ -17,8 +17,8 @@
|
|||||||
|
|
||||||
|
|
||||||
%global flavor @BUILD_FLAVOR@%{nil}
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
%define ver 1.26.4
|
%define ver 2.0.0
|
||||||
%define _ver 1_26_4
|
%define _ver 2_0_0
|
||||||
%define pname python-numpy
|
%define pname python-numpy
|
||||||
%define plainpython python
|
%define plainpython python
|
||||||
%define hpc_upcase_trans_hyph() %(echo %{**} | tr [a-z] [A-Z] | tr '-' '_')
|
%define hpc_upcase_trans_hyph() %(echo %{**} | tr [a-z] [A-Z] | tr '-' '_')
|
||||||
@ -81,18 +81,10 @@ Source: https://files.pythonhosted.org/packages/source/n/numpy/numpy-%{v
|
|||||||
Source99: python-numpy-rpmlintrc
|
Source99: python-numpy-rpmlintrc
|
||||||
# PATCH-FIX-OPENSUSE numpy-buildfix.patch -- openSUSE-specific build fixes
|
# PATCH-FIX-OPENSUSE numpy-buildfix.patch -- openSUSE-specific build fixes
|
||||||
Patch0: numpy-buildfix.patch
|
Patch0: numpy-buildfix.patch
|
||||||
# PATCH-FIX-OPENSUSE numpy-1.9.0-remove-__declspec.patch -- fix for spurious compiler warnings that cause build failure
|
|
||||||
Patch1: numpy-1.9.0-remove-__declspec.patch
|
|
||||||
# PATCH-FIX-UPSTREAM https://github.com/numpy/numpy/pull/26151
|
|
||||||
Patch2: 0001-BUG-Fix-test_impossible_feature_enable-failing-witho.patch
|
|
||||||
# PATCH-FIX-UPSTREAM https://github.com/numpy/meson/pull/12
|
|
||||||
Patch3: 0001-feature-module-Fix-handling-of-multiple-conflicts-pe.patch
|
|
||||||
# PATCH-FIX-UPSTREAM Based on gh#numpy/numpy#25839
|
|
||||||
Patch4: fix-meson-multiple-python-versions.patch
|
|
||||||
BuildRequires: %{python_module Cython >= 3.0}
|
BuildRequires: %{python_module Cython >= 3.0}
|
||||||
BuildRequires: %{python_module base >= 3.9}
|
BuildRequires: %{python_module base >= 3.9}
|
||||||
BuildRequires: %{python_module devel}
|
BuildRequires: %{python_module devel}
|
||||||
BuildRequires: %{python_module meson-python >= 0.15 with %python-meson-python < 0.16}
|
BuildRequires: %{python_module meson-python >= 0.15}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module pyproject-metadata >= 0.7.1}
|
BuildRequires: %{python_module pyproject-metadata >= 0.7.1}
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
@ -197,14 +189,13 @@ This package contains files for developing applications using numpy.
|
|||||||
%autosetup -p1 -n numpy-%{version}
|
%autosetup -p1 -n numpy-%{version}
|
||||||
# Fix non-executable scripts
|
# Fix non-executable scripts
|
||||||
sed -i '1{/^#!/d}'\
|
sed -i '1{/^#!/d}'\
|
||||||
numpy/{distutils,f2py,ma,matrixlib,testing}/setup.py \
|
|
||||||
numpy/distutils/{conv_template,cpuinfo,from_template,system_info}.py \
|
numpy/distutils/{conv_template,cpuinfo,from_template,system_info}.py \
|
||||||
numpy/f2py/{__init__,cfuncs,diagnose,crackfortran,f2py2e,rules}.py \
|
numpy/f2py/{__init__,cfuncs,diagnose,crackfortran,f2py2e,rules}.py \
|
||||||
numpy/random/_examples/cython/extending{,_distributions}.pyx \
|
numpy/random/_examples/cython/extending{,_distributions}.pyx \
|
||||||
numpy/testing/print_coercion_tables.py
|
numpy/testing/print_coercion_tables.py
|
||||||
chmod -x \
|
chmod -x \
|
||||||
numpy/f2py/{crackfortran,f2py2e,rules}.py \
|
numpy/f2py/{crackfortran,f2py2e,rules}.py \
|
||||||
numpy/testing/{print_coercion_tables,setup}.py
|
numpy/testing/print_coercion_tables.py
|
||||||
|
|
||||||
# force cythonization
|
# force cythonization
|
||||||
rm -f PKG-INFO
|
rm -f PKG-INFO
|
||||||
@ -239,6 +230,7 @@ export CXX=g++-12
|
|||||||
|
|
||||||
%if !%{with hpc}
|
%if !%{with hpc}
|
||||||
%python_clone -a %{buildroot}%{_bindir}/f2py
|
%python_clone -a %{buildroot}%{_bindir}/f2py
|
||||||
|
%python_clone -a %{buildroot}%{_bindir}/numpy-config
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
@ -251,7 +243,7 @@ export CXX=g++-12
|
|||||||
%{python_expand # Don't package testsuite
|
%{python_expand # Don't package testsuite
|
||||||
python_flavor=`cat _current_flavor`
|
python_flavor=`cat _current_flavor`
|
||||||
sitesearch_path=`$python -c "import sysconfig as s; print(s.get_paths(vars={'platbase':'%{hpc_prefix}','base':'%{hpc_prefix}'}).get('platlib'))"`
|
sitesearch_path=`$python -c "import sysconfig as s; print(s.get_paths(vars={'platbase':'%{hpc_prefix}','base':'%{hpc_prefix}'}).get('platlib'))"`
|
||||||
rm -rf %{buildroot}${sitesearch_path}/numpy/{,core,distutils,f2py,fft,lib,linalg,ma,matrixlib,oldnumeric,polynomial,random,testing}/tests
|
rm -rf %{buildroot}${sitesearch_path}/numpy/{,_core,distutils,f2py,fft,lib,linalg,ma,matrixlib,oldnumeric,polynomial,random,testing}/tests
|
||||||
%hpc_write_modules_files
|
%hpc_write_modules_files
|
||||||
#%%Module1.0#####################################################################
|
#%%Module1.0#####################################################################
|
||||||
|
|
||||||
@ -292,11 +284,18 @@ EOF
|
|||||||
%check
|
%check
|
||||||
# https://numpy.org/doc/stable/dev/development_environment.html#running-tests
|
# https://numpy.org/doc/stable/dev/development_environment.html#running-tests
|
||||||
%if %{without hpc}
|
%if %{without hpc}
|
||||||
export PATH="%{buildroot}%{_bindir}:$PATH"
|
|
||||||
|
|
||||||
mkdir -p testing
|
mkdir -p testing
|
||||||
cp pytest.ini testing/
|
cp pytest.ini testing/
|
||||||
pushd testing
|
pushd testing
|
||||||
|
%python_flavored_alternatives
|
||||||
|
%if %{with libalternatives}
|
||||||
|
%{python_expand #
|
||||||
|
for b in f2py numpy-config; do
|
||||||
|
ln -s %{buildroot}%{_bindir}/$b-%{$python_bin_suffix} build/flavorbin/$b
|
||||||
|
done
|
||||||
|
}
|
||||||
|
%endif
|
||||||
|
|
||||||
# flaky tests
|
# flaky tests
|
||||||
test_failok+=" or test_structured_object_indexing"
|
test_failok+=" or test_structured_object_indexing"
|
||||||
@ -351,6 +350,8 @@ test_failok+=" or (test_umath and test_fpclass)"
|
|||||||
test_failok+=" or (test_numeric and TestBoolCmp and test_float)"
|
test_failok+=" or (test_numeric and TestBoolCmp and test_float)"
|
||||||
test_failok+=" or (test_umath and test_fp_noncontiguous)"
|
test_failok+=" or (test_umath and test_fp_noncontiguous)"
|
||||||
%endif
|
%endif
|
||||||
|
# The meson command is always on the primary python and wants to import numpy from there
|
||||||
|
test_failok+=" or test_limited_api"
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
import sys
|
import sys
|
||||||
@ -377,7 +378,7 @@ popd
|
|||||||
%python_libalternatives_reset_alternative f2py
|
%python_libalternatives_reset_alternative f2py
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%python_install_alternative f2py
|
%python_install_alternative f2py numpy-config
|
||||||
|
|
||||||
%postun
|
%postun
|
||||||
%python_uninstall_alternative f2py
|
%python_uninstall_alternative f2py
|
||||||
@ -388,24 +389,29 @@ popd
|
|||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%if %{without hpc}
|
%if %{without hpc}
|
||||||
%python_alternative %{_bindir}/f2py
|
%python_alternative %{_bindir}/f2py
|
||||||
|
%python_alternative %{_bindir}/numpy-config
|
||||||
%{python_sitearch}/numpy/
|
%{python_sitearch}/numpy/
|
||||||
%{python_sitearch}/numpy-%{version}.dist-info
|
%{python_sitearch}/numpy-%{version}.dist-info
|
||||||
%exclude %{python_sitearch}/numpy/core/include/
|
%exclude %{python_sitearch}/numpy/_core/include
|
||||||
|
%exclude %{python_sitearch}/numpy/_core/lib/libnpymath.a
|
||||||
|
%exclude %{python_sitearch}/numpy/_core/lib/pkgconfig/numpy.pc
|
||||||
%exclude %{python_sitearch}/numpy/distutils/mingw/*.c
|
%exclude %{python_sitearch}/numpy/distutils/mingw/*.c
|
||||||
%exclude %{python_sitearch}/numpy/distutils/checks/*.c
|
%exclude %{python_sitearch}/numpy/distutils/checks/*.c
|
||||||
%exclude %{python_sitearch}/numpy/f2py/src/
|
%exclude %{python_sitearch}/numpy/f2py/src/
|
||||||
%exclude %{python_sitearch}/numpy/core/lib/libnpymath.a
|
|
||||||
%exclude %{python_sitearch}/numpy/random/lib/libnpyrandom.a
|
%exclude %{python_sitearch}/numpy/random/lib/libnpyrandom.a
|
||||||
%else
|
%else
|
||||||
%if "%{python_flavor}" == "python3" || "%{python_provides}" == "python3"
|
%if "%{python_flavor}" == "python3" || "%{python_provides}" == "python3"
|
||||||
%{p_bindir}/f2py
|
%{p_bindir}/f2py
|
||||||
|
%{p_bindir}/numpy-config
|
||||||
%else
|
%else
|
||||||
%exclude %{p_bindir}/f2py
|
%exclude %{p_bindir}/f2py
|
||||||
|
%exclude %{p_bindir}/numpy-config
|
||||||
%endif
|
%endif
|
||||||
%{p_python_sitearch}/numpy/
|
%{p_python_sitearch}/numpy/
|
||||||
%{p_python_sitearch}/numpy-%{version}.dist-info
|
%{p_python_sitearch}/numpy-%{version}.dist-info
|
||||||
%exclude %{p_python_sitearch}/numpy/core/include/
|
%exclude %{p_python_sitearch}/numpy/_core/include/
|
||||||
%exclude %{p_python_sitearch}/numpy/core/lib/libnpymath.a
|
%exclude %{p_python_sitearch}/numpy/_core/lib/libnpymath.a
|
||||||
|
%exclude %{p_python_sitearch}/numpy/_core/lib/pkgconfig/numpy.pc
|
||||||
%exclude %{p_python_sitearch}/numpy/random/lib/libnpyrandom.a
|
%exclude %{p_python_sitearch}/numpy/random/lib/libnpyrandom.a
|
||||||
%exclude %{p_python_sitearch}/numpy/distutils/mingw/*.c
|
%exclude %{p_python_sitearch}/numpy/distutils/mingw/*.c
|
||||||
%exclude %{p_python_sitearch}/numpy/distutils/checks/*.c
|
%exclude %{p_python_sitearch}/numpy/distutils/checks/*.c
|
||||||
@ -424,17 +430,19 @@ popd
|
|||||||
%files %{python_files devel}
|
%files %{python_files devel}
|
||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%if %{without hpc}
|
%if %{without hpc}
|
||||||
%{python_sitearch}/numpy/core/include/
|
%{python_sitearch}/numpy/_core/include/
|
||||||
%if 0%{python_version_nodots} < 312
|
%if 0%{python_version_nodots} < 312
|
||||||
%{python_sitearch}/numpy/distutils/mingw/*.c
|
%{python_sitearch}/numpy/distutils/mingw/*.c
|
||||||
%{python_sitearch}/numpy/distutils/checks/*.c
|
%{python_sitearch}/numpy/distutils/checks/*.c
|
||||||
%endif
|
%endif
|
||||||
%{python_sitearch}/numpy/f2py/src/
|
%{python_sitearch}/numpy/f2py/src/
|
||||||
%{python_sitearch}/numpy/core/lib/libnpymath.a
|
%{python_sitearch}/numpy/_core/lib/libnpymath.a
|
||||||
|
%{python_sitearch}/numpy/_core/lib/pkgconfig/numpy.pc
|
||||||
%{python_sitearch}/numpy/random/lib/libnpyrandom.a
|
%{python_sitearch}/numpy/random/lib/libnpyrandom.a
|
||||||
%else
|
%else
|
||||||
%{p_python_sitearch}/numpy/core/include/
|
%{p_python_sitearch}/numpy/_core/include/
|
||||||
%{p_python_sitearch}/numpy/core/lib/libnpymath.a
|
%{p_python_sitearch}/numpy/_core/lib/pkgconfig/numpy.pc
|
||||||
|
%{p_python_sitearch}/numpy/_core/lib/libnpymath.a
|
||||||
%{p_python_sitearch}/numpy/random/lib/libnpyrandom.a
|
%{p_python_sitearch}/numpy/random/lib/libnpyrandom.a
|
||||||
%if 0%{python_version_nodots} < 312
|
%if 0%{python_version_nodots} < 312
|
||||||
%{p_python_sitearch}/numpy/distutils/mingw/*.c
|
%{p_python_sitearch}/numpy/distutils/mingw/*.c
|
||||||
|
Loading…
x
Reference in New Issue
Block a user