Fixed import errors on modules with shebang declarations #179
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.
Fixes #178
I feel like the issue should really be fixed in NodeJS, but this PR provides a workaround for the time being.
I've isolated the tests and the fix into two different commits, so that the fix commit could be reverted at a later date easily, should NodeJS provides a fix in the future.
This fixes the issue by removing the shebang declaration during the import via a regex that scans the first line of the module source. I believe this is a safe workaround because during a test environment, we don't need shebang declarations.
I've ran
npm test
to ensure all other tests passed.Additionally I've tested my changes locally on https://github.com/apache/cordova-android who is exhibiting this issue on NodeJS 12.16.0+
Do note that this is not an issue on NodeJS 12.15 or earlier.