EU-Utility/plugins/integration_tests/COMPATIBILITY_MATRIX.md

8.3 KiB

EU-Utility Compatibility Matrix

This document provides a comprehensive compatibility matrix for EU-Utility across different platforms and configurations.

Legend

Symbol Meaning
Full Support
⚠️ Limited/Partial Support
Not Supported
🔧 Requires Configuration
📦 Optional Dependency

Platform Support

Feature Windows 10/11 Windows 7/8 Ubuntu 22.04+ macOS 13+ WSL2
Core Application ⚠️ Limited ⚠️
Window Manager ⚠️
Global Hotkeys
Native Hotkeys ⚠️ ⚠️ ⚠️
System Tray
Notifications

Feature Compatibility

Window Management

Feature Windows Linux macOS
Find EU Window
Window Focus Detection
Bring to Front
Window Position
Screenshot (specific window) ⚠️ ⚠️

File Operations

Feature Windows Linux macOS
File Locking portalocker fcntl fcntl
Long Paths (>260) *
Unicode Paths
Atomic Writes
Cross-Platform Paths

*Requires Windows 10 1607+ with registry modification

OCR Engines

Engine Windows Linux macOS GPU Support Notes
EasyOCR CUDA/MPS Auto-downloads models
Tesseract Requires installation
PaddleOCR Chinese optimized
Windows OCR ⚠️ Windows 10 1809+

Network & APIs

Feature Windows Linux macOS Dependencies
HTTP Client requests, urllib
HTTPS/SSL certifi
WebSocket websockets
MQTT paho-mqtt 📦
gRPC ⚠️ ⚠️ ⚠️ grpcio 📦

External Integrations

Integration Windows Linux macOS Auth Required
Discord Webhooks Webhook URL
Home Assistant REST Long-Lived Token
Home Assistant MQTT Broker credentials
Spotify OAuth2
Twitch OAuth2
Stream Deck ⚠️ API Key

Python Dependencies

Core Dependencies (Required)

Package Windows Linux macOS Version
PyQt6 6.4+
pywin32 227+
pynput 1.7+
pillow 9.0+
requests 2.28+

Optional Dependencies

Package Purpose Windows Linux macOS
easyocr OCR Engine
pytesseract OCR Engine
paddleocr OCR Engine
paho-mqtt MQTT Client
aiohttp Async HTTP
websockets WebSocket
psutil System Info
portalocker File Lock 📦 📦
plyer Mobile features ⚠️ ⚠️

Plugin Compatibility

Built-in Plugins

Plugin Windows Linux macOS Requirements
Dashboard None
Universal Search Internet
Loot Tracker None
Skill Scanner OCR Engine
Game Reader (OCR) OCR Engine
Spotify Controller Spotify App
DPP Calculator None
Crafting Calc Nexus API
Codex Tracker Internet
Mission Tracker None

Integration Test Plugins

Plugin Windows Linux macOS Requirements
Discord Tester Webhook URL
Home Assistant Tester HA Instance
Browser Extension Tester Chrome/Firefox
Platform Compatibility None
Service Fallback None

Browser Extension Support

Browser Native Messaging WebSocket HTTP API
Chrome
Firefox
Edge
Safari
Opera ⚠️
Brave

Hardware Acceleration

Feature Windows Linux macOS Requirements
GPU OCR (CUDA) NVIDIA GPU
GPU OCR (MPS) Apple Silicon
Hardware Cursor ⚠️ ⚠️ Windows API
D3D/Vulkan Overlay Future

Known Limitations

Windows

  • Windows 7/8: Limited support, some features require Windows 10+
  • Windows 10 1607+: Required for long path support
  • Windows Defender: May flag some PyInstaller executables

Linux

  • Window Manager: No direct EU window interaction
  • Hotkeys: Requires xbindkeys or similar
  • Distribution: Tested on Ubuntu 22.04+, may vary on others
  • Wayland: Limited testing, mostly X11

macOS

  • Window Manager: No direct EU window interaction
  • Notarization: Unsigned builds may require manual approval
  • ARM64: Native support on Apple Silicon

WSL

  • GUI: Requires WSLg or X server
  • Performance: Reduced compared to native
  • Integration: Limited Windows interop

Installation Requirements

Minimum Requirements

Resource Minimum Recommended
RAM 4 GB 8 GB
Disk 500 MB 2 GB (with OCR models)
CPU Dual Core Quad Core
Display 1280x720 1920x1080
Internet Optional Recommended

Python Version

Version Support Notes
3.11 Recommended Best performance
3.12 Fully supported
3.10 ⚠️ Works, not recommended
3.9 Not supported

Troubleshooting

Common Issues by Platform

Windows

Issue Solution
"VCRUNTIME not found" Install Visual C++ Redistributable
Window not found Run EU as administrator
Hotkeys not working Check for conflicts with other apps

Linux

Issue Solution
display not found Set DISPLAY environment variable
Permission denied Check file permissions
Missing dependencies Install via package manager

macOS

Issue Solution
"App is damaged" Allow in Security & Privacy settings
Hotkeys not registering Grant accessibility permissions

Testing Matrix

Automated Tests

Test Suite Windows Linux macOS
Unit Tests
Integration Tests ⚠️
E2E Tests ⚠️
Performance Tests ⚠️ ⚠️

Manual Testing

Feature Windows Linux macOS
Plugin Loading Tested Tested Tested
Hotkey Registration Tested Tested Tested
Overlay Display Tested Tested Tested
OCR Accuracy Tested Tested Limited
Webhook Delivery Tested Tested Tested

Version History

Version Date Notable Changes
2.0.0 2024-XX Full integration test suite added
1.5.0 2024-XX Linux compatibility improvements
1.0.0 2024-XX Initial release (Windows only)

Contributing

To report compatibility issues:

  1. Run python scripts/platform_detector.py --json
  2. Include the output in your issue
  3. Describe the specific feature that doesn't work
  4. Include error messages and logs

License

This compatibility matrix is part of EU-Utility and is licensed under the MIT License.