From d80815e9fb4d51ee0f8b9c417a0a06b2536e92c4 Mon Sep 17 00:00:00 2001 From: pacnpal <183241239+pacnpal@users.noreply.github.com> Date: Sun, 17 Nov 2024 22:24:09 +0000 Subject: [PATCH] fix(ffmpeg): add fallback to absolute imports in binary_manager.py --- videoarchiver/ffmpeg/binary_manager.py | 32 ++++++++++++++++++-------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/videoarchiver/ffmpeg/binary_manager.py b/videoarchiver/ffmpeg/binary_manager.py index bdf9a69..1f9d91a 100644 --- a/videoarchiver/ffmpeg/binary_manager.py +++ b/videoarchiver/ffmpeg/binary_manager.py @@ -5,18 +5,32 @@ import os from pathlib import Path from typing import Dict, Optional -from .exceptions import ( - FFmpegError, - DownloadError, - VerificationError, - PermissionError, - FFmpegNotFoundError -) -from .ffmpeg_downloader import FFmpegDownloader -from .verification_manager import VerificationManager +try: + # Try relative imports first + from .exceptions import ( + FFmpegError, + DownloadError, + VerificationError, + PermissionError, + FFmpegNotFoundError + ) + from .ffmpeg_downloader import FFmpegDownloader + from .verification_manager import VerificationManager +except ImportError: + # Fall back to absolute imports if relative imports fail + from videoarchiver.ffmpeg.exceptions import ( + FFmpegError, + DownloadError, + VerificationError, + PermissionError, + FFmpegNotFoundError + ) + from videoarchiver.ffmpeg.ffmpeg_downloader import FFmpegDownloader + from videoarchiver.ffmpeg.verification_manager import VerificationManager logger = logging.getLogger("FFmpegBinaryManager") + class BinaryManager: """Manages FFmpeg binary files and their lifecycle"""