MAINT: Ensure that re-exported sub-modules are properly annotated #18636
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.
Backport of #18618.
xref #18601.
Sub-modules, such as
np.linalg
, must be explicitly imported in the main namespaces' stub file if one wantsto access the sub-module via a
getattr
operation, i.e. so that one can directly usenp.linalg.norm
ratherthan
import numpy.linalg; np.linalg.norm
.While this was taken care of in the main numpy namespace, the relevant annotations were missing for others
such as
np.lib.*
. This PR fixes aforementioned issue.Examples
The behavior prior to this PR:
Mypy output: