fix(processor): add fallback to absolute imports in __init__.py

This commit is contained in:
pacnpal
2024-11-17 22:52:16 +00:00
parent c1bfc5e90b
commit 643763db0a

View File

@@ -3,44 +3,86 @@
from typing import Dict, Any, Optional, Union, List, Tuple from typing import Dict, Any, Optional, Union, List, Tuple
import discord # type: ignore import discord # type: ignore
from .core import VideoProcessor try:
from .constants import ( # Try relative imports first
REACTIONS, from .core import VideoProcessor
ReactionType, from .constants import (
ReactionEmojis, REACTIONS,
ProgressEmojis, ReactionType,
get_reaction, ReactionEmojis,
get_progress_emoji, ProgressEmojis,
) get_reaction,
from .url_extractor import ( get_progress_emoji,
URLExtractor, )
URLMetadata, from .url_extractor import (
URLPattern, URLExtractor,
URLType, URLMetadata,
URLPatternManager, URLPattern,
URLValidator, URLType,
URLMetadataExtractor, URLPatternManager,
) URLValidator,
from .message_validator import ( URLMetadataExtractor,
MessageValidator, )
ValidationContext, from .message_validator import (
ValidationRule, MessageValidator,
ValidationResult, ValidationContext,
ValidationRuleManager, ValidationRule,
ValidationCache, ValidationResult,
ValidationStats, ValidationRuleManager,
ValidationCacheEntry, ValidationCache,
ValidationError, ValidationStats,
) ValidationCacheEntry,
from .message_handler import MessageHandler ValidationError,
from .queue_handler import QueueHandler )
from .reactions import ( from .message_handler import MessageHandler
handle_archived_reaction, from .queue_handler import QueueHandler
update_queue_position_reaction, from .reactions import (
update_progress_reaction, handle_archived_reaction,
update_download_progress_reaction, update_queue_position_reaction,
) update_progress_reaction,
from ..utils.progress_tracker import progress_tracker update_download_progress_reaction,
)
from ..utils.progress_tracker import progress_tracker
except ImportError:
# Fall back to absolute imports if relative imports fail
from videoarchiver.processor.core import VideoProcessor
from videoarchiver.processor.constants import (
REACTIONS,
ReactionType,
ReactionEmojis,
ProgressEmojis,
get_reaction,
get_progress_emoji,
)
from videoarchiver.processor.url_extractor import (
URLExtractor,
URLMetadata,
URLPattern,
URLType,
URLPatternManager,
URLValidator,
URLMetadataExtractor,
)
from videoarchiver.processor.message_validator import (
MessageValidator,
ValidationContext,
ValidationRule,
ValidationResult,
ValidationRuleManager,
ValidationCache,
ValidationStats,
ValidationCacheEntry,
ValidationError,
)
from videoarchiver.processor.message_handler import MessageHandler
from videoarchiver.processor.queue_handler import QueueHandler
from videoarchiver.processor.reactions import (
handle_archived_reaction,
update_queue_position_reaction,
update_progress_reaction,
update_download_progress_reaction,
)
from videoarchiver.utils.progress_tracker import progress_tracker
# Export public classes and constants # Export public classes and constants
__all__ = [ __all__ = [