Fixes T5085. Currently, the ExecFuture instances that are used to call an external linter are executed in the current working directory. This means that if a path is specified in the .arclint file, relative to the project root directory, that the path will not be properly interpreted by the external linter when arc lint is called from a level deeper than the project root.
Details
Details
- Reviewers
epriestley - Group Reviewers
Blessed Reviewers - Maniphest Tasks
- T5085: Lint config is not relative to repository root
- Commits
- rARC7bde5941cf71: Set the working directory to the project root for external linter `ExecFuture`…
Ran arc lint from a subdirectory of a project and verified that the linter did not throw an exception due to not being able to find the specified configuration file.
Diff Detail
Diff Detail
- Repository
- rARC Arcanist
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Comment Actions
Closed by commit rARC7bde5941cf71 (authored by @joshuaspence, committed by @epriestley).
Comment Actions
My only concern with this method is that it makes the output of arc lint --trace harder to read, because it is not clear that the command is being executed in the project root,
Comment Actions
It would occasionally be nice to have CWD and ENV in --trace somehow, but they'd be really spammy 99% of the time.