Fix lint race when not running tests in parallel #25235
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Both
runLinterAndComplete
andfinish
were invokingcomplete
(the first when linting was actually done, the second immediately), causingcomplete
to be called for the lint's prerequisite build before the task was actually done (and more times and required), leading tolint
running before is prerequisitetsbuild
task was complete, resulting in an error if lint rules were not already built.The
jake
API isn't exactly forgiving when it comes to ensuring your tasks only complete once when used in the way we've authored; as it turns out,jake
supports async tasks returning promises (and if you do so, you no longer have to configure the async flag) - it would be much safer to be using them.