Conference call notes 20250618 - easybuilders/easybuild GitHub Wiki

(back to Conference calls)

Notes on the 272nd EasyBuild conference call, Wednesday 18 June 2025 (08:00 UTC / 10:00 CEST)

Attendees

List of attendees (20):

  • Simon Branford (Univ. of Birmingham, UK)
  • Bibek Chapagain (Barcelona Supercomputing Centre, Spain)
  • Alex Domingo (Vrije Universiteit Brussel, Belgium)
  • Loris Ercole (CECA)
  • Davide Grassano (CECAM)
  • Jasper Grimm (University of York, UK)
  • Alexander Grund (ZIH, Dresden, Germany)
  • Leonardo Honfi Camilo (Wageningen University, The Netherlands)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Adam Huffman (University of Oxford, UK)
  • Georgios Kafanas (Univ. of Luxembourg)
  • Sébastien Moretti (SIB, Switzerland)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Jure Pečar (EMBL, Germany)
  • Andrea Piserchia (E4)
  • Jan Reuter (JSC, Germany)
  • Åke Sandgren (Umeå University, Sweden)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Alain van Hoof (TU Eindhoven, Netherlands)
  • Cintia Willemyns (Vrije Universiteit Brussel, Belgium)

Agenda

  • overview of recent developments
  • 2025a update of common toolchains
  • Q&A

