From ac3a8ba0d60183e56cae1149fd9c5d8b1c90e819 Mon Sep 17 00:00:00 2001 From: Maarten ter Huurne Date: Tue, 2 Jan 2024 06:13:27 +0100 Subject: [PATCH] Explicitly re-export names from top-level package using `__all__` This avoids the re-exports from being flagged as errors when a project that uses Invoke is checked using `mypy --no-implicit-reexport`. It also obsoletes all flake8 suppressions in `__init__.py`. --- invoke/__init__.py | 69 ++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 57 insertions(+), 12 deletions(-) diff --git a/invoke/__init__.py b/invoke/__init__.py index eda2a94e..73d9af59 100644 --- a/invoke/__init__.py +++ b/invoke/__init__.py @@ -1,10 +1,55 @@ +__all__ = ( + "AmbiguousEnvVar", + "Argument", + "AuthFailure", + "Call", + "Collection", + "CollectionNotFound", + "CommandTimedOut", + "Config", + "Context", + "Executor", + "Exit", + "FailingResponder", + "Failure", + "FilesystemLoader", + "Local", + "MockContext", + "ParseError", + "ParseResult", + "Parser", + "ParserContext", + "PlatformError", + "Program", + "Promise", + "Responder", + "ResponseNotAccepted", + "Result", + "Runner", + "StreamWatcher", + "SubprocessPipeError", + "Task", + "ThreadException", + "UncastableEnvVar", + "UnexpectedExit", + "UnknownFileType", + "UnpicklableConfigMember", + "WatcherError", + "__version__", + "__version_info__", + "call", + "pty_size", + "task", +) + + from importlib import metadata from typing import Any, Optional -from .collection import Collection # noqa -from .config import Config # noqa -from .context import Context, MockContext # noqa -from .exceptions import ( # noqa +from .collection import Collection +from .config import Config +from .context import Context, MockContext +from .exceptions import ( AmbiguousEnvVar, AuthFailure, CollectionNotFound, @@ -21,14 +66,14 @@ UnpicklableConfigMember, WatcherError, ) -from .executor import Executor # noqa -from .loader import FilesystemLoader # noqa -from .parser import Argument, Parser, ParserContext, ParseResult # noqa -from .program import Program # noqa -from .runners import Failure, Local, Promise, Result, Runner # noqa -from .tasks import Call, Task, call, task # noqa -from .terminals import pty_size # noqa -from .watchers import FailingResponder, Responder, StreamWatcher # noqa +from .executor import Executor +from .loader import FilesystemLoader +from .parser import Argument, Parser, ParserContext, ParseResult +from .program import Program +from .runners import Failure, Local, Promise, Result, Runner +from .tasks import Call, Task, call, task +from .terminals import pty_size +from .watchers import FailingResponder, Responder, StreamWatcher __version__ = metadata.version("invoke")