Skip to content

{lang}[iimkl/2023b] SciPy-bundle v2023.12#20262

Merged
Crivella merged 9 commits intoeasybuilders:developfrom
Louwrensth:20240402020941_new_pr_SciPy-bundle202312
Dec 17, 2025
Merged

{lang}[iimkl/2023b] SciPy-bundle v2023.12#20262
Crivella merged 9 commits intoeasybuilders:developfrom
Louwrensth:20240402020941_new_pr_SciPy-bundle202312

Conversation

@Louwrensth
Copy link
Copy Markdown
Collaborator

(created using eb --new-pr)

…scipy-1.11.4_disable-test_branch_cut.patch, numpy-1.26.2_fix_selected_kind_for_ifort.patch
# order is important!
exts_list = [
('numpy', '1.26.2', {
'easyblock': 'PythonPackage', # pip install builds numpy v1.26.x via spin/meson/ninja
Copy link
Copy Markdown
Collaborator Author

@Louwrensth Louwrensth Apr 2, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feature isn't really documented

Am I allowed to use it?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not disallowed, though this would mean we e.g. aren't running test step (and all the other good stuff that presumably is done in that easyblock, like picking up fft etc.)

I would like to input from one of the authors of the numpy easyblock. I only recognize @boegel names there.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Specifying a custom easyblock for a particular extension like this is fine in general, but bypassing the custom easyblock for numpy specifically is a bit of a "red flag" (strongly worded).

It seems like that may point to a fix being needed in the numpy easyblock instead?

Copy link
Copy Markdown
Collaborator Author

@Louwrensth Louwrensth Aug 28, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems like that may point to a fix being needed in the numpy easyblock instead?

Yes, that's what I thought first too. One might say that the numpy easyblock need to evolve along with the changes in numpy's build system (v1.26.0).

Similarly to what happened to the SciPy easyblock (pr 2862), when there were changes in SciPy's build system (v1.9).

But I'm in doubt, because the new build system is (advertised as) simpler, then why would we making our easyblock more complex? If the generic pythonpackage works better than the bespoke numpy block, we have an opportunity to be leaner.

I want to do what happened with SciPy block, but I want it to be a oneliner. One test that makes it revert to the generic case, say if LooseVersion(self.version) >= LooseVersion('1.26'). I don't like the idea of adding many if self.use_meson statements in the block, doubling it.

Am I missing something? Those tests that @Micket mentioned? Please let me know what you think.

@Louwrensth
Copy link
Copy Markdown
Collaborator Author

I've added SciPy-bundle-2023.12-gfbf-2023b.eb to complete the pair (they both have the numpy extension using the spin/meson/ninja build via pip install)

I suppose a pair of version 2023.11 could be completed by adding the iimkl build, but it seems tedious to do and I think it might also not desired...

@boegel
Copy link
Copy Markdown
Member

boegel commented Aug 28, 2024

I'm not sure if it's a good idea to introduce another SciPy-bundle version with gfbf/2023b...

For iimkl/2023b, it's worth considering though, especially if SciPy-bundle 2023.11 isn't working out.

@Louwrensth Do you recall what kind of trouble you ran into with SciPy-bundle 2023.11 with iimkl/2023b?
Was it problems with the numpy/scipy test suite, or compilation problems?

@Louwrensth
Copy link
Copy Markdown
Collaborator Author

Louwrensth commented Aug 28, 2024

I'm not sure if it's a good idea to introduce another SciPy-bundle version with gfbf/2023b...

For iimkl/2023b, it's worth considering though, especially if SciPy-bundle 2023.11 isn't working out.

@Louwrensth Do you recall what kind of trouble you ran into with SciPy-bundle 2023.11 with iimkl/2023b? Was it problems with the numpy/scipy test suite, or compilation problems?

Good call. I don't recall, but I found a stash.

I'll:

  1. try 2023.11-iimkl again : add SciPy-bundle-2023.11-iimkl-2023b.eb #21281
    I think it is a no-go...
  2. dump 2023.12-gfbf anyway
    done.
  3. add 2023.12-iimkl only if needed
    this PR?

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
cns2 - Linux Rocky Linux 8.9, x86_64, Intel(R) Xeon(R) CPU E5-2667 v3 @ 3.20GHz (haswell), Python 3.6.8
See https://gist.github.com/boegelbot/1a49b3b77cfca641d8a4b40b549a653a for a full test report.

@WouterVanAssche
Copy link
Copy Markdown
Contributor

I had to install SciPy-bundle/2023.12 with intel compilers as a dependecy for GDAL/3.9.0-intel-2023b. This easyconfig worked on both Genius (skylake/cascadelake) and wICE (icelake/sapphirerapids).

@Louwrensth
Copy link
Copy Markdown
Collaborator Author

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@Louwrensth: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=20262 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_20262 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 6523

Test results coming soon (I hope)...

Details

- notification for comment with ID 2921970214 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
FAILED
Build succeeded for 0 out of 1 (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/64f344b43f327bec90558d47a7023a81 for a full test report.

attempt to fix build error:
npy_cdouble definition is not compatible with C99 complex definition !
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 16, 2025

Updated software SciPy-bundle-2023.12-iimkl-2023b.eb

Diff against SciPy-bundle-2025.07-lfbf-2025b.eb

easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-lfbf-2025b.eb

diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-lfbf-2025b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
index 70d3ee30ff..5a8373ea09 100644
--- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-lfbf-2025b.eb
+++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
@@ -1,108 +1,119 @@
 easyblock = 'PythonBundle'
 
 name = 'SciPy-bundle'
-version = '2025.07'
+version = '2023.12'
 
 homepage = 'https://python.org/'
 description = "Bundle of Python packages for scientific software"
 
-toolchain = {'name': 'lfbf', 'version': '2025b'}
-toolchainopts = {'pic': True, 'lowopt': True}
+toolchain = {'name': 'iimkl', 'version': '2023b'}
+toolchainopts = {
+    'pic': True, 'lowopt': True, 'strict': True,
+    'oneapi': True, 'optarch': False,  # prevents -xHost
+}
 
 builddependencies = [
-    ('hypothesis', '6.136.6'),
+    ('hypothesis', '6.90.0'),
     ('UnZip', '6.0'),
     # scipy >= 1.9.0 uses Meson/Ninja
-    ('Meson', '1.8.2'),
-    ('meson-python', '0.18.0'),
-    ('Ninja', '1.13.0'),
-    ('pkgconf', '2.4.3'),  # required by scipy
-    ('Cython', '3.1.2'),  # required by numpy and scipy
-    ('pybind11', '3.0.0'),  # required by scipy
-    ('spin', '0.14'),  # required for testing numpy
+    ('Meson', '1.2.3'),
+    ('meson-python', '0.15.0'),
+    ('Ninja', '1.11.1'),
+    ('pkgconf', '2.0.3'),   # required by scipy
 ]
 
 dependencies = [
-    ('Python', '3.13.5'),
-    ('Python-bundle-PyPI', '2025.07'),
+    ('Python', '3.11.5'),
+    ('Python-bundle-PyPI', '2023.10'),
+    ('pybind11', '2.11.1'),  # required by scipy
 ]
 
+
 # order is important!
 exts_list = [
-    ('numpy', '2.3.2', {
+    ('numpy', '1.26.2', {
+        'easyblock': 'PythonPackage',  # pip install builds numpy v1.26.x via spin/meson/ninja
         'patches': [
-            'numpy-1.22.3_disable-broken-override-test.patch',
-            'numpy-2.3.2_fix-llvm-tests.patch',
-            'numpy-2.3.2_fix-selected-real-kind-for-flang.patch',
+            'numpy-1.25.1_disable_fortran_callback_test.patch',
+            'numpy-1.25.1_disable-broken-test_long_long_map.patch',
+            'numpy-1.26.2_fix_selected_kind_for_ifort.patch',
+            'numpy-1.25.1_disable-broken-fortran-docstring-test.patch',
+            'numpy-1.25.1_fix-test_features.patch',
         ],
         'checksums': [
-            {'numpy-2.3.2.tar.gz': 'e0486a11ec30cdecb53f184d496d1c6a20786c81e55e41640270130056f8ee48'},
-            {'numpy-1.22.3_disable-broken-override-test.patch':
-             '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'},
-            {'numpy-2.3.2_fix-llvm-tests.patch': 'dac856f521e2b5175f0edb09ee65ba9246af2a7d52d36dfb2dbb1b516b8cfaff'},
-            {'numpy-2.3.2_fix-selected-real-kind-for-flang.patch':
-             '0e947fc7730bc87d10279c4393db9b1585e7f1ae6932c989f37c1080479d7cb7'},
+            {'numpy-1.26.2.tar.gz': 'f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea'},
+            {'numpy-1.25.1_disable_fortran_callback_test.patch':
+             '3c02bd9973b7082fde9f9d18edfeb05798226ccb5731a56f5677269200c345cf'},
+            {'numpy-1.25.1_disable-broken-test_long_long_map.patch':
+             'fa0fb0a16c4f1339a974c1c84b79df21dc9bfdc14e3e68f6aebaf5e30bad3fe9'},
+            {'numpy-1.26.2_fix_selected_kind_for_ifort.patch':
+             '3622bacbe4063373cc0b1c0aa0ffe3d30dfe132f6a763b15b45cc6387cbd51d7'},
+            {'numpy-1.25.1_disable-broken-fortran-docstring-test.patch':
+             '8a4d36e3b3a9c9bf43df6e5214f3883234a069b80c5c1027a7c84bd5cb133457'},
+            {'numpy-1.25.1_fix-test_features.patch':
+             '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'},
         ],
     }),
     ('ply', '3.11', {
         'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'],
     }),
-    ('gast', '0.6.0', {
-        'checksums': ['88fc5300d32c7ac6ca7b515310862f71e6fdf2c029bbec7c66c0f5dd47b6b1fb'],
+    ('gast', '0.5.4', {
+        'checksums': ['9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97'],
     }),
-    ('beniget', '0.4.2.post1', {
-        'checksums': ['a0258537e65e7e14ec33a86802f865a667f949bb6c73646d55e42f7c45a052ae'],
+    ('beniget', '0.4.1', {
+        'checksums': ['75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c'],
     }),
-    ('pythran', '0.18.0', {
-        'checksums': ['5c003e8cbedf6dbb68c2869c49fc110ce8b5e8982993078a4a819f1dadc4fc6a'],
+    ('pythran', '0.14.0', {
+        'checksums': ['42f3473946205964844eff7f750e2541afb2006d53475d708f5ff2d048db89bd'],
     }),
     ('versioneer', '0.29', {
         'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'],
     }),
-    ('scipy', '1.16.1', {
+    ('scipy', '1.12.0', {
         'enable_slow_tests': True,
         'ignore_test_result': False,
         'patches': [
             'scipy-1.11.1_disable-tests.patch',
-            'scipy-1.16.0_skip-tests-broken-grace.patch',
-            'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch',
-            'scipy-1.16.0_remove-float16-differentiate-test.patch',
-            'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch',
+            'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch',
+            'scipy-1.11.4_disable-test_branch_cut.patch',  # intel might need -assume=minus0
+            'scipy-1.12.0_disable-tests-iimkl.patch',
         ],
         'checksums': [
-            {'scipy-1.16.1.tar.gz': '44c76f9e8b6e8e488a586190ab38016e4ed2f8a038af7cd3defa903c0a2238b3'},
+            {'scipy-1.12.0.tar.gz': '4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3'},
             {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'},
-            {'scipy-1.16.0_skip-tests-broken-grace.patch':
-             '33885518a572f843a0edeb7a58aa938202aae70267f6de1ce60acef97f393126'},
-            {'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch':
-             'a72d794b95dc437c03b323f86392b264c7ecfdbfa19e3bc01fba8d5d3ab2f21a'},
-            {'scipy-1.16.0_remove-float16-differentiate-test.patch':
-             'f857fc1e941c196285f2e871e803cf463fc59c040dd2955deda1dd277d4b00db'},
-            {'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch':
-             '1eb58b162d04cbf957979897966bfcf318f05a2bdbb61f0b47c0b3881910b354'},
+            {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch':
+             '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'},
+            {'scipy-1.11.4_disable-test_branch_cut.patch':
+             '3433d284e4074ee8a5b10bfc65c729214bc75670c36d8b7a983bb5ccddc5cf61'},
+            {'scipy-1.12.0_disable-tests-iimkl.patch':
+             'edf575be62b77bb8984e87e75f69a0799d719fc8b5c801c79e4f9592e1c8203f'},
         ],
+        'runtest': ' && '.join((
+            'unset LDFLAGS',
+            'cd ..',  # avoid running the test suite from the build dir which will cause import related failures
+            "python -c 'import sys; import numpy; sys.exit(not numpy.test(verbose=2))'",
+        )),
+        'testinstall': True,
     }),
-    ('numexpr', '2.11.0', {
-        # workaround for: ValueError: invalid pyproject.toml config: project.license
-        'preinstallopts': "sed -i '/^license =/d' pyproject.toml && ",
-        'checksums': ['75b2c01a4eda2e7c357bc67a3f5c3dd76506c15b5fd4dc42845ef2e182181bad'],
+    ('numexpr', '2.8.7', {
+        'checksums': ['596eeb3bbfebc912f4b6eaaf842b61ba722cebdb8bc42dfefa657d3a74953849'],
     }),
-    ('bottleneck', '1.5.0', {
-        'checksums': ['c860242cf20e69d5aab2ec3c5d6c8c2a15f19e4b25b28b8fca2c2a12cefae9d8'],
+    ('Bottleneck', '1.3.7', {
+        'checksums': ['e1467e373ad469da340ed0ff283214d6531cc08bfdca2083361a3aa6470681f8'],
     }),
-    ('tzdata', '2025.2', {
-        'checksums': ['b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9'],
+    ('tzdata', '2023.3', {
+        'checksums': ['11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a'],
     }),
-    ('pandas', '2.3.1', {
+    ('pandas', '2.1.3', {
         'preinstallopts': "export PANDAS_CI=0 && ",
-        'checksums': ['0a95b9ac964fe83ce317827f80304d37388ea77616b1425f0ae41c9d2d0d7bb2'],
+        'checksums': ['22929f84bca106921917eb73c1521317ddd0a4c71b395bcf767a106e3494209f'],
     }),
     ('mpmath', '1.3.0', {
         'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'],
     }),
-    ('deap', '1.4.3', {
+    ('deap', '1.4.1', {
         'modulename': 'deap.base',
-        'checksums': ['7c97088fb05835bdc255bec475cb0e778de2b43e44cbefbf2bcd655aeec865fd'],
+        'checksums': ['cc01de9892dfa7d1bc9803dab28892fead177f0182c81db47360a240ead778ff'],
     }),
 ]
 
Diff against SciPy-bundle-2025.07-iimkl-2025b.eb

easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-iimkl-2025b.eb

diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-iimkl-2025b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
index c8b268cfbd..5a8373ea09 100644
--- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-iimkl-2025b.eb
+++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
@@ -1,111 +1,119 @@
 easyblock = 'PythonBundle'
 
 name = 'SciPy-bundle'
-version = '2025.07'
+version = '2023.12'
 
 homepage = 'https://python.org/'
 description = "Bundle of Python packages for scientific software"
 
-toolchain = {'name': 'iimkl', 'version': '2025b'}
-toolchainopts = {'pic': True, 'lowopt': True, 'strict': True,
-                 # '-fveclib=none' to avoid 'undefined symbol: pow8_h' in numpy
-                 # see https://github.com/numpy/numpy/issues/27111
-                 # '-mllvm -disable-hir-backward-temp-dependencies-resolver' to avoid AVX2 failure in numpy build
-                 # see https://github.com/numpy/numpy/issues/29679
-                 'extra_cflags': '-fveclib=none -mllvm -disable-hir-backward-temp-dependencies-resolver'}
+toolchain = {'name': 'iimkl', 'version': '2023b'}
+toolchainopts = {
+    'pic': True, 'lowopt': True, 'strict': True,
+    'oneapi': True, 'optarch': False,  # prevents -xHost
+}
 
 builddependencies = [
-    ('hypothesis', '6.136.6'),
+    ('hypothesis', '6.90.0'),
     ('UnZip', '6.0'),
     # scipy >= 1.9.0 uses Meson/Ninja
-    ('Meson', '1.8.2'),
-    ('meson-python', '0.18.0'),
-    ('Ninja', '1.13.0'),
-    ('pkgconf', '2.4.3'),  # required by scipy
-    ('Cython', '3.1.2'),  # required by numpy and scipy
-    ('pybind11', '3.0.0'),  # required by scipy
-    ('spin', '0.14'),  # required for testing numpy
+    ('Meson', '1.2.3'),
+    ('meson-python', '0.15.0'),
+    ('Ninja', '1.11.1'),
+    ('pkgconf', '2.0.3'),   # required by scipy
 ]
 
 dependencies = [
-    ('Python', '3.13.5'),
-    ('Python-bundle-PyPI', '2025.07'),
+    ('Python', '3.11.5'),
+    ('Python-bundle-PyPI', '2023.10'),
+    ('pybind11', '2.11.1'),  # required by scipy
 ]
 
+
 # order is important!
 exts_list = [
-    ('numpy', '2.3.2', {
-        'patches': ['numpy-1.22.3_disable-broken-override-test.patch',
-                    'numpy-2.3.2_fix_selected_kind_for_ifort.patch'],
+    ('numpy', '1.26.2', {
+        'easyblock': 'PythonPackage',  # pip install builds numpy v1.26.x via spin/meson/ninja
+        'patches': [
+            'numpy-1.25.1_disable_fortran_callback_test.patch',
+            'numpy-1.25.1_disable-broken-test_long_long_map.patch',
+            'numpy-1.26.2_fix_selected_kind_for_ifort.patch',
+            'numpy-1.25.1_disable-broken-fortran-docstring-test.patch',
+            'numpy-1.25.1_fix-test_features.patch',
+        ],
         'checksums': [
-            {'numpy-2.3.2.tar.gz': 'e0486a11ec30cdecb53f184d496d1c6a20786c81e55e41640270130056f8ee48'},
-            {'numpy-1.22.3_disable-broken-override-test.patch':
-             '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'},
-            {'numpy-2.3.2_fix_selected_kind_for_ifort.patch':
-             '765cd11029acb97729d072171b3c9919bb0b09e6e0ea5134fd3d779de23f1a03'},
+            {'numpy-1.26.2.tar.gz': 'f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea'},
+            {'numpy-1.25.1_disable_fortran_callback_test.patch':
+             '3c02bd9973b7082fde9f9d18edfeb05798226ccb5731a56f5677269200c345cf'},
+            {'numpy-1.25.1_disable-broken-test_long_long_map.patch':
+             'fa0fb0a16c4f1339a974c1c84b79df21dc9bfdc14e3e68f6aebaf5e30bad3fe9'},
+            {'numpy-1.26.2_fix_selected_kind_for_ifort.patch':
+             '3622bacbe4063373cc0b1c0aa0ffe3d30dfe132f6a763b15b45cc6387cbd51d7'},
+            {'numpy-1.25.1_disable-broken-fortran-docstring-test.patch':
+             '8a4d36e3b3a9c9bf43df6e5214f3883234a069b80c5c1027a7c84bd5cb133457'},
+            {'numpy-1.25.1_fix-test_features.patch':
+             '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'},
         ],
     }),
     ('ply', '3.11', {
         'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'],
     }),
-    ('gast', '0.6.0', {
-        'checksums': ['88fc5300d32c7ac6ca7b515310862f71e6fdf2c029bbec7c66c0f5dd47b6b1fb'],
+    ('gast', '0.5.4', {
+        'checksums': ['9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97'],
     }),
-    ('beniget', '0.4.2.post1', {
-        'checksums': ['a0258537e65e7e14ec33a86802f865a667f949bb6c73646d55e42f7c45a052ae'],
+    ('beniget', '0.4.1', {
+        'checksums': ['75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c'],
     }),
-    ('pythran', '0.18.0', {
-        'checksums': ['5c003e8cbedf6dbb68c2869c49fc110ce8b5e8982993078a4a819f1dadc4fc6a'],
+    ('pythran', '0.14.0', {
+        'checksums': ['42f3473946205964844eff7f750e2541afb2006d53475d708f5ff2d048db89bd'],
     }),
     ('versioneer', '0.29', {
         'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'],
     }),
-    ('scipy', '1.16.1', {
+    ('scipy', '1.12.0', {
         'enable_slow_tests': True,
         'ignore_test_result': False,
         'patches': [
             'scipy-1.11.1_disable-tests.patch',
-            'scipy-1.16.0_skip-tests-broken-grace.patch',
-            'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch',
-            'scipy-1.16.0_remove-float16-differentiate-test.patch',
-            'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch',
-            'scipy-1.16.1_relax-tolerance.patch',
+            'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch',
+            'scipy-1.11.4_disable-test_branch_cut.patch',  # intel might need -assume=minus0
+            'scipy-1.12.0_disable-tests-iimkl.patch',
         ],
         'checksums': [
-            {'scipy-1.16.1.tar.gz': '44c76f9e8b6e8e488a586190ab38016e4ed2f8a038af7cd3defa903c0a2238b3'},
+            {'scipy-1.12.0.tar.gz': '4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3'},
             {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'},
-            {'scipy-1.16.0_skip-tests-broken-grace.patch':
-             '33885518a572f843a0edeb7a58aa938202aae70267f6de1ce60acef97f393126'},
-            {'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch':
-             'a72d794b95dc437c03b323f86392b264c7ecfdbfa19e3bc01fba8d5d3ab2f21a'},
-            {'scipy-1.16.0_remove-float16-differentiate-test.patch':
-             'f857fc1e941c196285f2e871e803cf463fc59c040dd2955deda1dd277d4b00db'},
-            {'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch':
-             '1eb58b162d04cbf957979897966bfcf318f05a2bdbb61f0b47c0b3881910b354'},
-            {'scipy-1.16.1_relax-tolerance.patch': 'd78b91cd896951cea39f194a64e9f88bb696f2cb805915b34c9021dd186e3de3'},
+            {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch':
+             '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'},
+            {'scipy-1.11.4_disable-test_branch_cut.patch':
+             '3433d284e4074ee8a5b10bfc65c729214bc75670c36d8b7a983bb5ccddc5cf61'},
+            {'scipy-1.12.0_disable-tests-iimkl.patch':
+             'edf575be62b77bb8984e87e75f69a0799d719fc8b5c801c79e4f9592e1c8203f'},
         ],
+        'runtest': ' && '.join((
+            'unset LDFLAGS',
+            'cd ..',  # avoid running the test suite from the build dir which will cause import related failures
+            "python -c 'import sys; import numpy; sys.exit(not numpy.test(verbose=2))'",
+        )),
+        'testinstall': True,
     }),
-    ('numexpr', '2.11.0', {
-        # workaround for: ValueError: invalid pyproject.toml config: project.license
-        'preinstallopts': "sed -i '/^license =/d' pyproject.toml && ",
-        'checksums': ['75b2c01a4eda2e7c357bc67a3f5c3dd76506c15b5fd4dc42845ef2e182181bad'],
+    ('numexpr', '2.8.7', {
+        'checksums': ['596eeb3bbfebc912f4b6eaaf842b61ba722cebdb8bc42dfefa657d3a74953849'],
     }),
-    ('bottleneck', '1.5.0', {
-        'checksums': ['c860242cf20e69d5aab2ec3c5d6c8c2a15f19e4b25b28b8fca2c2a12cefae9d8'],
+    ('Bottleneck', '1.3.7', {
+        'checksums': ['e1467e373ad469da340ed0ff283214d6531cc08bfdca2083361a3aa6470681f8'],
     }),
-    ('tzdata', '2025.2', {
-        'checksums': ['b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9'],
+    ('tzdata', '2023.3', {
+        'checksums': ['11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a'],
     }),
-    ('pandas', '2.3.1', {
+    ('pandas', '2.1.3', {
         'preinstallopts': "export PANDAS_CI=0 && ",
-        'checksums': ['0a95b9ac964fe83ce317827f80304d37388ea77616b1425f0ae41c9d2d0d7bb2'],
+        'checksums': ['22929f84bca106921917eb73c1521317ddd0a4c71b395bcf767a106e3494209f'],
     }),
     ('mpmath', '1.3.0', {
         'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'],
     }),
-    ('deap', '1.4.3', {
+    ('deap', '1.4.1', {
         'modulename': 'deap.base',
-        'checksums': ['7c97088fb05835bdc255bec475cb0e778de2b43e44cbefbf2bcd655aeec865fd'],
+        'checksums': ['cc01de9892dfa7d1bc9803dab28892fead177f0182c81db47360a240ead778ff'],
     }),
 ]
 
Diff against SciPy-bundle-2025.07-gfbf-2025b.eb

easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-gfbf-2025b.eb

diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-gfbf-2025b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
index 1393e4562b..5a8373ea09 100644
--- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2025.07-gfbf-2025b.eb
+++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.12-iimkl-2023b.eb
@@ -1,101 +1,119 @@
 easyblock = 'PythonBundle'
 
 name = 'SciPy-bundle'
-version = '2025.07'
+version = '2023.12'
 
 homepage = 'https://python.org/'
 description = "Bundle of Python packages for scientific software"
 
-toolchain = {'name': 'gfbf', 'version': '2025b'}
-toolchainopts = {'pic': True, 'lowopt': True}
+toolchain = {'name': 'iimkl', 'version': '2023b'}
+toolchainopts = {
+    'pic': True, 'lowopt': True, 'strict': True,
+    'oneapi': True, 'optarch': False,  # prevents -xHost
+}
 
 builddependencies = [
-    ('hypothesis', '6.136.6'),
+    ('hypothesis', '6.90.0'),
     ('UnZip', '6.0'),
     # scipy >= 1.9.0 uses Meson/Ninja
-    ('Meson', '1.8.2'),
-    ('meson-python', '0.18.0'),
-    ('Ninja', '1.13.0'),
-    ('pkgconf', '2.4.3'),  # required by scipy
-    ('Cython', '3.1.2'),  # required by numpy and scipy
-    ('pybind11', '3.0.0'),  # required by scipy
-    ('spin', '0.14'),  # required for testing numpy
+    ('Meson', '1.2.3'),
+    ('meson-python', '0.15.0'),
+    ('Ninja', '1.11.1'),
+    ('pkgconf', '2.0.3'),   # required by scipy
 ]
 
 dependencies = [
-    ('Python', '3.13.5'),
-    ('Python-bundle-PyPI', '2025.07'),
+    ('Python', '3.11.5'),
+    ('Python-bundle-PyPI', '2023.10'),
+    ('pybind11', '2.11.1'),  # required by scipy
 ]
 
+
 # order is important!
 exts_list = [
-    ('numpy', '2.3.2', {
-        'patches': ['numpy-1.22.3_disable-broken-override-test.patch'],
+    ('numpy', '1.26.2', {
+        'easyblock': 'PythonPackage',  # pip install builds numpy v1.26.x via spin/meson/ninja
+        'patches': [
+            'numpy-1.25.1_disable_fortran_callback_test.patch',
+            'numpy-1.25.1_disable-broken-test_long_long_map.patch',
+            'numpy-1.26.2_fix_selected_kind_for_ifort.patch',
+            'numpy-1.25.1_disable-broken-fortran-docstring-test.patch',
+            'numpy-1.25.1_fix-test_features.patch',
+        ],
         'checksums': [
-            {'numpy-2.3.2.tar.gz': 'e0486a11ec30cdecb53f184d496d1c6a20786c81e55e41640270130056f8ee48'},
-            {'numpy-1.22.3_disable-broken-override-test.patch':
-             '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'},
+            {'numpy-1.26.2.tar.gz': 'f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea'},
+            {'numpy-1.25.1_disable_fortran_callback_test.patch':
+             '3c02bd9973b7082fde9f9d18edfeb05798226ccb5731a56f5677269200c345cf'},
+            {'numpy-1.25.1_disable-broken-test_long_long_map.patch':
+             'fa0fb0a16c4f1339a974c1c84b79df21dc9bfdc14e3e68f6aebaf5e30bad3fe9'},
+            {'numpy-1.26.2_fix_selected_kind_for_ifort.patch':
+             '3622bacbe4063373cc0b1c0aa0ffe3d30dfe132f6a763b15b45cc6387cbd51d7'},
+            {'numpy-1.25.1_disable-broken-fortran-docstring-test.patch':
+             '8a4d36e3b3a9c9bf43df6e5214f3883234a069b80c5c1027a7c84bd5cb133457'},
+            {'numpy-1.25.1_fix-test_features.patch':
+             '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'},
         ],
     }),
     ('ply', '3.11', {
         'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'],
     }),
-    ('gast', '0.6.0', {
-        'checksums': ['88fc5300d32c7ac6ca7b515310862f71e6fdf2c029bbec7c66c0f5dd47b6b1fb'],
+    ('gast', '0.5.4', {
+        'checksums': ['9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97'],
     }),
-    ('beniget', '0.4.2.post1', {
-        'checksums': ['a0258537e65e7e14ec33a86802f865a667f949bb6c73646d55e42f7c45a052ae'],
+    ('beniget', '0.4.1', {
+        'checksums': ['75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c'],
     }),
-    ('pythran', '0.18.0', {
-        'checksums': ['5c003e8cbedf6dbb68c2869c49fc110ce8b5e8982993078a4a819f1dadc4fc6a'],
+    ('pythran', '0.14.0', {
+        'checksums': ['42f3473946205964844eff7f750e2541afb2006d53475d708f5ff2d048db89bd'],
     }),
     ('versioneer', '0.29', {
         'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'],
     }),
-    ('scipy', '1.16.1', {
+    ('scipy', '1.12.0', {
         'enable_slow_tests': True,
         'ignore_test_result': False,
         'patches': [
             'scipy-1.11.1_disable-tests.patch',
-            'scipy-1.16.0_skip-tests-broken-grace.patch',
-            'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch',
-            'scipy-1.16.0_remove-float16-differentiate-test.patch',
-            'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch',
+            'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch',
+            'scipy-1.11.4_disable-test_branch_cut.patch',  # intel might need -assume=minus0
+            'scipy-1.12.0_disable-tests-iimkl.patch',
         ],
         'checksums': [
-            {'scipy-1.16.1.tar.gz': '44c76f9e8b6e8e488a586190ab38016e4ed2f8a038af7cd3defa903c0a2238b3'},
+            {'scipy-1.12.0.tar.gz': '4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3'},
             {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'},
-            {'scipy-1.16.0_skip-tests-broken-grace.patch':
-             '33885518a572f843a0edeb7a58aa938202aae70267f6de1ce60acef97f393126'},
-            {'scipy-1.16.0_relax-tests-broken-neoverse-v1.patch':
-             'a72d794b95dc437c03b323f86392b264c7ecfdbfa19e3bc01fba8d5d3ab2f21a'},
-            {'scipy-1.16.0_remove-float16-differentiate-test.patch':
-             'f857fc1e941c196285f2e871e803cf463fc59c040dd2955deda1dd277d4b00db'},
-            {'scipy-1.16.1_bump-orth-memory-efficiency-tolerance.patch':
-             '1eb58b162d04cbf957979897966bfcf318f05a2bdbb61f0b47c0b3881910b354'},
+            {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch':
+             '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'},
+            {'scipy-1.11.4_disable-test_branch_cut.patch':
+             '3433d284e4074ee8a5b10bfc65c729214bc75670c36d8b7a983bb5ccddc5cf61'},
+            {'scipy-1.12.0_disable-tests-iimkl.patch':
+             'edf575be62b77bb8984e87e75f69a0799d719fc8b5c801c79e4f9592e1c8203f'},
         ],
+        'runtest': ' && '.join((
+            'unset LDFLAGS',
+            'cd ..',  # avoid running the test suite from the build dir which will cause import related failures
+            "python -c 'import sys; import numpy; sys.exit(not numpy.test(verbose=2))'",
+        )),
+        'testinstall': True,
     }),
-    ('numexpr', '2.11.0', {
-        # workaround for: ValueError: invalid pyproject.toml config: project.license
-        'preinstallopts': "sed -i '/^license =/d' pyproject.toml && ",
-        'checksums': ['75b2c01a4eda2e7c357bc67a3f5c3dd76506c15b5fd4dc42845ef2e182181bad'],
+    ('numexpr', '2.8.7', {
+        'checksums': ['596eeb3bbfebc912f4b6eaaf842b61ba722cebdb8bc42dfefa657d3a74953849'],
     }),
-    ('bottleneck', '1.5.0', {
-        'checksums': ['c860242cf20e69d5aab2ec3c5d6c8c2a15f19e4b25b28b8fca2c2a12cefae9d8'],
+    ('Bottleneck', '1.3.7', {
+        'checksums': ['e1467e373ad469da340ed0ff283214d6531cc08bfdca2083361a3aa6470681f8'],
     }),
-    ('tzdata', '2025.2', {
-        'checksums': ['b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9'],
+    ('tzdata', '2023.3', {
+        'checksums': ['11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a'],
     }),
-    ('pandas', '2.3.1', {
+    ('pandas', '2.1.3', {
         'preinstallopts': "export PANDAS_CI=0 && ",
-        'checksums': ['0a95b9ac964fe83ce317827f80304d37388ea77616b1425f0ae41c9d2d0d7bb2'],
+        'checksums': ['22929f84bca106921917eb73c1521317ddd0a4c71b395bcf767a106e3494209f'],
     }),
     ('mpmath', '1.3.0', {
         'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'],
     }),
-    ('deap', '1.4.3', {
+    ('deap', '1.4.1', {
         'modulename': 'deap.base',
-        'checksums': ['7c97088fb05835bdc255bec475cb0e778de2b43e44cbefbf2bcd655aeec865fd'],
+        'checksums': ['cc01de9892dfa7d1bc9803dab28892fead177f0182c81db47360a240ead778ff'],
     }),
 ]
 

@Louwrensth
Copy link
Copy Markdown
Collaborator Author

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@Louwrensth: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=20262 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_20262 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 6699

Test results coming soon (I hope)...

Details

- notification for comment with ID 2974809137 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
FAILED
Build succeeded for 0 out of 1 (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/8d852ddecbd8daf4dfb554cd325cf4a0 for a full test report.

@boegelbot
Copy link
Copy Markdown
Collaborator

@boegel: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=20262 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_20262 --ntasks="16" ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 8101

Test results coming soon (I hope)...

Details

- notification for comment with ID 3352800936 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.6, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/dd3a16ffff78f4e7c811a32e7bc3c8ee for a full test report.

@verdurin
Copy link
Copy Markdown
Member

verdurin commented Oct 2, 2025

Test report by @verdurin
SUCCESS
Build succeeded for 2 out of 2 (1 easyconfigs in total)
easybuild-el8.cloud.in.bmrc.ox.ac.uk - Linux Rocky Linux 8.10 (Green Obsidian), x86_64, Intel Xeon Processor (Skylake, IBRS), Python 3.11.13
See https://gist.github.com/verdurin/93629a17714ad51fe6f34b67bb4343dc for a full test report.

@Crivella
Copy link
Copy Markdown
Contributor

Test report by @Crivella
SUCCESS
Build succeeded for 1 out of 1 (total: 24 mins 52 secs) (1 easyconfigs in total)
crivella-desktop - Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish), x86_64, 13th Gen Intel(R) Core(TM) i9-13900K (skylake), Python 3.11.14
See https://gist.github.com/Crivella/ecc4289e4779d8496d812c9c7c1020b3 for a full test report.

@Crivella
Copy link
Copy Markdown
Contributor

Comparison between

SciPy-bundle/2023.11-gfbf-2023b

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.11-gfbf-2023b/lib/python3.11/site-packages/numpy$ for lib in `find . -name "*.so"`; do libtree -p $lib | grep -i blas -A20 -B20; done
./core/_multiarray_umath.cpython-311-x86_64-linux-gnu.so 
└── /home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/lib64/libflexiblas.so.3 [rpath]
    ├── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libquadmath.so.0 [rpath]
    └── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libgfortran.so.5 [rpath]
./linalg/_umath_linalg.cpython-311-x86_64-linux-gnu.so 
└── /home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/lib64/libflexiblas.so.3 [rpath]
    ├── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libquadmath.so.0 [rpath]
    └── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libgfortran.so.5 [rpath]
./linalg/lapack_lite.cpython-311-x86_64-linux-gnu.so 
└── /home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/lib64/libflexiblas.so.3 [rpath]
    ├── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libquadmath.so.0 [rpath]
    └── /home/crivella/.local/easybuild/software/GCCcore/13.2.0/lib64/../lib64/libgfortran.so.5 [rpath]

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.11-gfbf-2023b/lib/python3.11/site-packages/numpy$ for lib in `find . -name "*.so"`; do libtree -p $lib | grep -i fft -A20 -B20; done
./fft/_pocketfft_internal.cpython-311-x86_64-linux-gnu.so 

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.11-gfbf-2023b/lib/python3.11/site-packages/numpy$ cd ..
crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.11-gfbf-2023b/lib/python3.11/site-packages$ python -c "import numpy; print(numpy.__version__)"
1.26.2

SciPy-bundle/2023.12-iimkl-2023b

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.12-iimkl-2023b/lib/python3.11/site-packages/numpy$ for lib in `find . -name "*.so"`; do libtree -p $lib | grep -i mkl -A20 -B20; done
./core/_multiarray_umath.cpython-311-x86_64-linux-gnu.so 
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_intel_lp64.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_sequential.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_core.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath]
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libimf.so [rpath]
│   └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
└── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libirng.so [rpath]
    └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
./linalg/_umath_linalg.cpython-311-x86_64-linux-gnu.so 
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_intel_lp64.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_sequential.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_core.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libirng.so [rpath]
│   └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
└── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libimf.so [rpath]
    └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
./linalg/lapack_lite.cpython-311-x86_64-linux-gnu.so 
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_intel_lp64.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_sequential.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/intel64/libmkl_core.so.2 [rpath]
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libimf.so [rpath]
│   └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libirng.so [rpath]
│   └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
└── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath]

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.12-iimkl-2023b/lib/python3.11/site-packages/numpy$ for lib in `find . -name "*.so"`; do libtree -p $lib | grep -i fft -A20 -B20; done
./fft/_pocketfft_internal.cpython-311-x86_64-linux-gnu.so 
├── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libimf.so [rpath]
│   └── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath of 1]
└── /home/crivella/.local/easybuild/software/intel-compilers/2023.2.1/compiler/2023.2.1/linux/compiler/lib/intel64/libintlc.so.5 [rpath]

crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.12-iimkl-2023b/lib/python3.11/site-packages/numpy$ cd ..
crivella@crivella-desktop:~/.local/easybuild/software/SciPy-bundle/2023.12-iimkl-2023b/lib/python3.11/site-packages$ python -c "import numpy; print(numpy.__version__)"
1.26.2

I would say neither the foss nor the intel version are linking to external FFT libraries, and they both seems to be using FlexiBLAS/imkl from EB correctly so this is looking ok to me

@Crivella
Copy link
Copy Markdown
Contributor

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@Crivella: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=20262 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_20262 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 9201

Test results coming soon (I hope)...

Details

- notification for comment with ID 3660665273 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@Crivella
Copy link
Copy Markdown
Contributor

Test report by @Crivella
SUCCESS
Build succeeded for 1 out of 1 (total: 24 mins 46 secs) (1 easyconfigs in total)
crivella-desktop - Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish), x86_64, 13th Gen Intel(R) Core(TM) i9-13900K (skylake), Python 3.11.14
See https://gist.github.com/Crivella/ad1dbee8ac262d6baf8c59264a68c969 for a full test report.

@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Dec 16, 2025

Also from running numpy.show_config()

foss/2023b

crivella@crivella-desktop:~$ module load SciPy-bundle/2023.11-gfbf-2023b 
crivella@crivella-desktop:~$ python
Python 3.11.5 (main, May 20 2025, 16:13:27) [GCC 13.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.show_config()
/home/crivella/.local/easybuild/software/SciPy-bundle/2023.11-gfbf-2023b/lib/python3.11/site-packages/numpy/__config__.py:149: UserWarning: Install `pyyaml` for better output
  warnings.warn("Install `pyyaml` for better output", stacklevel=1)
{
  "Compilers": {
    "c": {
      "name": "gcc",
      "linker": "ld.bfd",
      "version": "13.2.0",
      "commands": "gcc"
    },
    "cython": {
      "name": "cython",
      "linker": "cython",
      "version": "3.0.10",
      "commands": "cython"
    },
    "c++": {
      "name": "gcc",
      "linker": "ld.bfd",
      "version": "13.2.0",
      "commands": "g++"
    }
  },
  "Machine Information": {
    "host": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    },
    "build": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    }
  },
  "Build Dependencies": {
    "blas": {
      "name": "flexiblas",
      "found": true,
      "version": "3.3.1",
      "detection method": "pkgconfig",
      "include directory": "/home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/include/flexiblas",
      "lib directory": "/home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/lib",
      "openblas configuration": "unknown",
      "pc file directory": "/home/crivella/.local/easybuild/software/FlexiBLAS/3.3.1-GCC-13.2.0/lib/pkgconfig"
    },
    "lapack": {
      "name": "dep123759415861008",
      "found": true,
      "version": "1.26.2",
      "detection method": "internal",
      "include directory": "unknown",
      "lib directory": "unknown",
      "openblas configuration": "unknown",
      "pc file directory": "unknown"
    }
  },
  "Python Information": {
    "path": "/home/crivella/.local/easybuild/software/Python/3.11.5-GCCcore-13.2.0/bin/python",
    "version": "3.11"
  },
  "SIMD Extensions": {
    "baseline": [
      "SSE",
      "SSE2",
      "SSE3",
      "SSSE3",
      "SSE41",
      "POPCNT",
      "SSE42",
      "AVX",
      "F16C",
      "FMA3",
      "AVX2"
    ],
    "not found": [
      "AVX512F",
      "AVX512CD",
      "AVX512_KNL",
      "AVX512_KNM",
      "AVX512_SKX",
      "AVX512_CLX",
      "AVX512_CNL",
      "AVX512_ICL",
      "AVX512_SPR"
    ]
  }
}

intel/2023b

crivella@crivella-desktop:~$ module load SciPy-bundle/2023.12-iimkl-2023b 
crivella@crivella-desktop:~$ python
Python 3.11.5 (main, May 20 2025, 16:13:27) [GCC 13.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.show_config()
/home/crivella/.local/easybuild/software/SciPy-bundle/2023.12-iimkl-2023b/lib/python3.11/site-packages/numpy/__config__.py:149: UserWarning: Install `pyyaml` for better output
  warnings.warn("Install `pyyaml` for better output", stacklevel=1)
{
  "Compilers": {
    "c": {
      "name": "intel-llvm",
      "linker": "ld.bfd",
      "version": "2023.2.0",
      "commands": "icx"
    },
    "cython": {
      "name": "cython",
      "linker": "cython",
      "version": "3.0.4",
      "commands": "cython"
    },
    "c++": {
      "name": "intel-llvm",
      "linker": "ld.bfd",
      "version": "2023.2.0",
      "commands": "icpx"
    }
  },
  "Machine Information": {
    "host": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    },
    "build": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    }
  },
  "Build Dependencies": {
    "blas": {
      "name": "mkl-dynamic-lp64-seq",
      "found": true,
      "version": "2023.2",
      "detection method": "pkgconfig",
      "include directory": "/home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/latest/lib/pkgconfig/../../include",
      "lib directory": "/home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/latest/lib/pkgconfig/../../lib/intel64",
      "openblas configuration": "unknown",
      "pc file directory": "/home/crivella/.local/easybuild/software/imkl/2023.2.0/mkl/2023.2.0/lib/pkgconfig"
    },
    "lapack": {
      "name": "dep139326530066064",
      "found": true,
      "version": "1.26.2",
      "detection method": "internal",
      "include directory": "unknown",
      "lib directory": "unknown",
      "openblas configuration": "unknown",
      "pc file directory": "unknown"
    }
  },
  "Python Information": {
    "path": "/home/crivella/.local/easybuild/software/Python/3.11.5-GCCcore-13.2.0/bin/python",
    "version": "3.11"
  },
  "SIMD Extensions": {
    "baseline": [
      "SSE",
      "SSE2",
      "SSE3"
    ],
    "found": [
      "SSSE3",
      "SSE41",
      "POPCNT",
      "SSE42",
      "AVX",
      "F16C",
      "FMA3",
      "AVX2"
    ],
    "not found": [
      "AVX512F",
      "AVX512CD",
      "AVX512_KNL",
      "AVX512_SKX",
      "AVX512_CLX",
      "AVX512_CNL",
      "AVX512_ICL"
    ]
  }
}

intel/2025b

moducrivella@crivella-desktop:~$ module load SciPy-bundle/2025.07-iimkl-2025b 
crivella@crivella-desktop:~$ python
Python 3.13.5 (main, Jul  9 2025, 13:41:52) [GCC 14.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.show_config()
/home/crivella/.local/easybuild/software/SciPy-bundle/2025.07-iimkl-2025b/lib/python3.13/site-packages/numpy/__config__.py:155: UserWarning: Install `pyyaml` for better output
  warnings.warn("Install `pyyaml` for better output", stacklevel=1)
{
  "Compilers": {
    "c": {
      "name": "intel-llvm",
      "linker": "ld.bfd",
      "version": "2025.2.0",
      "commands": "icx",
      "args": "-O1, -xHost, -fp-speculation=strict, -fp-model, strict, -fPIC, -fveclib=none, -mllvm, -disable-hir-backward-temp-dependencies-resolver, -I/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/include, -I/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/include",
      "linker args": "-L/home/crivella/.local/easybuild/software/Python-bundle-PyPI/2025.07-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Python-bundle-PyPI/2025.07-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/spin/0.14-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/spin/0.14-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/lib64, -L/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/lib, -L/home/crivella/.local/easybuild/software/Cython/3.1.2-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Cython/3.1.2-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/meson-python/0.18.0-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/meson-python/0.18.0-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/Meson/1.8.2-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Meson/1.8.2-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/hypothesis/6.136.6-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/hypothesis/6.136.6-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/intel64, -O1, -xHost, -fp-speculation=strict, -fp-model, strict, -fPIC, -fveclib=none, -mllvm, -disable-hir-backward-temp-dependencies-resolver, -I/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/include, -I/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/include"
    },
    "cython": {
      "name": "cython",
      "linker": "cython",
      "version": "3.1.2",
      "commands": "cython"
    },
    "c++": {
      "name": "intel-llvm",
      "linker": "ld.bfd",
      "version": "2025.2.0",
      "commands": "icpx",
      "args": "-O1, -xHost, -fp-speculation=strict, -fp-model, strict, -fPIC, -I/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/include, -I/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/include",
      "linker args": "-L/home/crivella/.local/easybuild/software/Python-bundle-PyPI/2025.07-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Python-bundle-PyPI/2025.07-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/spin/0.14-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/spin/0.14-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/lib64, -L/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/lib, -L/home/crivella/.local/easybuild/software/Cython/3.1.2-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Cython/3.1.2-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/meson-python/0.18.0-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/meson-python/0.18.0-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/Meson/1.8.2-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/Meson/1.8.2-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/hypothesis/6.136.6-GCCcore-14.3.0/lib64, -L/home/crivella/.local/easybuild/software/hypothesis/6.136.6-GCCcore-14.3.0/lib, -L/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/intel64, -O1, -xHost, -fp-speculation=strict, -fp-model, strict, -fPIC, -I/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/pybind11/3.0.0-intel-compilers-2025.2.0/include, -I/home/crivella/.local/easybuild/software/pkgconf/2.4.3-GCCcore-14.3.0/include, -I/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/include"
    }
  },
  "Machine Information": {
    "host": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    },
    "build": {
      "cpu": "x86_64",
      "family": "x86_64",
      "endian": "little",
      "system": "linux"
    }
  },
  "Build Dependencies": {
    "blas": {
      "name": "mkl-dynamic-lp64-seq",
      "found": true,
      "version": "2025.2",
      "detection method": "pkgconfig",
      "include directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig/../../include",
      "lib directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig/../../lib",
      "openblas configuration": "unknown",
      "pc file directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig"
    },
    "lapack": {
      "name": "mkl-dynamic-lp64-seq",
      "found": true,
      "version": "2025.2",
      "detection method": "pkgconfig",
      "include directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig/../../include",
      "lib directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig/../../lib",
      "openblas configuration": "unknown",
      "pc file directory": "/home/crivella/.local/easybuild/software/imkl/2025.2.0/mkl/2025.2/lib/pkgconfig"
    }
  },
  "Python Information": {
    "path": "/home/crivella/.local/easybuild/software/Python/3.13.5-GCCcore-14.3.0/bin/python",
    "version": "3.13"
  },
  "SIMD Extensions": {
    "baseline": [
      "SSE",
      "SSE2",
      "SSE3"
    ],
    "found": [
      "SSSE3",
      "SSE41",
      "POPCNT",
      "SSE42",
      "AVX",
      "F16C",
      "FMA3",
      "AVX2"
    ],
    "not found": [
      "AVX512F",
      "AVX512CD",
      "AVX512_SKX",
      "AVX512_CLX",
      "AVX512_CNL",
      "AVX512_ICL"
    ]
  }
}

I guess we might have to see if it is possible also to pick up the LAPACK correctly.
To be noted even the current EBlock sanity check would not catch this

https://github.com/easybuilders/easybuild-easyblocks/blob/fa75dbee4e530f99783c97953a6ee0f58c93616a/easybuild/easyblocks/n/numpy.py#L411-L432

EDIT: Indeed even the foss/2023b version is using internal lapacks so i think this is fine. The newer EB is picking up the correct BLAS/LAPACK fro both foss and intel toolchains

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (total: 40 mins 54 secs) (1 easyconfigs in total)
jsczen3c3.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.6, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/49e1131334d1629c0588de649a34898c for a full test report.

@boegel
Copy link
Copy Markdown
Member

boegel commented Dec 17, 2025

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (total: 27 mins 55 secs) (1 easyconfigs in total)
node4245.shinx.os - Linux RHEL 9.6, x86_64, AMD EPYC 9654 96-Core Processor (zen4), Python 3.9.21
See https://gist.github.com/boegel/8cb429c285ea0a581d5536b5afa5b358 for a full test report.

Copy link
Copy Markdown
Contributor

@Crivella Crivella left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Crivella
Copy link
Copy Markdown
Contributor

Going in, thanks @Louwrensth!

@Crivella Crivella merged commit f7e8384 into easybuilders:develop Dec 17, 2025
8 checks passed
easyblock = 'PythonBundle'

name = 'SciPy-bundle'
version = '2023.12'
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI, this version is being changed to 2023.11 in #24931, to align it with SciPy-bundle-2023.11-gfbf-2023b.eb...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.