Recent developments

  • latest EasyBuild release: EasyBuild v5.1.0 (26 May 2025)
  • next (stable) EasyBuild release: EasyBuid v5.1.1 (ETA: end of June'25)

News

  • successful easyconfigs merge sprint on Mon 16 June 2025
    • (see merge sprint notes)
    • main goal was to push down on number of open easyconfig PRs
    • 114 easyconfig PRs merged + 175 PRs closed
    • now well below 700 open easyconfig PRs (was around/over 1k for quite a while)
  • future easyconfigs merge sprints planned:
    • Mon 18 Aug 2025
    • Mon 13 Oct 2025
    • Mon 15 Dec 2025
    • Mon 16 Feb 2026
    • trying semi-fixed schedule: 3rd Monday in even months
  • impact of closing old/stale PRs
    • can be discouraging for less frequent contributors to see their old PRs closed
    • necessary evil to get on top of things again, we can't do that without doing some "damage"...
    • important to focus bulk of our efforts on recent software/contributions

Merged PRs

(changed made in PRs marked with * are included latest EasyBuild stable release)

  • docs (merged PRs)

    • ...
  • framework (merged PRs)

    • bug fixes
      • fix handling of broken symlinks in filetools.remove (PR #4921)
      • Fix reporting of method name in EasyBlock.run_step (PR #4920)
    • enhancements
      • add configuration option to ignore unversioned (0.0.0) Python packages (PR #4912)
      • Add required argument to get_cuda_cc_template_value (PR #4913)
      • add total iteration count to trace output (PR #4919)
      • add support for pre/post easyblock hook (PR #4923)
      • Catch HTTPException when doing GitHub API request (PR #4926)
    • changes
      • ...
    • code cleanup
      • Remove some superflous Python 2 checks (PR #4917)
      • Remove use of unsupported source key in patch spec (PR #4924)
    • CI
      • ...
  • easyblocks (merged PRs)

    • bug fixes
      • Improve reliability of PyTorch test reporting (PR #3723)
        • some dedicated CI for these functions would be good
      • enhance custom easyblock for LLVM: ensure sysroot dynamic linker is used + add ignore patterns for failing tests that can be ignored (PR #3741)
      • Fix unbound variable install_args in Conda easyblock (PR #3763)
      • set $CARGO_NET_OFFLINE to true in set_cargo_vars method of Cargo easyblock (only if offline mode is used), so it's set for every extension when CargoPythonBundle easyblock is used (PR #3764)
      • use parallel property rather than value of (deprecated) parallel easyconfig parameter in ORCA easyblock (PR #3772)
      • (re)set environment variables used by cargo in prepare step of Cargo easyblock (PR #3774)
    • enhancements
      • enhance Bundle generic easyblock to also run test step for each bundle component (PR #3748)
        • this causes some trouble with some easyblocks, being fixed (see for example PR #3775)
        • Alex is looking into pulling apart prepare step by introducing a load step that's done before fetch (cfr. framework issue #1376)
          • could be helpful with Bundle easyblock woes as well
      • enhance run_pip_check function to respect EasyBuild configuration option to ignore unversioned (0.0.0) Python packages (PR #3753)
      • enhance SuperLU easyblock to set configure options for ParMETIS (or disable it if ParMETIS is not a dependency) (PR #3767)
    • updates
      • ...
    • changes
      • ...
    • new easyblocks
      • ...
    • code cleanup
      • ...
    • CI
      • ...
  • easyconfigs (merged PRs)

    • >>100 easyconfig PRs were merged since last conf call
    • bug fixes/reports
      • ...
    • enhancements
      • ...
    • (noteworthy) new software
      • ...
    • noteworthy software updates
      • ...
    • cleanup
      • ...
    • changes
      • ...

Open (active) PRs

  • docs (open PRs + issues)

  • framework (open PRs + issues)

    • bugs
      • Correctly detect final path when extracting multiple tarballs (PR #4922)
      • PETSc downloads broken, because the site only seems to accept certain User-Agent values in the header (PR #4925)
    • enhancements
      • add sanitycheck_dependencies easyconfig parameter (PR #4916)
      • Add AMDGCN option similar to cuda-compute-capabilities (WIP PR #4860)
      • Implementing a new LLVM based toolchain (WIP PR #4914)
      • Proposed changes to make EasyBuild plugin-able through entrypoints (WIP PR #4918)
      • make NVHPC a full toolchain with nvidia-compilers, NVHPCX and NVBLAS (PR #4927)
    • code cleanup
      • ...
    • changes
      • Change the architecture constant RISCV64 (PR #4915)
  • easyblocks (open PRs + issues)

    • bug fixes/reports
      • Fix failure in sanity-check-only/module-only rebuilds of OpenMPI (PR #3724)
      • disable trace output when unpacking crates in Cargo easyblock (PR #3750)
      • (***) Bug when building multiple versions of LLVM in one call to easybuild (issue #3758)
      • Fix start_dir for components of Bundle easyblock (PR #3769)
      • revert Python shebangs change for conda (PR #3760)
      • Use self.start_dir in LLVM easyblock (PR #3770)
      • Fix CMakeNinja test command (PR #3771)
      • Reset runtest for components in a bundle (PR #3775)
      • Make matching component sources in Bundle easyblock more reliable (PR #3778)
      • Moved several pieces of logic from the __init__ to configure_step in LLVM easyblock (PR #3781)
    • enhancements
      • update LLVM easyblock to fix build on RISC-V systems (PR #3676)
      • Let CMakeMake set the Python paths for CMake (PR #3694)
      • LLVM: Use dlopen for AMDGPU/CUDA libomptarget / offload target libraries (PR #3747)
      • Changes to Easyblocks needed to work with the new LLVM toolchain (WIP PR #3759)
    • updates
      • Update Mathematica easyblock to support versions > 14.1 (PR #3707)
      • update numpy easyblock to support installing numpy >= 2.0 (WIP) (PR #3777)
      • Update TensorFlow easyblock for CUDA support in TensorFlow 2.18+ (PR #3765)
    • changes
      • Disable developer warnings in CMake by using -Wno-deprecated -Wno-dev (PR #3677)
      • Deprecate the Clang Easyblock in Favor of the LLVM one for newer (>=18.1.6) versions of LLVM (PR #3746)
      • CMakeMake easyblock: Suggestion to set -DFETCHCONTENT_FULLY_DISCONNECTED=ON by default (issue #3757)
    • code cleanup
      • ...
    • new easyblocks
      • add new easyblock for BLIS and AOCL-BLAS (PR #3773)
  • easyconfigs (open PRs + issues)

    • ~680 open easyconfig PRs \o/
    • bug fixes/reports
      • ...
    • enhancements
      • ...
    • (noteworthy) new software
      • ...
    • software updates
    • changes
      • ...

2025b common toolchains

  • will likely be set in stone Aug/Sept'25
  • GCC 14.3.0 (PR #22942) will be the base for foss/2025b and intel/2025b

Q&A / others