Produce an error for an augmentation of an untyped module even if moduleNotFoundError
is not defined
#12852
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 #12827
The fix in #11962 asserted that
moduleNotFoundError
would be defined for any module augmentations.However, if the augmentation is in a declaration file, this is undefined, because we don't validate names of augmentations that are defined in ambient context. See #8200. The reason @vladima mentioned was (#8113 (comment)):
However, if we have an untyped import, that means that we are using the library, but don't have typings for it. The problem is that you can't augment typings that don't exist.
We could elide the error, but the augmentation would then have no effect -- you would still get
any
when trying to use functions defined by the augmentation.