Execution log file doesn't expand params files
- Dominant language
- Java
- Stars
- 25.8k
- Forks
- 4.6k
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 72
Description
### Feature requests: what underlying problem are you trying to solve with this feature?
Currently the file produced with `experimental_execution_log_file` doesn't expand the params file arguments being passed to commands. This makes it difficult to debug actions when you're using workers where params files are required.
### What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
In [rules_swift](https://github.com/bazelbuild/rules_swift/) run:
```
bazel build examples/apple/objc_interop --experimental_execution_log_file=foo.log --features=swift.use_response_files
```
And then run:
```
path/to/bazel/bazel-bin/src/tools/execlog/parser --log_path=foo.log --output_path=foo.txt
```
In foo.txt you'll see things like this:
```
command_args: "bazel-out/host/bin/external/build_bazel_rules_swift/tools/worker/worker"
command_args: "swiftc"
command_args: "@bazel-out/apl-darwin_x86_64-fastbuild/bin/examples/apple/objc_interop/examples_apple_objc_interop_Printer.swiftmodule-0.params"
```
### What operating system are you running Bazel on?
macOS
### What's the output of `bazel info release`?
release 0.27.0
### Have you found anything relevant by searching the web?
aquery supports `--include_param_files` which is similar to the behavior we'd want here.
Contributor guide
Research direction
Reproduce the issue with the rules_swift build command using --experimental_execution_log_file and --features=swift.use_response_files, then run src/tools/execlog/parser with the shown log and output paths. Inspect how execution-log command arguments are recorded and parsed, using aquiry's --include_param_files behavior as a reference. Done means foo.txt expands the referenced params file instead of retaining the @path argument.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, swift
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100