From 81006b64ec947afd5991e8f43fe305b4423cb231 Mon Sep 17 00:00:00 2001 From: sneakers-the-rat Date: Fri, 24 May 2024 18:36:03 -0700 Subject: [PATCH] fix bad typing import generation in meta stubfile generator --- src/numpydantic/meta.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/numpydantic/meta.py b/src/numpydantic/meta.py index 671ab8d..3b5222d 100644 --- a/src/numpydantic/meta.py +++ b/src/numpydantic/meta.py @@ -24,7 +24,8 @@ def generate_ndarray_stub() -> str: # Create import statements, saving aliased name of type if needed if arr.__module__.startswith("numpydantic") or arr.__module__ == "typing": type_name = str(arr) if arr.__module__ == "typing" else arr.__name__ - import_strings.append(f"from {arr.__module__} import {type_name}") + if arr.__module__ != "typing": + import_strings.append(f"from {arr.__module__} import {type_name}") else: # since other packages could use the same name for an imported object # (eg dask and zarr both use an Array class) @@ -39,6 +40,7 @@ def generate_ndarray_stub() -> str: type_names.append(type_name) import_strings.extend(_BUILTIN_IMPORTS) + import_strings = list(dict.fromkeys(import_strings)) import_string = "\n".join(import_strings) class_union = " | ".join(type_names)