AcademySoftwareFoundation / AcademySoftwareFoundation/rez
Build Context is Incomplete
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 369
- Avg merge
- 12d 3h
- Merged PRs (30d)
- 5
Description
When the build context is saved (by the `_build` method of `rez.build_process.LocalSequentialBuildProcess`), it is saved before the build system has been invoked. This means it is missing environment variables.
For example, the `CMakeBuildSystem` adds variables to the environment for cmake to use, which are not captured in the saved context.
I think this should be changed such that the resolved context also includes the build system specific variables. This implies the resolved context is invalidated if the build system changes between runs (which is unlikely, but still possible).
Contributor guide
Research direction
Start with the `_build` method of `rez.build_process.LocalSequentialBuildProcess` and trace when the resolved context is saved relative to build-system invocation. Compare this with the environment variables added by `CMakeBuildSystem`, then determine how context invalidation should behave when the build system changes. Done means the saved context includes build-system-specific variables and is not reused after such a change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100