From 1ddc4002fab63c147573b6be3672ea2a7d4ad7fb Mon Sep 17 00:00:00 2001 From: pacnpal <183241239+pacnpal@users.noreply.github.com> Date: Sun, 17 Nov 2024 21:58:25 +0000 Subject: [PATCH] fix(processor): add fallback to absolute imports in message_handler --- videoarchiver/processor/message_handler.py | 27 ++++++++++++++++------ 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/videoarchiver/processor/message_handler.py b/videoarchiver/processor/message_handler.py index 0912521..5083150 100644 --- a/videoarchiver/processor/message_handler.py +++ b/videoarchiver/processor/message_handler.py @@ -9,15 +9,28 @@ from typing import Any, ClassVar, Dict, List, Optional, Set, Tuple, TypedDict, T import discord # type: ignore from discord.ext import commands # type: ignore -from ..config_manager import ConfigManager -from .constants import REACTIONS -from .message_validator import MessageValidator, ValidationError -from .url_extractor import URLExtractor, URLMetadata -from ..queue.types import QueuePriority -from ..utils.exceptions import MessageHandlerError +try: + # Try relative imports first + from ..config_manager import ConfigManager + from .constants import REACTIONS + from .message_validator import MessageValidator, ValidationError + from .url_extractor import URLExtractor, URLMetadata + from ..queue.types import QueuePriority + from ..utils.exceptions import MessageHandlerError +except ImportError: + # Fall back to absolute imports if relative imports fail + from videoarchiver.config_manager import ConfigManager + from videoarchiver.processor.constants import REACTIONS + from videoarchiver.processor.message_validator import MessageValidator, ValidationError + from videoarchiver.processor.url_extractor import URLExtractor, URLMetadata + from videoarchiver.queue.types import QueuePriority + from videoarchiver.utils.exceptions import MessageHandlerError if TYPE_CHECKING: - from ..queue.manager import EnhancedVideoQueueManager + try: + from ..queue.manager import EnhancedVideoQueueManager + except ImportError: + from videoarchiver.queue.manager import EnhancedVideoQueueManager logger = logging.getLogger("VideoArchiver")