Conference call notes 20230301 - easybuilders/easybuild GitHub Wiki

(back to Conference calls)

Notes on the 217th EasyBuild conference call, Wednesday 1 March 2023 (09:00 UTC)

Attendees

List of attendees (21):

  • Simon Branford (Univ. of Birmingham, UK)
  • Alex Domingo (Vrije Universiteit Brussel, Belgium)
  • Frank Everdij (TU Delft, Netherlands)
  • André Gemünd (Fraunhofer SCAI, Germany)
  • Jasper Grimm (University of York, UK)
  • Jorge Guerra (Universidad Politécnica de Madrid, Spain)
  • Sven Hansen (RWTH, Germany)
  • Thomas Hoffman (EMBL Heidelberg, Germany)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Adam Huffman (Big Data Institute, Oxford, UK)
  • Jan-Patrick Lehr (AMD)
  • Jakub Kropáček (IT4Innovations, Czech Republic)
  • Emily Loomeijer (TU Eindhoven, Netherlands)
  • Kurt Lust (UAntwerpen, Belgium + LUMI User Support Team)
  • Sebastien Moretti (SIB, Switzerland)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Jurij Pečar (EMBL, Germany)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Åke Sandgren (Umeå University, Sweden)
  • Alain van Hoof (TU Eindhoven, Netherlands)
  • Robin Verschoren (UAntwerpen, Belgium)

Agenda

  • overview of recent developments + outlook to next EasyBuild release
  • Q&A

Recent developments

  • release timeline
  • recent changes
    • framework
      • bug fixes
        • ...
      • enhancements
        • add option to make sanity_check_paths arch dependent (PR #3845)
        • add pre/post extension hook (triggered before/after individual extension installations) (PR #4193)
        • add support for %(start_dir)s easyconfig template (PR #4073)
        • add support to silence deprecation warning for easyconfigs and toolchains (PR #4207)
      • changes
        • only print "default: " for configuration option of strlist type if default is not empty (PR #4220)
        • replace more usages of assertTrue/False in tests (PR #4205)
      • docs
        • ...
    • easyblocks
      • bug fixes
        • fix check configure option in FlexiBLAS easyblock (PR #2886)
        • fix linking numexpr with Intel MKL's VML library for imkl >= 2021.x (PR #2897)
          • linking with mkl_rt is more an escape hatch than a proper solution, Bart was going to take a closer look at this too...
      • enhancements
        • use -x option for "go install" in GoPackage generic easyblock (PR #2878)
        • allow disabling pybind11 tests with runtest = False (PR #2892)
        • call parent post_install_step in EasyBuildMeta easyblock (so postinstallcmds are taken into account) (PR #2893)
      • updates
        • update scipy easyblock for scipy >= 1.9.0 to use meson/ninja (PR #2862)
        • relax glob pattern to find Mathematica install script (PR #2896)
        • implement CUDA support in the ELPA EasyBlock & fix CPP configure issue on newer ELPA versions (PR #2898)
      • changes
        • ...
      • new software
        • ...
    • easyconfigs
      • ~115 easyconfig PRs were merged since last conf call
      • bug fixes
        • correctly specify path to libfabric installation prefix in PMIx 4.1.0 easyconfig (PR #17204)
        • add alternative checksum for spatial 7.3-14 extension in R 4.1.x easyconfigs (PR #17356)
        • fix homepage + source URL for ELPA (due to switch to new domain) (PR #17357 + PR #17358)
      • enhancements
        • set $JULIA_DEPOT_PATH and $JULIA_HISTORY in Julia easyconfigs (PR #17216)
        • use 'import deap.base' in sanity check for deap extension in SciPy-bundle 2022.05 (PR #17429)
      • (noteworthy) new software
        • ...
      • noteworthy software updates
      • changes
        • fix software name clashes + introduce check to avoid re-introducing them (PR #17303, PR #17345, PR #17348, PR #17350, PR #17351, PR #17359, PR #17364)
        • bump OpenSSL 1.1 wrapper fallback to 1.1.1t (PR #17417)
        • enable -fPIC in GEOS 3.11.1 (required by GDAL) (PR #17196)
        • use GCC as toolchain for serial variants of HDF5, since it has a FORTRAN API (PR #17221)
        • replace obsolete pycrypto with pycryptodome in Python 3.10.x easyconfigs (PR #17412)
        • update deap to version 1.3.3 in SciPy-bundle 2022.05 easyconfigs (since deap 1.3.1 is broken) (PR #17413)
  • work in progress
    • framework
      • reported bugs / bug fixes
        • Python packages are being installed to local/lib/python*/dist-packages due to tweaks to sysconfig.py in OS (issue #4128)
        • fix typo in condition guarding installation of GitHub token in CI workflow to run unit tests (PR #4216)
          • to fix tests that require GitHub token are always skipped in CI due to silly typo in GitHub Actions workflow (issue #4214)
          • work-in-progress because using $GITHUB_TOKEN that is provided by default doesn't seem to be working...
      • enhancements
      • changes
        • ...
    • easyblocks
      • bug reports/fixes
        • fix finding of failed tests in output of PyTorch test step (PR #2859)
        • handle templating correctly in CMakeMake when playing with configopts (PR #2882)
        • fix CMake configopts when iterating (multiple builds) (PR #2885)
        • fix check configure option in FlexiBLAS easyblock (PR #2886)
      • enhancements
        • modify logic in QScintilla easyblock to find the PyQt5 sipdir in more places (PR #2868)
        • How to handle Rust/cargo packages (or how to add a cargo easyblock) (issue #2899)
          • easyconfigs installed Rust software also break over time, cfr. PR #15636
      • updates
        • fix TensorFlow easyblock for new versions of Bazel & TensorFlow (PR #2854)
        • update ESMF easyblock for versions >= 8.4, due to changed structure and naming of their Python bindings (PR #2875)
      • new software
      • changes
        • add deprecation notice to RPackage extensions with relative paths in start_dir (PR #2879)
    • easyconfigs

Q&A

  • dealing with dependencies when installing binaries from a tarball using system toolchain
    • see Seaview (PR #17385)
      • long list of OS dependencies, figuring out what these are is a big effort
      • if building from source is possible (with reasonable effort), we should
    • see also issue #17438
    • @ BEAR: often just installing stuff like ANSYS/Blender with system toolchain + installing necessary OS dependencies
    • use postinstallmsgs to warn about assuming that all necessary OS deps are required (for MATLAB for example)
  • PETSc
    • see PR that adds a "fat" version of PETSc (PR #15519)
    • doesn't include Trilinos yet
      • Trilinos is a problematic case by itself because our easyblock tries to enable too much
      • should we change tactics in the Trilinos easyblock to aim for a minimal install by default?
      • Simon abondened Trilinos PR #15517
      • easyblock shouldn't auto-enable all possible features based on provided dependencies, but make everything opt-in?
    • we haven't seen complaints about missing capabilities in PETSc, so why do the effort to make the PETSc installation fatter?