diff options
author | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2019-10-17 19:17:21 +0200 |
---|---|---|
committer | Greg Becker <becker33@llnl.gov> | 2019-10-17 10:17:21 -0700 |
commit | 9ddc98e46a73d53e9937cad1a430a34522d241de (patch) | |
tree | 3d7991d457dba508e4a58c12f31dcc969d126f28 /etc | |
parent | cf9de058aaa6bfde635868422b504e4fb1413359 (diff) | |
download | spack-9ddc98e46a73d53e9937cad1a430a34522d241de.tar.gz spack-9ddc98e46a73d53e9937cad1a430a34522d241de.tar.bz2 spack-9ddc98e46a73d53e9937cad1a430a34522d241de.tar.xz spack-9ddc98e46a73d53e9937cad1a430a34522d241de.zip |
Separate setting build environment and run environment in packages (#11115)
* Methods setting the environment now do it separately for build and run
Before this commit the `*_environment` methods were setting
modifications to both the build-time and run-time environment
simultaneously. This might cause issues as the two environments
inherently rely on different preconditions:
1. The build-time environment is set before building a package, thus
the package prefix doesn't exist and can't be inspected
2. The run-time environment instead is set assuming the target package
has been already installed
Here we split each of these functions into two: one setting the
build-time environment, one the run-time.
We also adopt a fallback strategy that inspects for old methods and
executes them as before, but prints a deprecation warning to tty. This
permits to port packages to use the new methods in a distributed way,
rather than having to modify all the packages at once.
* Added a test that fails if any package uses the old API
Marked the test xfail for now as we have a lot of packages in that
state.
* Added a test to check that a package modified by a PR is up to date
This test can be used any time we deprecate a method call to ensure
that during the first modification of the package we update also
the deprecated calls.
* Updated documentation
Diffstat (limited to 'etc')
0 files changed, 0 insertions, 0 deletions