Skip to content

Conversation

@SIB-software
Copy link
Contributor

(created using eb --new-pr)

@github-actions
Copy link

Updated software Arrow-22.0.0-gfbf-2025a.eb

Diff against Arrow-17.0.0-gfbf-2024a.eb

easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb

diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
index 0d835de8ab..e1bd3905fc 100644
--- a/easybuild/easyconfigs/a/Arrow/Arrow-17.0.0-gfbf-2024a.eb
+++ b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
@@ -1,41 +1,41 @@
 easyblock = 'CMakeMake'
 
 name = 'Arrow'
-version = '17.0.0'
+version = '22.0.0'
 
 homepage = 'https://arrow.apache.org'
 description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform
  for in-memory data."""
 
-toolchain = {'name': 'gfbf', 'version': '2024a'}
+toolchain = {'name': 'gfbf', 'version': '2025a'}
 
 source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s']
 sources = ['apache-arrow-%(version)s.tar.gz']
-checksums = ['9d280d8042e7cf526f8c28d170d93bfab65e50f94569f6a790982a878d8d898d']
+checksums = ['131250cd24dec0cddde04e2ad8c9e2bc43edc5e84203a81cf71cf1a33a6e7e0f']
 
 builddependencies = [
-    ('CMake', '3.29.3'),
-    ('Cython', '3.0.10'),
-    ('Autotools', '20231222'),
+    ('CMake', '3.31.3'),
+    ('Cython', '3.1.1'),
+    ('Autotools', '20240712'),
     ('flex', '2.6.4'),
     ('Bison', '3.8.2'),
-    ('pkgconf', '2.2.0'),
+    ('pkgconf', '2.3.0'),
 ]
 
 # Arrow strongly prefers included jemalloc, so not including it as a dependency
 dependencies = [
-    ('Python', '3.12.3'),
-    ('Python-bundle-PyPI', '2024.06'),
-    ('SciPy-bundle', '2024.05'),  # for numpy
-    ('Boost', '1.85.0'),
-    ('lz4', '1.9.4'),
+    ('Python', '3.13.1'),
+    ('Python-bundle-PyPI', '2025.04'),
+    ('SciPy-bundle', '2025.06'),  # for numpy
+    ('Boost', '1.88.0'),
+    ('lz4', '1.10.0'),
     ('zlib', '1.3.1'),
     ('bzip2', '1.0.8'),
     ('zstd', '1.5.6'),
-    ('snappy', '1.2.1'),
-    ('RapidJSON', '1.1.0-20240815'),
+    ('snappy', '1.2.2'),
+    ('RapidJSON', '1.1.0-20250205'),
     ('RE2', '2024-07-02'),
-    ('utf8proc', '2.9.0'),
+    ('utf8proc', '2.10.0'),
 ]
 
 start_dir = 'cpp'
Diff against Arrow-16.1.0-gfbf-2023b.eb

easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb

diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
index 70e89d76ec..e1bd3905fc 100644
--- a/easybuild/easyconfigs/a/Arrow/Arrow-16.1.0-gfbf-2023b.eb
+++ b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
@@ -1,39 +1,41 @@
 easyblock = 'CMakeMake'
 
 name = 'Arrow'
-version = '16.1.0'
+version = '22.0.0'
 
 homepage = 'https://arrow.apache.org'
 description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform
  for in-memory data."""
 
-toolchain = {'name': 'gfbf', 'version': '2023b'}
+toolchain = {'name': 'gfbf', 'version': '2025a'}
 
 source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s']
 sources = ['apache-arrow-%(version)s.tar.gz']
