diff --git a/src/argenta/__init__.py b/src/argenta/__init__.py index 6685918..ae4f3db 100644 --- a/src/argenta/__init__.py +++ b/src/argenta/__init__.py @@ -1,6 +1,3 @@ -__all__ = ["App", "Orchestrator", "Router"] - - -from argenta.orchestrator.entity import Orchestrator -from argenta.app.models import App -from argenta.router.entity import Router +from argenta.orchestrator.entity import Orchestrator as Orchestrator +from argenta.app.models import App as App +from argenta.router.entity import Router as Router diff --git a/src/argenta/app/__init__.py b/src/argenta/app/__init__.py index 7803dd8..d4a5d6a 100644 --- a/src/argenta/app/__init__.py +++ b/src/argenta/app/__init__.py @@ -1,12 +1,4 @@ -__all__ = [ - "App", - "PredefinedMessages", - "DynamicDividingLine", - "StaticDividingLine", - "AutoCompleter" -] - -from argenta.app.models import App -from argenta.app.defaults import PredefinedMessages -from argenta.app.dividing_line.models import DynamicDividingLine, StaticDividingLine -from argenta.app.autocompleter.entity import AutoCompleter +from argenta.app.models import App as App +from argenta.app.defaults import PredefinedMessages as PredefinedMessages +from argenta.app.dividing_line.models import DynamicDividingLine as DynamicDividingLine, StaticDividingLine as StaticDividingLine +from argenta.app.autocompleter.entity import AutoCompleter as AutoCompleter diff --git a/src/argenta/app/autocompleter/__init__.py b/src/argenta/app/autocompleter/__init__.py index 30bb9ce..f829610 100644 --- a/src/argenta/app/autocompleter/__init__.py +++ b/src/argenta/app/autocompleter/__init__.py @@ -1,4 +1 @@ -__all__ = ["AutoCompleter"] - - -from argenta.app.autocompleter.entity import AutoCompleter +from argenta.app.autocompleter.entity import AutoCompleter as AutoCompleter diff --git a/src/argenta/app/autocompleter/entity.py b/src/argenta/app/autocompleter/entity.py index e90de55..fb659c4 100644 --- a/src/argenta/app/autocompleter/entity.py +++ b/src/argenta/app/autocompleter/entity.py @@ -1,3 +1,5 @@ +__all__ = ["AutoCompleter"] + import os import readline from typing import Never @@ -38,7 +40,7 @@ class AutoCompleter: i += 1 common_prefix = common_prefix[:i] if state == 0: - readline.insert_text(common_prefix[len(text) :]) + readline.insert_text(common_prefix[len(text) :]) readline.redisplay() return None elif len(matches) == 1: @@ -54,10 +56,10 @@ class AutoCompleter: """ if self.history_filename: if os.path.exists(self.history_filename): - readline.read_history_file(self.history_filename) + readline.read_history_file(self.history_filename) else: for line in all_commands: - readline.add_history(line) + readline.add_history(line) readline.set_completer(self._complete) readline.set_completer_delims(readline.get_completer_delims().replace(" ", "")) @@ -69,7 +71,7 @@ class AutoCompleter: :return: None """ if self.history_filename: - readline.write_history_file(self.history_filename) + readline.write_history_file(self.history_filename) with open(self.history_filename, "r") as history_file: raw_history = history_file.read() pretty_history: list[str] = [] @@ -86,5 +88,5 @@ def _get_history_items() -> list[str] | list[Never]: """ return [ readline.get_history_item(i) - for i in range(1, readline.get_current_history_length() + 1) + for i in range(1, readline.get_current_history_length() + 1) ] diff --git a/src/argenta/app/defaults.py b/src/argenta/app/defaults.py index 2908cef..8bead5e 100644 --- a/src/argenta/app/defaults.py +++ b/src/argenta/app/defaults.py @@ -1,3 +1,5 @@ +__all__ = ["PredefinedMessages"] + from enum import StrEnum diff --git a/src/argenta/app/dividing_line/__init__.py b/src/argenta/app/dividing_line/__init__.py index 4b4f746..efe2734 100644 --- a/src/argenta/app/dividing_line/__init__.py +++ b/src/argenta/app/dividing_line/__init__.py @@ -1,4 +1 @@ -__all__ = ["StaticDividingLine", "DynamicDividingLine"] - - -from argenta.app.dividing_line.models import StaticDividingLine, DynamicDividingLine +from argenta.app.dividing_line.models import StaticDividingLine as StaticDividingLine, DynamicDividingLine as DynamicDividingLine diff --git a/src/argenta/app/dividing_line/models.py b/src/argenta/app/dividing_line/models.py index d54279e..f64bbc1 100644 --- a/src/argenta/app/dividing_line/models.py +++ b/src/argenta/app/dividing_line/models.py @@ -1,3 +1,5 @@ +__all__ = ["StaticDividingLine", "DynamicDividingLine"] + from abc import ABC diff --git a/src/argenta/app/models.py b/src/argenta/app/models.py index 676cf15..86bebbc 100644 --- a/src/argenta/app/models.py +++ b/src/argenta/app/models.py @@ -1,3 +1,5 @@ +__all__ = ["App"] + import io import re from contextlib import redirect_stdout diff --git a/src/argenta/app/protocols.py b/src/argenta/app/protocols.py index e3f13fd..c66829a 100644 --- a/src/argenta/app/protocols.py +++ b/src/argenta/app/protocols.py @@ -1,3 +1,5 @@ +__all__ = ["NonStandardBehaviorHandler", "EmptyCommandHandler", "Printer", "DescriptionMessageGenerator"] + from typing import Protocol, TypeVar T = TypeVar('T', contravariant=True) # noqa: WPS111 @@ -6,11 +8,11 @@ T = TypeVar('T', contravariant=True) # noqa: WPS111 class NonStandardBehaviorHandler(Protocol[T]): def __call__(self, __param: T) -> None: raise NotImplementedError - + class EmptyCommandHandler(Protocol): def __call__(self) -> None: raise NotImplementedError - + class Printer(Protocol): def __call__(self, __text: str) -> None: diff --git a/src/argenta/app/registered_routers/entity.py b/src/argenta/app/registered_routers/entity.py index bce0a23..2212389 100644 --- a/src/argenta/app/registered_routers/entity.py +++ b/src/argenta/app/registered_routers/entity.py @@ -1,3 +1,5 @@ +__all__ = ["RegisteredRouters"] + from typing import Iterator, Optional from argenta.router import Router diff --git a/src/argenta/command/__init__.py b/src/argenta/command/__init__.py index 98310e5..3507d43 100644 --- a/src/argenta/command/__init__.py +++ b/src/argenta/command/__init__.py @@ -1,12 +1,5 @@ -__all__ = [ - "Command", - "PossibleValues", - "PredefinedFlags", - "InputCommand", - "Flags", - "Flag" -] - -from argenta.command.models import Command, InputCommand -from argenta.command.flag import defaults as PredefinedFlags -from argenta.command.flag import (Flag, Flags, PossibleValues) +from argenta.command.models import Command as Command, InputCommand as InputCommand +from argenta.command.flag.defaults import PredefinedFlags as PredefinedFlags +from argenta.command.flag import (Flag as Flag, + Flags as Flags, + PossibleValues as PossibleValues) diff --git a/src/argenta/command/exceptions.py b/src/argenta/command/exceptions.py index 8e5a2ad..159c5cc 100644 --- a/src/argenta/command/exceptions.py +++ b/src/argenta/command/exceptions.py @@ -1,3 +1,10 @@ +__all__ = [ + "InputCommandException", + "UnprocessedInputFlagException", + "RepeatedInputFlagsException", + "EmptyInputCommandException", +] + from argenta.command.flag.models import Flag, InputFlag from abc import ABC, abstractmethod from typing import override diff --git a/src/argenta/command/flag/__init__.py b/src/argenta/command/flag/__init__.py index 3095bd8..cdae7e6 100644 --- a/src/argenta/command/flag/__init__.py +++ b/src/argenta/command/flag/__init__.py @@ -1,11 +1,7 @@ -__all__ = [ - "Flag", - "InputFlag", - "Flags", - "PossibleValues", - "ValidationStatus" -] - - -from argenta.command.flag.models import Flag, InputFlag, PossibleValues, ValidationStatus -from argenta.command.flag.flags.models import Flags +from argenta.command.flag.models import ( + Flag as Flag, + InputFlag as InputFlag, + PossibleValues as PossibleValues, + ValidationStatus as ValidationStatus +) +from argenta.command.flag.flags.models import Flags as Flags diff --git a/src/argenta/command/flag/defaults.py b/src/argenta/command/flag/defaults.py index 2ffb780..3c51bfc 100644 --- a/src/argenta/command/flag/defaults.py +++ b/src/argenta/command/flag/defaults.py @@ -1,27 +1,31 @@ +__all__ = ["PredefinedFlags"] + from typing import Literal from argenta.command.flag.models import Flag, PossibleValues -import re +import re DEFAULT_PREFIX: Literal["-", "--", "---"] = "-" -HELP = Flag(name="help", possible_values=PossibleValues.NEITHER) -SHORT_HELP = Flag(name="H", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) -INFO = Flag(name="info", possible_values=PossibleValues.NEITHER) # noqa: WPS110 -SHORT_INFO = Flag(name="I", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) +class PredefinedFlags: + HELP = Flag(name="help", possible_values=PossibleValues.NEITHER) + SHORT_HELP = Flag(name="H", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) -ALL = Flag(name="all", possible_values=PossibleValues.NEITHER) -SHORT_ALL = Flag(name="A", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) + INFO = Flag(name="info", possible_values=PossibleValues.NEITHER) # noqa: WPS110 + SHORT_INFO = Flag(name="I", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) -HOST = Flag( - name="host", possible_values=re.compile(r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") -) -SHORT_HOST = Flag( - name="H", - prefix=DEFAULT_PREFIX, - possible_values=re.compile(r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"), -) + ALL = Flag(name="all", possible_values=PossibleValues.NEITHER) + SHORT_ALL = Flag(name="A", prefix=DEFAULT_PREFIX, possible_values=PossibleValues.NEITHER) -PORT = Flag(name="port", possible_values=re.compile(r"^\d{1,5}$")) -SHORT_PORT = Flag(name="P", prefix=DEFAULT_PREFIX, possible_values=re.compile(r"^\d{1,5}$")) + HOST = Flag( + name="host", possible_values=re.compile(r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") + ) + SHORT_HOST = Flag( + name="H", + prefix=DEFAULT_PREFIX, + possible_values=re.compile(r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"), + ) + + PORT = Flag(name="port", possible_values=re.compile(r"^\d{1,5}$")) + SHORT_PORT = Flag(name="P", prefix=DEFAULT_PREFIX, possible_values=re.compile(r"^\d{1,5}$")) diff --git a/src/argenta/command/flag/flags/__init__.py b/src/argenta/command/flag/flags/__init__.py index b355115..19593ba 100644 --- a/src/argenta/command/flag/flags/__init__.py +++ b/src/argenta/command/flag/flags/__init__.py @@ -1,10 +1,4 @@ -__all__ = [ - "Flags", - "InputFlags" -] - - from argenta.command.flag.flags.models import ( - Flags, - InputFlags + Flags as Flags, + InputFlags as InputFlags ) diff --git a/src/argenta/command/flag/flags/models.py b/src/argenta/command/flag/flags/models.py index c80b21b..132584a 100644 --- a/src/argenta/command/flag/flags/models.py +++ b/src/argenta/command/flag/flags/models.py @@ -1,3 +1,5 @@ +__all__ = ["Flags", "InputFlags"] + from argenta.command.flag.models import InputFlag, Flag from typing import Generic, TypeVar, override from collections.abc import Iterator @@ -52,7 +54,7 @@ class Flags(BaseFlags[Flag]): :return: entity of the flag or None """ return next((flag for flag in self.flags if flag.name == name), None) - + @override def __eq__(self, other: object) -> bool: if not isinstance(other, Flags): @@ -82,9 +84,9 @@ class InputFlags(BaseFlags[InputFlag]): :return: entity of the flag or None """ return next((flag for flag in self.flags if flag.name == name), None) - + @override - def __eq__(self, other: object) -> bool: + def __eq__(self, other: object) -> bool: if not isinstance(other, InputFlags): raise NotImplementedError @@ -103,4 +105,3 @@ class InputFlags(BaseFlags[InputFlag]): return False else: raise TypeError - diff --git a/src/argenta/command/flag/models.py b/src/argenta/command/flag/models.py index 7f04992..e9d90d4 100644 --- a/src/argenta/command/flag/models.py +++ b/src/argenta/command/flag/models.py @@ -1,3 +1,5 @@ +__all__ = ["PossibleValues", "ValidationStatus", "Flag", "InputFlag"] + from enum import Enum from re import Pattern from typing import Literal, override @@ -16,7 +18,7 @@ class ValidationStatus(Enum): class Flag: def __init__( - self, name: str, *, + self, name: str, *, prefix: Literal["-", "--", "---"] = "--", possible_values: list[str] | Pattern[str] | PossibleValues = PossibleValues.ALL, ) -> None: @@ -47,7 +49,7 @@ class Flag: return input_flag_value in self.possible_values return True - + @property def string_entity(self) -> str: """ @@ -56,17 +58,17 @@ class Flag: """ string_entity: str = self.prefix + self.name return string_entity - + @override def __str__(self) -> str: return self.string_entity - + @override def __repr__(self) -> str: return f'Flag' - + @override - def __eq__(self, other: object) -> bool: + def __eq__(self, other: object) -> bool: if isinstance(other, Flag): return self.string_entity == other.string_entity else: @@ -91,7 +93,7 @@ class InputFlag: self.prefix: Literal['-', '--', '---'] = prefix self.input_value: str | None = input_value self.status: ValidationStatus | None = status - + @property def string_entity(self) -> str: """ @@ -104,13 +106,13 @@ class InputFlag: @override def __str__(self) -> str: return f'{self.string_entity} {self.input_value}' - + @override def __repr__(self) -> str: return f'InputFlag' @override - def __eq__(self, other: object) -> bool: + def __eq__(self, other: object) -> bool: if isinstance(other, InputFlag): return ( self.name == other.name diff --git a/src/argenta/command/models.py b/src/argenta/command/models.py index 6088a21..1286d73 100644 --- a/src/argenta/command/models.py +++ b/src/argenta/command/models.py @@ -1,3 +1,8 @@ +__all__ = [ + "Command", + "InputCommand" +] + from argenta.command.flag.models import Flag, InputFlag, ValidationStatus from argenta.command.flag.flags.models import InputFlags, Flags from argenta.command.exceptions import ( @@ -20,7 +25,7 @@ DEFAULT_WITHOUT_INPUT_FLAGS: InputFlags = InputFlags() class Command: def __init__( self, - trigger: str, *, + trigger: str, *, description: str | None = None, flags: Flag | Flags = DEFAULT_WITHOUT_FLAGS, aliases: list[str] | None = None, @@ -57,7 +62,7 @@ class Command: class InputCommand: - def __init__(self, trigger: str, *, + def __init__(self, trigger: str, *, input_flags: InputFlag | InputFlags = DEFAULT_WITHOUT_INPUT_FLAGS): """ Private. The model of the input command, after parsing @@ -78,7 +83,7 @@ class InputCommand: trigger, input_flags = CommandParser(raw_command).parse_raw_command() return cls(trigger=trigger, input_flags=input_flags) - + class CommandParser: def __init__(self, raw_command: str) -> None: @@ -113,24 +118,24 @@ class CommandParser: input_value=crnt_flg_val, status=None ) - + if input_flag in self._parsed_input_flags: raise RepeatedInputFlagsException(input_flag) - + self._parsed_input_flags.add_flag(input_flag) crnt_flg_name, crnt_flg_val = None, None return (self._parsed_input_flags, crnt_flg_name, crnt_flg_val) - + def _is_next_token_value(self, current_index: int, _tokens: list[str] | list[Never]) -> bool: next_index = current_index + 1 if next_index >= len(_tokens): - return False - + return False + next_token = _tokens[next_index] return not next_token.startswith(MIN_FLAG_PREFIX) - + def _parse_single_token( token: str, crnt_flag_name: str | None, diff --git a/src/argenta/di/integration.py b/src/argenta/di/integration.py index a4001ec..3a38b47 100644 --- a/src/argenta/di/integration.py +++ b/src/argenta/di/integration.py @@ -20,9 +20,10 @@ def inject(func: Callable[..., T]) -> Callable[..., T]: ) -def setup_dishka(app: App, *, auto_inject: bool = False) -> None: +def setup_dishka(app: App, container: Container, *, auto_inject: bool = False) -> None: if auto_inject: _auto_inject_handlers(app) + Response.patch_by_container(container) def _get_container_from_response( @@ -33,7 +34,6 @@ def _get_container_from_response( if hasattr(arg, "_dishka_container"): return arg._dishka_container # pyright: ignore[reportPrivateUsage] break - raise RuntimeError("dishka container not found in Response") diff --git a/src/argenta/di/providers.py b/src/argenta/di/providers.py index 43e404e..49b1c0c 100644 --- a/src/argenta/di/providers.py +++ b/src/argenta/di/providers.py @@ -1,3 +1,7 @@ +__all__ = [ + 'SystemProvider', +] + from argenta.orchestrator.argparser import ArgParser from dishka import Provider, provide, Scope diff --git a/src/argenta/metrics/__init__.py b/src/argenta/metrics/__init__.py index 5b98ef8..9888ab8 100644 --- a/src/argenta/metrics/__init__.py +++ b/src/argenta/metrics/__init__.py @@ -1,4 +1 @@ -__all__ = ["get_time_of_pre_cycle_setup"] - - -from argenta.metrics.main import get_time_of_pre_cycle_setup +from argenta.metrics.main import get_time_of_pre_cycle_setup as get_time_of_pre_cycle_setup diff --git a/src/argenta/metrics/main.py b/src/argenta/metrics/main.py index cc68072..b32b526 100644 --- a/src/argenta/metrics/main.py +++ b/src/argenta/metrics/main.py @@ -1,3 +1,7 @@ +__all__ = [ + 'get_time_of_pre_cycle_setup', +] + import io from contextlib import redirect_stdout from time import time diff --git a/src/argenta/orchestrator/__init__.py b/src/argenta/orchestrator/__init__.py index b980d66..1eddaa5 100644 --- a/src/argenta/orchestrator/__init__.py +++ b/src/argenta/orchestrator/__init__.py @@ -1,4 +1,2 @@ -__all__ = ["ArgParser", "Orchestrator"] - -from argenta.orchestrator.argparser.entity import ArgParser -from argenta.orchestrator.entity import Orchestrator +from argenta.orchestrator.argparser.entity import ArgParser as ArgParser +from argenta.orchestrator.entity import Orchestrator as Orchestrator diff --git a/src/argenta/orchestrator/argparser/__init__.py b/src/argenta/orchestrator/argparser/__init__.py index 4f59581..92db9bf 100644 --- a/src/argenta/orchestrator/argparser/__init__.py +++ b/src/argenta/orchestrator/argparser/__init__.py @@ -1,9 +1,2 @@ -__all__ = [ - "ArgParser", - "BooleanArgument", - "ValueArgument" -] - - -from argenta.orchestrator.argparser.entity import ArgParser -from argenta.orchestrator.argparser.arguments import BooleanArgument, ValueArgument +from argenta.orchestrator.argparser.entity import ArgParser as ArgParser +from argenta.orchestrator.argparser.arguments import BooleanArgument as BooleanArgument, ValueArgument as ValueArgument diff --git a/src/argenta/orchestrator/argparser/arguments/__init__.py b/src/argenta/orchestrator/argparser/arguments/__init__.py index 0308877..651bc58 100644 --- a/src/argenta/orchestrator/argparser/arguments/__init__.py +++ b/src/argenta/orchestrator/argparser/arguments/__init__.py @@ -1,8 +1,5 @@ -__all__ = ["BooleanArgument", "ValueArgument", "InputArgument"] - - from argenta.orchestrator.argparser.arguments.models import ( - BooleanArgument, - ValueArgument, - InputArgument + BooleanArgument as BooleanArgument, + ValueArgument as ValueArgument, + InputArgument as InputArgument ) diff --git a/src/argenta/orchestrator/argparser/arguments/models.py b/src/argenta/orchestrator/argparser/arguments/models.py index 32d6f02..df686a9 100644 --- a/src/argenta/orchestrator/argparser/arguments/models.py +++ b/src/argenta/orchestrator/argparser/arguments/models.py @@ -1,3 +1,9 @@ +__all__ = [ + 'BooleanArgument', + 'ValueArgument', + 'InputArgument' +] + from typing import Literal @@ -20,7 +26,7 @@ class BaseArgument: self.help: str = help self.is_deprecated: bool = is_deprecated self.prefix: Literal["-", "--", "---"] = prefix - + @property def string_entity(self) -> str: return self.prefix + self.name @@ -29,7 +35,7 @@ class BaseArgument: class ValueArgument(BaseArgument): def __init__(self, name: str, *, prefix: Literal["-", "--", "---"] = "--", - help: str = "Help message for the value argument", + help: str = "Help message for the value argument", possible_values: list[str] | None = None, default: str | None = None, is_required: bool = False, @@ -74,9 +80,9 @@ class InputArgument: self.name: str = name self.value: str | None = value self.founder_class: type[BaseArgument] = founder_class - + def __str__(self) -> str: return f"InputArgument({self.name}={self.value})" - + def __repr__(self) -> str: return f"InputArgument" diff --git a/src/argenta/orchestrator/argparser/entity.py b/src/argenta/orchestrator/argparser/entity.py index b49e426..a48f56d 100644 --- a/src/argenta/orchestrator/argparser/entity.py +++ b/src/argenta/orchestrator/argparser/entity.py @@ -1,3 +1,8 @@ +__all__ = [ + "ArgSpace", + "ArgParser", +] + from argparse import ArgumentParser, Namespace from typing import Never, Self @@ -8,32 +13,32 @@ from argenta.orchestrator.argparser.arguments.models import ( ValueArgument ) - + class ArgSpace: def __init__(self, all_arguments: list[InputArgument]) -> None: self.all_arguments = all_arguments - + @classmethod - def from_namespace(cls, namespace: Namespace, + def from_namespace(cls, namespace: Namespace, processed_args: list[ValueArgument | BooleanArgument]) -> Self: name_type_paired_args: dict[str, type[BaseArgument]] = { arg.name: type(arg) - for arg in processed_args + for arg in processed_args } - return cls([InputArgument(name=name, - value=value, - founder_class=name_type_paired_args[name]) + return cls([InputArgument(name=name, + value=value, + founder_class=name_type_paired_args[name]) for name, value in vars(namespace).items()]) - + def get_by_name(self, name: str) -> InputArgument | None: for arg in self.all_arguments: if arg.name == name: return arg return None - + def get_by_type(self, arg_type: type[BaseArgument]) -> list[InputArgument] | list[Never]: return [arg for arg in self.all_arguments if arg.founder_class is arg_type] - + class ArgParser: def __init__( @@ -56,15 +61,15 @@ class ArgParser: self.processed_args: list[ValueArgument | BooleanArgument] = processed_args self._core: ArgumentParser = ArgumentParser(prog=name, description=description, epilog=epilog) - + for arg in processed_args: if isinstance(arg, BooleanArgument): - _ = self._core.add_argument(arg.string_entity, + _ = self._core.add_argument(arg.string_entity, action=arg.action, help=arg.help, deprecated=arg.is_deprecated) else: - _ = self._core.add_argument(arg.string_entity, + _ = self._core.add_argument(arg.string_entity, action=arg.action, help=arg.help, default=arg.default, @@ -75,4 +80,3 @@ class ArgParser: def parse_args(self) -> ArgSpace: return ArgSpace.from_namespace(namespace=self._core.parse_args(), processed_args=self.processed_args) - \ No newline at end of file diff --git a/src/argenta/orchestrator/entity.py b/src/argenta/orchestrator/entity.py index 7934e56..7a1f739 100644 --- a/src/argenta/orchestrator/entity.py +++ b/src/argenta/orchestrator/entity.py @@ -1,5 +1,6 @@ +__all__ = ["Orchestrator"] + from argenta.app import App -from argenta.response import Response from argenta.orchestrator.argparser import ArgParser from argenta.di.integration import setup_dishka @@ -31,7 +32,6 @@ class Orchestrator: :return: None """ container = make_container(SystemProvider(self._arg_parser), *self._custom_providers) - Response.patch_by_container(container) - setup_dishka(app, auto_inject=self._auto_inject_handlers) + setup_dishka(app, container, auto_inject=self._auto_inject_handlers) app.run_polling() diff --git a/src/argenta/response/__init__.py b/src/argenta/response/__init__.py index d7eb4a1..905f782 100644 --- a/src/argenta/response/__init__.py +++ b/src/argenta/response/__init__.py @@ -1,5 +1,2 @@ -__all__ = ["Response", "ResponseStatus"] - - -from argenta.response.entity import Response -from argenta.response.status import ResponseStatus +from argenta.response.entity import Response as Response +from argenta.response.status import ResponseStatus as ResponseStatus diff --git a/src/argenta/response/entity.py b/src/argenta/response/entity.py index 3e10371..ec0dc41 100644 --- a/src/argenta/response/entity.py +++ b/src/argenta/response/entity.py @@ -1,3 +1,5 @@ +__all__ = ["Response"] + from dishka import Container from argenta.command.flag.flags.models import InputFlags diff --git a/src/argenta/response/status.py b/src/argenta/response/status.py index 7c860fd..8fe548f 100644 --- a/src/argenta/response/status.py +++ b/src/argenta/response/status.py @@ -1,3 +1,5 @@ +__all__ = ["ResponseStatus"] + from enum import Enum diff --git a/src/argenta/router/__init__.py b/src/argenta/router/__init__.py index ecdb426..2a961de 100644 --- a/src/argenta/router/__init__.py +++ b/src/argenta/router/__init__.py @@ -1,4 +1 @@ -from argenta.router.entity import Router - - -__all__ = ["Router"] +from argenta.router.entity import Router as Router diff --git a/src/argenta/router/command_handler/entity.py b/src/argenta/router/command_handler/entity.py index ac01d71..62865d2 100644 --- a/src/argenta/router/command_handler/entity.py +++ b/src/argenta/router/command_handler/entity.py @@ -1,3 +1,5 @@ +__all__ = ["CommandHandler", "CommandHandlers"] + from collections.abc import Iterator from typing import Callable diff --git a/src/argenta/router/defaults.py b/src/argenta/router/defaults.py index d8e3f21..a47c108 100644 --- a/src/argenta/router/defaults.py +++ b/src/argenta/router/defaults.py @@ -1,3 +1,5 @@ +__all__ = ["system_router"] + from argenta.router import Router diff --git a/src/argenta/router/entity.py b/src/argenta/router/entity.py index 841c6d0..93fb402 100644 --- a/src/argenta/router/entity.py +++ b/src/argenta/router/entity.py @@ -1,3 +1,5 @@ +__all__ = ["Router"] + from typing import Callable, TypeAlias from inspect import getfullargspec, get_annotations, getsourcefile, getsourcelines from rich.console import Console diff --git a/src/argenta/router/exceptions.py b/src/argenta/router/exceptions.py index 161f08f..2c40df0 100644 --- a/src/argenta/router/exceptions.py +++ b/src/argenta/router/exceptions.py @@ -1,3 +1,5 @@ +__all__ = ["RepeatedFlagNameException", "RequiredArgumentNotPassedException", "TriggerContainSpacesException"] + from typing import override