Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

{lang,lib,tools}[gfbf/2023a] SciPy-bundle v2023.07, hypothesis v6.82.0, pybind11 v2.11.1 #18442

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
easyblock = 'PythonPackage'

name = 'hypothesis'
version = '6.82.0'

homepage = "https://github.com/HypothesisWorks/hypothesis"
description = """Hypothesis is an advanced testing library for Python. It lets you write tests which are parametrized
by a source of examples, and then generates simple and comprehensible examples that make your tests fail. This lets
you find more bugs in your code with less work."""

toolchain = {'name': 'GCCcore', 'version': '12.3.0'}

sources = [SOURCE_TAR_GZ]
checksums = ['ffece8e40a34329e7112f7408f2c45fe587761978fdbc6f4f91bf0d683a7d4d9']

builddependencies = [('binutils', '2.40')]

dependencies = [
('Python', '3.11.3'),
('Python-bundle-PyPI', '2023.06'), # required for attrs, sortedcontainers
]

use_pip = True
download_dep_fail = True
sanity_pip_check = True

moduleclass = 'tools'
26 changes: 26 additions & 0 deletions easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name = 'pybind11'
version = '2.11.1'

homepage = 'https://pybind11.readthedocs.io'
description = """pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa,
mainly to create Python bindings of existing C++ code."""

toolchain = {'name': 'GCCcore', 'version': '12.3.0'}

source_urls = ['https://github.com/pybind/pybind11/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['d475978da0cdc2d43b73f30910786759d593a9d8ee05b1b6846d1eb16c6d2e0c']

builddependencies = [
('binutils', '2.40'),
('CMake', '3.26.3'),
('Eigen', '3.4.0'),
('Python-bundle-PyPI', '2023.06'), # to provide pytest
]
dependencies = [
('Python', '3.11.3'),
]

configopts = "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python"

moduleclass = 'lib'
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
easyblock = 'PythonBundle'

name = 'SciPy-bundle'
version = '2023.07'

homepage = 'https://python.org/'
description = "Bundle of Python packages for scientific software"

toolchain = {'name': 'gfbf', 'version': '2023a'}
toolchainopts = {'pic': True, 'lowopt': True}

builddependencies = [
('hypothesis', '6.82.0'),
('UnZip', '6.0'),
# scipy >= 1.9.0 uses Meson/Ninja
('Meson', '1.1.1'),
('Ninja', '1.11.1'),
('pkgconf', '1.9.5'), # required by scipy
]

dependencies = [
('Python', '3.11.3'),
('Python-bundle-PyPI', '2023.06'),
('pybind11', '2.11.1'), # required by scipy
]

use_pip = True

# order is important!
exts_list = [
('numpy', '1.25.1', {
'patches': ['numpy-1.22.3_disable-broken-override-test.patch'],
'checksums': [
{'numpy-1.25.1.tar.gz': '9a3a9f3a61480cc086117b426a8bd86869c213fc4072e606f01c4e4b66eb92bf'},
{'numpy-1.22.3_disable-broken-override-test.patch':
'9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'},
],
}),
('ply', '3.11', {
'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'],
}),
('gast', '0.5.4', {
'checksums': ['9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97'],
}),
('beniget', '0.4.1', {
'checksums': ['75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c'],
}),
('pythran', '0.13.1', {
'checksums': ['8aad08162f010e5425a7b254dd68d83311b430bb29f9252dce2eff3ba39497dd'],
}),
('versioneer', '0.29', {
'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'],
}),
('scipy', '1.11.1', {
'patches': [
'scipy-1.11.1_disable-tests.patch',
'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch',
],
'checksums': [
{'scipy-1.11.1.tar.gz': 'fb5b492fa035334fd249f0973cc79ecad8b09c604b42a127a677b45a9a3d4289'},
{'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'},
{'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch':
'918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'},
],
'enable_slow_tests': True,
'ignore_test_result': False,
}),
('numexpr', '2.8.4', {
'checksums': ['d5432537418d18691b9115d615d6daa17ee8275baef3edf1afbbf8bc69806147'],
}),
('Bottleneck', '1.3.7', {
'checksums': ['e1467e373ad469da340ed0ff283214d6531cc08bfdca2083361a3aa6470681f8'],
}),
('tzdata', '2023.3', {
'checksums': ['11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a'],
}),
('pandas', '2.0.3', {
'preinstallopts': "export PANDAS_CI=0 && ",
'checksums': ['c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c'],
}),
('mpmath', '1.3.0', {
'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'],
}),
('deap', '1.4.0', {
'checksums': ['ffef2921932a0edbe634fcb6d156189e7a364bf638a2af4ae5d59931a9a4c8cc'],
'modulename': 'deap.base',
}),
]