-checksums = ['c9e60c7e87e59383d21b20dc874b17153729ee153264af6d21654b7dff2c60d7']
+checksums = ['131250cd24dec0cddde04e2ad8c9e2bc43edc5e84203a81cf71cf1a33a6e7e0f']
 
 builddependencies = [
-    ('CMake', '3.27.6'),
-    ('Autotools', '20220317'),
+    ('CMake', '3.31.3'),
+    ('Cython', '3.1.1'),
+    ('Autotools', '20240712'),
     ('flex', '2.6.4'),
     ('Bison', '3.8.2'),
-    ('pkgconf', '2.0.3'),
+    ('pkgconf', '2.3.0'),
 ]
 
 # Arrow strongly prefers included jemalloc, so not including it as a dependency
 dependencies = [
-    ('Python', '3.11.5'),
-    ('SciPy-bundle', '2023.11'),  # for numpy
-    ('Boost', '1.83.0'),
-    ('lz4', '1.9.4'),
-    ('zlib', '1.2.13'),
+    ('Python', '3.13.1'),
+    ('Python-bundle-PyPI', '2025.04'),
+    ('SciPy-bundle', '2025.06'),  # for numpy
+    ('Boost', '1.88.0'),
+    ('lz4', '1.10.0'),
+    ('zlib', '1.3.1'),
     ('bzip2', '1.0.8'),
-    ('zstd', '1.5.5'),
-    ('snappy', '1.1.10'),
-    ('RapidJSON', '1.1.0-20240409'),
-    ('RE2', '2024-03-01'),
-    ('utf8proc', '2.9.0'),
+    ('zstd', '1.5.6'),
+    ('snappy', '1.2.2'),
+    ('RapidJSON', '1.1.0-20250205'),
+    ('RE2', '2024-07-02'),
+    ('utf8proc', '2.10.0'),
 ]
 
 start_dir = 'cpp'
@@ -42,11 +44,12 @@ start_dir = 'cpp'
 preconfigopts = "unset CONDA_PREFIX; "
 
 # see https://arrow.apache.org/docs/developers/python.html
-configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_ORC=ON "
+configopts = "-DARROW_DATASET=on -DARROW_PARQUET=ON -DARROW_ORC=ON "
+configopts += "-DARROW_PYTHON=on "
 configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_LZ4=ON -DARROW_WITH_SNAPPY=ON "
 configopts += "-DARROW_WITH_ZSTD=ON -DZSTD_ROOT=$EBROOTZSTD "
+configopts += "-DARROW_MIMALLOC=ON -DARROW_JEMALLOC=OFF "
 
