spack/lib/spack
Harmen Stoppels 70412612c7
installer: improve init signature and explicits (#44374)
Change the installer to take `([pkg], args)` in the constructor instead
of `[(pkg, args)]`. The reason is that certain arguments are global
settings, and the new API ensures that those arguments cannot be
different across different "build requests".

The `explicit` install arg is now a list of hashes, and the installer is
no longer responsible for determining what package is installed
explicitly. This way environment installs can simply pass the list of
environment roots, without them necessarily being explicit build
requests. For example an env with two roots [a, b], where b depends on
a, would not always cause spack install to mark b as explicit.

Notice that `overwrite` already took a list of hashes, this makes
`explicit` consistent.

`package.do_install(explicit=True)` continues to take a boolean.
2024-05-29 08:25:34 +02:00
..
docs docs: update chain.rst to improve discussion of upstreams (#43918) 2024-05-22 22:04:53 +00:00
env ldflags=* are compiler flags, not linker flags (#43820) 2024-04-26 09:19:03 +02:00
external Update vendored archspec to v0.2.4 (#44005) 2024-05-06 10:20:56 +02:00
llnl link: directly bind to os.* on non-windows (#44400) 2024-05-27 13:37:04 +02:00
spack installer: improve init signature and explicits (#44374) 2024-05-29 08:25:34 +02:00
spack_installable Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00