sanity_pip_check = True

moduleclass = 'lang'
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
disable problematic tests
test_hermitian_modes fails with order of magnitude difference
test_concatenate_int32_overflow fails if not enough memory is available
author: Kenneth Hoste (HPC-UGent) + Simon Branford (University of Birmingham) + Sebastian Achilles (Juelich Supercomputing Centre)
diff -ru scipy-1.11.1.orig/scipy/sparse/linalg/_eigen/arpack/tests/test_arpack.py scipy-1.11.1/scipy/sparse/linalg/_eigen/arpack/tests/test_arpack.py
--- scipy-1.11.1.orig/scipy/sparse/linalg/_eigen/arpack/tests/test_arpack.py 2023-07-28 07:18:00.383649919 +0000
+++ scipy-1.11.1/scipy/sparse/linalg/_eigen/arpack/tests/test_arpack.py 2023-07-28 07:19:08.646148457 +0000
@@ -410,7 +410,7 @@
None, sigma, mattype, None, mode)


-def test_hermitian_modes():
+def disable_test_hermitian_modes():
params = SymmetricParams()
k = 2
symmetric = True
diff -ru scipy-1.11.1.orig/scipy/sparse/tests/test_construct.py scipy-1.11.1/scipy/sparse/tests/test_construct.py --- scipy-1.11.1.orig/scipy/sparse/tests/test_construct.py 2023-07-28 07:18:00.387649832 +0000
+++ scipy-1.11.1/scipy/sparse/tests/test_construct.py 2023-07-29 17:59:26.471992100 +0000
@@ -446,7 +446,7 @@

@pytest.mark.slow
@pytest.mark.xfail_on_32bit("Can't create large array for test")
- def test_concatenate_int32_overflow(self):
+ def disable_test_concatenate_int32_overflow(self):
""" test for indptr overflow when concatenating matrices """
check_free_memory(30000)
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
also xfail test_maxiter_worsening for Python 3.10 on aarch64
see also https://github.com/scipy/scipy/issues/13019 + https://github.com/scipy/scipy/pull/13022
author: Kenneth Hoste (HPC-UGent) + Sebastian Achilles (Juelich Supercomputing Centre)
diff -ru scipy-1.11.1.orig/scipy/sparse/linalg/_isolve/tests/test_iterative.py scipy-1.11.1/scipy/sparse/linalg/_isolve/tests/test_iterative.py
--- scipy-1.11.1.orig/scipy/sparse/linalg/_isolve/tests/test_iterative.py 2023-07-28 07:18:00.387649832 +0000
+++ scipy-1.11.1/scipy/sparse/linalg/_isolve/tests/test_iterative.py 2023-07-29 18:17:22.432356816 +0000
@@ -465,7 +465,7 @@
# which they should detect and halt as necessary.
# cf. gh-9100
if (solver is gmres and platform.machine() == 'aarch64'
- and sys.version_info[1] == 9):
+ and sys.version_info[1] >= 9):
pytest.xfail(reason="gh-13019")
if (solver is lgmres and
platform.machine() not in ['x86_64' 'x86', 'aarch64', 'arm64']):