-# install Python bindings
 exts_defaultclass = 'PythonPackage'
 exts_list = [
     ('pyarrow', version, {
Diff against Arrow-8.0.0-foss-2021b.eb

easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2021b.eb

diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2021b.eb b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
index d9755704b1..e1bd3905fc 100644
--- a/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2021b.eb
+++ b/easybuild/easyconfigs/a/Arrow/Arrow-22.0.0-gfbf-2025a.eb
@@ -1,44 +1,41 @@
 easyblock = 'CMakeMake'
 
 name = 'Arrow'
-version = '8.0.0'
+version = '22.0.0'
 
 homepage = 'https://arrow.apache.org'
 description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform
  for in-memory data."""
 
-toolchain = {'name': 'foss', 'version': '2021b'}
+toolchain = {'name': 'gfbf', 'version': '2025a'}
 
 source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s']
 sources = ['apache-arrow-%(version)s.tar.gz']
-patches = ['Arrow-8.0.0_fix-BaseExtensionType-arrow-ext-methods.patch']
-checksums = [
-    {'apache-arrow-8.0.0.tar.gz': 'ad9a05705117c989c116bae9ac70492fe015050e1b80fb0e38fde4b5d863aaa3'},
-    {'Arrow-8.0.0_fix-BaseExtensionType-arrow-ext-methods.patch':
-     '2db8a4c655e2a3f0ec7dac05e13bda6c2843203568873e736d2f1b8321b0dfc7'},
-]
+checksums = ['131250cd24dec0cddde04e2ad8c9e2bc43edc5e84203a81cf71cf1a33a6e7e0f']
 
 builddependencies = [
-    ('CMake', '3.21.1'),
-    ('Autotools', '20210726'),
+    ('CMake', '3.31.3'),
+    ('Cython', '3.1.1'),
+    ('Autotools', '20240712'),
     ('flex', '2.6.4'),
-    ('Bison', '3.7.6'),
-    ('pkgconf', '1.8.0'),
+    ('Bison', '3.8.2'),
+    ('pkgconf', '2.3.0'),
 ]
 
 # Arrow strongly prefers included jemalloc, so not including it as a dependency
 dependencies = [
-    ('Python', '3.9.6'),
-    ('SciPy-bundle', '2021.10'),  # for numpy
-    ('Boost', '1.77.0'),
-    ('lz4', '1.9.3'),
-    ('zlib', '1.2.11'),
+    ('Python', '3.13.1'),
+    ('Python-bundle-PyPI', '2025.04'),
+    ('SciPy-bundle', '2025.06'),  # for numpy
+    ('Boost', '1.88.0'),
+    ('lz4', '1.10.0'),
+    ('zlib', '1.3.1'),
     ('bzip2', '1.0.8'),
-    ('zstd', '1.5.0'),
-    ('snappy', '1.1.9'),
-    ('RapidJSON', '1.1.0'),
-    ('RE2', '2022-02-01'),
-    ('utf8proc', '2.6.1'),
+    ('zstd', '1.5.6'),
+    ('snappy', '1.2.2'),
+    ('RapidJSON', '1.1.0-20250205'),
+    ('RE2', '2024-07-02'),
+    ('utf8proc', '2.10.0'),
 ]
 
 start_dir = 'cpp'
@@ -47,31 +44,38 @@ start_dir = 'cpp'
 preconfigopts = "unset CONDA_PREFIX; "
 
 # see https://arrow.apache.org/docs/developers/python.html
-configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON "
-configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON "
-configopts += "-DZSTD_ROOT=$EBROOTZSTD -DPython3_ROOT_DIR=$EBROOTPYTHON "
+configopts = "-DARROW_DATASET=on -DARROW_PARQUET=ON -DARROW_ORC=ON "
+configopts += "-DARROW_PYTHON=on "
+configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_LZ4=ON -DARROW_WITH_SNAPPY=ON "
+configopts += "-DARROW_WITH_ZSTD=ON -DZSTD_ROOT=$EBROOTZSTD "
+configopts += "-DARROW_MIMALLOC=ON -DARROW_JEMALLOC=OFF "
 
-# also install Python bindings
-local_install_pyarrow_cmds = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && "
-local_install_pyarrow_cmds += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
-local_install_pyarrow_cmds += "cd %(builddir)s/*arrow-%(version)s/python && export XDG_CACHE_HOME=$TMPDIR && "
-local_install_pyarrow_cmds += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && "
-local_install_pyarrow_cmds += "Python3_ROOT_DIR=$EBROOTPYTHON "
-local_install_pyarrow_cmds += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 "
-local_install_pyarrow_cmds += "python -m pip install --prefix %(installdir)s --no-build-isolation ."
-postinstallcmds = [local_install_pyarrow_cmds]
+exts_defaultclass = 'PythonPackage'
+exts_list = [
+    ('pyarrow', version, {
+        'preinstallopts': (
+            "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH"
+            " && export Arrow_DIR=%(installdir)s && export ArrowDataset_DIR=%(installdir)s"
+            " && export ArrowAcero_DIR=%(installdir)s && export Parquet_DIR=%(installdir)s"
+            " && sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml"
+            ' && PYARROW_CMAKE_OPTIONS="-DZSTD_ROOT=$EBROOTZSTD"'
+            " PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 PYARROW_WITH_ORC=1 "
+        ),
+        'nosource': True,
+        'start_dir': '../python',
+    }),
+]
 
 sanity_check_paths = {
     'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT,
-              'lib/libarrow_python.a', 'lib/libarrow_python.%s' % SHLIB_EXT],
-    'dirs': ['include/arrow', 'lib/cmake/arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'],
+              'lib/python%%(pyshortver)s/site-packages/pyarrow/libarrow_python.%s' % SHLIB_EXT],
+    'dirs': ['include/arrow', 'lib/cmake/Arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'],
 }
 
 sanity_check_commands = [
-    "python -c 'import pyarrow'",
-    "python -c 'import pyarrow.dataset'",
-    "python -c 'import pyarrow.parquet'",
-    "python -c 'from pyarrow.lib import BaseExtensionType; print(BaseExtensionType.__arrow_ext_class__)'",
+    "python -s -c 'import pyarrow.dataset'",
+    "python -s -c 'import pyarrow.parquet'",
+    "python -s -c 'import pyarrow.orc'",
 ]
 
 moduleclass = 'data'

@Thyre Thyre added the 2025a issues & PRs related to 2025a common toolchains label Oct 30, 2025
@Micket Micket added this to the next release (5.2.0?) milestone Oct 31, 2025
Copy link
Contributor

@Micket Micket left a comment

Choose a reason for hiding this comment

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

lgtm

@Micket
Copy link
Contributor

Micket commented Oct 31, 2025

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Collaborator

@Micket: 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=24422 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24422 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

- notification for comment with ID 3470818878 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
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/1abc646dfdc8d8996b8304393f19e408 for a full test report.

@Thyre
Copy link
Collaborator

Thyre commented Oct 31, 2025

Failure in googlebenchmark, see #24423


Test report by @Thyre
FAILED
Build succeeded for 3 out of 6 (1 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver: Linuxversion6.17.5-arch1-1(linux@archlinux)(gcc(GCC)15.2.120250813,GNUld(GNUBinutils)2.45.0)#1SMPPREEMPT_DYNAMICThu,23Oct202518:49:03+0000), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: Linuxversion6.17.5-arch1-1(linux@archlinux)(gcc(GCC)15.2.120250813,GNUld(GNUBinutils)2.45.0)#1SMPPREEMPT_DYNAMICThu,23Oct202518:49:03+0000), Python 3.13.7
See https://gist.github.com/Thyre/0c52374cc5a91e7ac8a4d58e4276b1c3 for a full test report.

@Thyre
Copy link
Collaborator

Thyre commented Oct 31, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 3 out of 3 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.95.05, Python 3.9.21
See https://gist.github.com/Thyre/5fd4c97947b9bc734dc22ab524b82fbf for a full test report.

@Thyre
Copy link
Collaborator

Thyre commented Oct 31, 2025

Test report by @Thyre
FAILED
Build succeeded for 1 out of 2 (1 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver: Linuxversion6.17.5-arch1-1(linux@archlinux)(gcc(GCC)15.2.120250813,GNUld(GNUBinutils)2.45.0)#1SMPPREEMPT_DYNAMICThu,23Oct202518:49:03+0000), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: Linuxversion6.17.5-arch1-1(linux@archlinux)(gcc(GCC)15.2.120250813,GNUld(GNUBinutils)2.45.0)#1SMPPREEMPT_DYNAMICThu,23Oct202518:49:03+0000), Python 3.13.7
See https://gist.github.com/Thyre/16c91c0ada81a6a6d75d41d574ba7915 for a full test report.


cd /data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-build/c++/src && /usr/bin/ccache /tmp/eb-i4crro3t/tmpjzylarn8/rpath_wrappers/gxx_wrapper/g++ -DARROW_HAVE_RUNTIME_AVX2 -DARROW_HAVE_RUNTIME_AVX512 -DARROW_HAVE_RUNTIME_BMI2 -DARROW_HAVE_RUNTIME_SSE4_2 -DARROW_HAVE_SSE4_2 -DARROW_WITH_TIMING_TESTS -DENABLE_METRICS=0 -DPROTOBUF_USE_DLLS -I/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-build/c++/include -I/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/include -I/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-build/c++/src -I/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/src -isystem /data/EasyBuild-develop/software/Abseil/20250512.1-GCCcore-14.2.0/include -isystem /data/EasyBuild-develop/software/zlib/1.3.1-GCCcore-14.2.0/include -isystem /data/EasyBuild-develop/software/snappy/1.2.2-GCCcore-14.2.0/include -isystem /data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-build/c++/libs/thirdparty/lz4_ep-install/include -O2 -ftree-vectorize -march=native -fno-math-errno -fdiagnostics-color=always -std=c++17 -Wall -Wextra -std=c++17 -Wall -Wextra -O3 -DNDEBUG -std=c++17 -fPIC -MD -MT _deps/orc-build/c++/src/CMakeFiles/orc.dir/io/InputStream.cc.o -MF CMakeFiles/orc.dir/io/InputStream.cc.o.d -o CMakeFiles/orc.dir/io/InputStream.cc.o -c /data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/src/io/InputStream.cc
In file included from /data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/src/io/InputStream.cc:19:
/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/src/io/InputStream.hh:75:31: error: ‘int64’ in namespace ‘google::protobuf’ does not name a type
   75 |     virtual google::protobuf::int64 ByteCount() const override;
      |                               ^~~~~
/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj/_deps/orc-src/c++/src/io/InputStream.cc:115:21: error: ‘int64’ in namespace ‘google::protobuf’ does not name a type
  115 |   google::protobuf::int64 SeekableArrayInputStream::ByteCount() const {
      |                     ^~~~~
make[2]: *** [_deps/orc-build/c++/src/CMakeFiles/orc.dir/build.make:89: _deps/orc-build/c++/src/CMakeFiles/orc.dir/io/InputStream.cc.o] Error 1
make[2]: Leaving directory '/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj'
make[1]: *** [CMakeFiles/Makefile2:1393: _deps/orc-build/c++/src/CMakeFiles/orc.dir/all] Error 2
make[1]: Leaving directory '/data/EasyBuild-develop/build/Arrow/22.0.0/gfbf-2025a/easybuild_obj'
make: *** [Makefile:169: all] Error 2

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

Labels

2025a issues & PRs related to 2025a common toolchains update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants