Provide mechanism to stream action output
- Dominant language
- Java
- Stars
- 25.8k
- Forks
- 4.6k
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 72
Description
### Description of the feature request:
We currently cannot stream a build rule output to the terminal. We could replicate the analogous test flag `--test_output=streamed` in the build execution phase.
In that case, this would probably mean we would have to run the build actions sequentially in order to prevent any race condition on the terminal output.
### Feature requests: what underlying problem are you trying to solve with this feature?
Some building tools [1] are not guaranteed to terminate. For such tools, having access to stdout/stderr is the only way we get to:
1. Realize the build won't terminate.
2. Investigate on what makes the build looping.
[1] Tools such as GHC, the Haskell compiler. See https://github.com/tweag/rules_haskell/issues/603
Contributor guide
Research direction
Start by examining the build execution phase and the analogous test flag, --test_output=streamed, mentioned in the issue. Define the behavior needed for streaming build action stdout/stderr, including how sequential execution prevents terminal-output races, and verify it with a non-terminating tool such as GHC.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100