From 1ccd7d2e61b7c4e20d3f29813f47e0f010231ce7 Mon Sep 17 00:00:00 2001 From: LemonNexus Date: Sat, 14 Feb 2026 18:16:56 +0000 Subject: [PATCH] fix: Add missing dependencies and fix type mismatch BUGS FIXED: 1. Missing dependencies in requirements.txt: - Added pytesseract>=0.3.10 (OCR service needs it) - Added psutil>=5.9.0 (Analytics plugin needs it) - Added pywin32>=306 for Windows (window/screenshot needs it) 2. Type mismatch in plugin_api.py: - get_eu_window() documented as returning Dict[str, Any] - But actually returned WindowInfo dataclass - Fixed: Now converts WindowInfo to dict before returning This should resolve most import and type errors users were seeing. --- core/plugin_api.py | 16 +++++++++++++++- requirements.txt | 7 ++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/core/plugin_api.py b/core/plugin_api.py index 4bda204..8fe823d 100644 --- a/core/plugin_api.py +++ b/core/plugin_api.py @@ -1163,7 +1163,21 @@ class PluginAPI: if not window_manager: return None - return window_manager.find_eu_window() + info = window_manager.find_eu_window() + if info is None: + return None + + # Convert WindowInfo to dict for consistent API + return { + 'handle': info.handle, + 'title': info.title, + 'pid': info.pid, + 'rect': info.rect, + 'width': info.width, + 'height': info.height, + 'is_visible': info.is_visible, + 'is_focused': info.is_focused, + } def is_eu_focused(self) -> bool: """Check if Entropia Universe window is currently focused. diff --git a/requirements.txt b/requirements.txt index ba5f96f..08bdb83 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,11 +5,16 @@ keyboard>=0.13.5 # OCR and Image Processing (for Game Reader and Skill Scanner) easyocr>=1.7.0 +pytesseract>=0.3.10 # Tesseract OCR wrapper pyautogui>=0.9.54 pillow>=10.0.0 -# Cross-platform file locking (Windows) +# Windows-specific (auto-installs only on Windows) portalocker>=2.7.0; platform_system=="Windows" +pywin32>=306; platform_system=="Windows" # Windows API access + +# System monitoring (for Analytics plugin) +psutil>=5.9.0 # Clipboard support pyperclip>=1.8.2