From 5236329521fedc246e04cc283b47c74a4f8e8dab Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Mon, 17 Jul 2023 03:09:36 +0300 Subject: [PATCH] Update hints --- aiogram/dispatcher/dispatcher.py | 11 ++++++----- aiogram/types/base.py | 7 ++++--- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/aiogram/dispatcher/dispatcher.py b/aiogram/dispatcher/dispatcher.py index 763a9e37..7de7960c 100644 --- a/aiogram/dispatcher/dispatcher.py +++ b/aiogram/dispatcher/dispatcher.py @@ -18,7 +18,7 @@ from ..fsm.strategy import FSMStrategy from ..methods import GetUpdates, TelegramMethod from ..methods.base import TelegramType from ..types import Update, User -from ..types.base import UNSET_TYPE +from ..types.base import UNSET_TYPE, UNSET from ..types.update import UpdateTypeLookupError from ..utils.backoff import Backoff, BackoffConfig from .event.bases import UNHANDLED, SkipHandler @@ -451,7 +451,7 @@ class Dispatcher(Router): polling_timeout: int = 10, handle_as_tasks: bool = True, backoff_config: BackoffConfig = DEFAULT_BACKOFF_CONFIG, - allowed_updates: Optional[Union[List[str], UNSET_TYPE]] = UNSET_TYPE, + allowed_updates: Optional[Union[List[str], UNSET_TYPE]] = UNSET, handle_signals: bool = True, close_bot_session: bool = True, **kwargs: Any, @@ -464,6 +464,7 @@ class Dispatcher(Router): :param handle_as_tasks: Run task for each event and no wait result :param backoff_config: backoff-retry config :param allowed_updates: List of the update types you want your bot to receive + By default, all used update types are enabled (resolved from handlers) :param handle_signals: handle signals (SIGINT/SIGTERM) :param close_bot_session: close bot sessions on shutdown :param kwargs: contextual data @@ -483,6 +484,9 @@ class Dispatcher(Router): if self._stopped_signal is None: self._stopped_signal = Event() + if allowed_updates is UNSET: + allowed_updates = self.resolve_used_update_types() + self._stop_signal.clear() self._stopped_signal.clear() @@ -498,9 +502,6 @@ class Dispatcher(Router): signal.SIGINT, self._signal_stop_polling, signal.SIGINT ) - if allowed_updates is UNSET_TYPE: - allowed_updates = self.resolve_used_update_types() - workflow_data = { "dispatcher": self, "bots": bots, diff --git a/aiogram/types/base.py b/aiogram/types/base.py index 707e328c..21c5bceb 100644 --- a/aiogram/types/base.py +++ b/aiogram/types/base.py @@ -24,7 +24,8 @@ class MutableTelegramObject(TelegramObject): # special sentinel object which used in situation when None might be a useful value +UNSET: Any = sentinel.UNSET UNSET_PARSE_MODE: Any = sentinel.UNSET_PARSE_MODE -UNSET_DISABLE_WEB_PAGE_PREVIEW = sentinel.UNSET_DISABLE_WEB_PAGE_PREVIEW -UNSET_PROTECT_CONTENT = sentinel.UNSET_PROTECT_CONTENT -UNSET_TYPE = type(sentinel.DEFAULT) +UNSET_DISABLE_WEB_PAGE_PREVIEW: Any = sentinel.UNSET_DISABLE_WEB_PAGE_PREVIEW +UNSET_PROTECT_CONTENT: Any = sentinel.UNSET_PROTECT_CONTENT +UNSET_TYPE: Any = type(UNSET)