Catch ESLint lintFiles errors (fixes #96) #138
Draft
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.
Hello!
Right now, if an ESLint rule throws an error, the error object includes a reference to the AST node where the error originated, which includes circular data structures.
jest-runner-eslint
doesn't do anything special for these errors.If the tests are running in band, this is not an issue: Jest correctly shows the error to the user. However, if the test is running in a child process, the runner tries to send the circular data structure back to the main process, which produces the
Converting circular structure to JSON
error shown in #96.This patch puts a
try…catch
around the call tolintFiles
, so the error message can be reported to Jest explicitly, preventing the circular reference from being propagated.