fix: prevent UnhandledPromiseRejectionWarning when module resolution/parsing fails#4228
Merged
lukastaegert merged 2 commits intorollup:masterfrom Sep 18, 2021
Merged
fix: prevent UnhandledPromiseRejectionWarning when module resolution/parsing fails#4228lukastaegert merged 2 commits intorollup:masterfrom
lukastaegert merged 2 commits intorollup:masterfrom
Conversation
lukastaegert
approved these changes
Sep 18, 2021
Codecov Report
@@ Coverage Diff @@
## master #4228 +/- ##
=======================================
Coverage 98.37% 98.37%
=======================================
Files 202 202
Lines 7260 7260
Branches 2119 2119
=======================================
Hits 7142 7142
Misses 58 58
Partials 60 60
Continue to review full report at Codecov.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR contains:
Are tests included?
Breaking Changes?
List any relevant issue numbers:
resolves #4217
Description
This fixes an instance where rollup can cause an unhandled rejection during normal programmatic usage. There isn't a simple way to test this since as of Node 15, a test would amount to ensuring that the process doesn't exit when you force a module resolution error.
I temporarily enabled
@typescript-eslint/no-floating-promiseswith parserServices to check if there were any other places that had floating promises outside ofModuleLoader.tsand saw the following:I didn't notice anything else that seemed dangerous, all the other cases were either already handled imperatively or were innocuous
.close()calls that would only marginally benefit from a handler which logs a warning.