Conference call notes 20180808 - easybuilders/easybuild GitHub Wiki

(back to Conference calls)

Notes on the 107th EasyBuild conference call, Wednesday August 8th 2018 (5pm - 6pm CEST)

Attendees

Alphabetical list of attendees (6):

  • Kenneth Hoste (HPC-UGent, Belgium)
  • Victor Holanda (CSCS, Switzerland)
  • Davide Vanzo (Vanderbilt University, US)
  • Pablo Escobar (UniBas, Switzerland)
  • Fotis Georgatos (SDSC, Switzerland)
  • Adam Huffman (Big Data Institute, University of Oxford, UK)

Agenda

  • long-term outlook to EasyBuild v4
    • goals
    • brainstorm on potential backwards-incompatible changes that could/should be included
  • more automation to make handling of incoming contributions less time-consuming
    • what can boegelbot do more than it does now?
  • more organized testing of contributions
    • use standardized Singularity images to test in isolation of OS?
  • Q&A

Long-term outlook to EasyBuild v4

  • no timeline yet for EasyBuild v4, right now just collecting ideas for things that should be included there
  • Python 3 support
    • depends on vsc-base being compatible with Python 3 (some progress was made there, but it has stalled again...)
  • switching to pip for Python packages
    • right now still using setuptools, while pip is the recommended installation mechanism for Python packages
    • need to start enforcing 'use_pip = True'?
    • Fotis: some concern about auto-downgrading of packages by pip
    • not an issue with EB, should be disabled already
  • archiving old easyconfigs (ictce, ...)
  • Pablo: more flexible dependency version specification (e.g. ranges)
    • for example ('CMake', '3.*')?
    • Davide:
    • potentially quite a hornets nest?
    • goes against EasyBuild philosophy
    • less flexible alternative: --freeze-deps idea (good first step?)
    • other extreme is Spack, which is very flexible w.r.t. specifying dependencies
      • Spack does support replicating an existing installation
    • Fotis: related feature: specifying version 'range' for particular (common) dependencies
    • related?: --try-* enhancement by Alan, cfr. https://github.com/easybuilders/easybuild-framework/pull/2539
  • Pablo: what about .yeb easyconfigs?
    • Kenneth: not being worked on right now, shouldn't block progress with EB v4
  • stable --containerize support?
  • will be discussed in depth at next EasyBuild User Meeting
  • follow-up via https://github.com/easybuilders/easybuild/issues/447

More automation to deal with incoming contributions

  • more checks that should be done in Travis (with failures reported by @boegelbot)
    • missing checksums
    • enforce use of 'download_dep_fail = True' in new easyconfigs used PythonPackage
      • also "use_pip = True" ?
  • automatically ask for a test report after 1 day?
    • would require some logic to avoid making it too aggressive?
    • concern about PRs with many toolchains
  • automatically closing old/stale PRs?
    • Pablo: auto-tag PRs to-be-closed, and then have MotW look at them?
    • or auto-comment on stale PRs + tag them, mention they will be (auto-)closed unless there's no activity
      • start with PRs with no activity older than 1 year + no follow-up activity for 6 months after marking it stale, and then gradually make it stricter?
    • see also Spack discussion: https://github.com/spack/spack/pull/8811

More organized testing of contributions

  • using Docker/Singularity images to organize testing more?
    • isolate from OS, also more consistency w.r.t. testing on different OSs
    • Pablo: using Docker images allows to use with Docker/Singularity/Shifter/uDocker
    • start repo with container recipes to use for this?
      • or maybe even images provided via DockerHub?
  • also have a public dashboard showing what was tested where?

Q&A

  • Victor: how well are architectures other than x86 support?

    • framework itself should be generic, logic can be used in easyblocks
    • some easyblocks/configs still have hardwired x86-specific stuff, but that's bugs that should be fixed
    • Fotis: --include-toolchains
    • Alan has played around with EB on POWER quite a bit
    • Markus has played around a bit with EB on ARM
      • Victor: didn't work out-of-the-box on ARM Calvium X2 after a quick try...
  • Victor: support for Docker containers?

  • Davide: deadline for Python@GCCcore + Java/JDK bundle?

    • try to set up a working group in maintainers mailing list for these?