Skip to content
Massimiliano Culpo edited this page Oct 5, 2022 · 7 revisions

Attendees

  • Massimiliano Culpo (host)
  • Danny
  • Mark Krentel
  • Davide Del Vento
  • Umashankar Sivakumar
  • Kayla Butler
  • John
  • Ivan Razumov
  • Todd Gamblin

Agenda items

  • (Mark Krentel)

    • Q: Is there any way to prescribe in the package.py file for a package that an LMod module should never autoload dependencies (regardless of the configuration in modules.yaml)?
    • A (Massimiliano): No, classes in package.py are agnostic of module generation. The only way to have Spack generate module files so that a specific package skips auto-loading, even if other packages are configured to auto-load, is by adding configuration to modules.yaml
  • (Ivan Razumov) Proposed to extend spack.yaml files so that fragments of yaml can be included. The use case is a spack.yaml that is maintained under version control and is frequently updated by many people via PRs. This result in a lot of git conflicts to be solved.

    • (Massimiliano) A feature like that needs probably more discussion on the pros / cons that it might bring to Spack
  • (Ivan Razumov) Proposed to think about an API to undo part of the modifications that might be introduced by a base package class. The use case is having a package in a custom repository that derives from a builtin package, but needs to discard some directives.

    • (Todd) The result can be already achieved by modifying the class-level dictionaries associated with directives in the derived package.
    • (Massimiliano) Another way we deal with the same issue in the builtin repository is to extract a base class with the code that is common to both the builtin package and the custom package. The custom package would derive from that class instead of from the complete builtin package.
  • (Ivan Razumov)

    • Q: Would it be fine to put project specific (HEP?) patches in Spack for some software
    • A (Todd): We have no definitive rule but it would be better if patches are hosted remotely
  • (Umashankar Sivakumar)

    • Q: How can somebody contribute a new CPU architecture to Spack? (Umashankar works at AMD and wants to contribute zen4)
    • A (Massimiliano, Todd): Spack uses archspec for its targets. The contribution should happen in https://github.com/archspec/archspec-json and it will be ported after merge to Spack.

Possible Agenda items

  • (Davide) Desire to duplicate an installation
    • Does overwrite of spack.lock/spack.yaml work?
    • You can also "version" the environment: copy the lock/yaml to a new environment in the production environment (then, if users have no issues with the new environment, remove the old environment)
    • If the user exposes the packages in the environment with modules, do we need per-environment modules?
      • (Davide) In my case I version-control the modules so this isn't an issue
  • (Davide) what about major version updates?
    • Do users pull major updates to their installations? How big a leap do people do in general? And how often?
    • (Peter) we may have a poll on this, but otherwise it would be interesting to conduct one
  • (Chris) Options for spack style checking of user package repos (see https://github.com/spack/spack/pull/31938).
  • (Brian) Sanitizing repo, getting rid of improperly-concretized packages (i.e. how do I get rid of old stuff I don't use now)
    • (in particular reuse)
  • (Mark) Ping on #27247
  • (Matt) Package reuse is nice, but how can we refresh a single package?
    • E.g. want to use the newest version of spectrum-mpi
  • (Matt) How does spack deprecate handle refreshing module files for packages that depend on a deprecated spec in an lmod hierarchy?
    • e.g. if you deprecate the old MPI, does the lmod refresh use the newer MPI in the hierarchy
  • (Matt) if we build an environment, and one package fails, then module files are not generated
    • Want spack module refresh but only to generate module files that haven't been generated yet
  • Updating compiler wrapper to strip -Werror (optionally): https://github.com/spack/spack/pull/30284
  • (Wileam) Adding fpm as a build system
  • Default action for concretization in environments: https://github.com/spack/spack/pull/29942#issuecomment-1097287194
  • Continue from https://github.com/spack/spack/wiki/Telcon%3A-2022-04-06: warning() directive
  • (Wileam) Can externals detection be expanded from executables only to arbitrary files (e.g. header or .a/.so library files)?
  • Continue from https://github.com/spack/spack/wiki/Telcon%3A-2022-04-13: not in spec syntax
  • (Phil) Issues with SSL signature authentication at SNL, see https://spackpm.slack.com/archives/G7XED8NAD/p1660009273764719
Clone this wiki locally