Fix error handling when looking for configuration files #6676
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.
What's the problem this PR addresses?
When looking for configuration files if reading a candidate throws an exception the exception is not caught and the user gets a cryptic and non-informative message. e.g. if you happen to have a directory named
.yarnrc.yml
in the root of your project every yarn command will result with this message:which doesn't include the file.
How did you fix it?
This change moves the reading operation into the try clause and handles read errors in the same way parsing errors are handled.
Checklist
I did it from GH online editor so I can't run stuff. Sorry.
Hopefully someone can pick it up it would save the next poor soul a few hours.