Fix emit_progress AttributeError

Replace non-existent emit_progress calls with proper ProgressService methods:
- start_progress for starting operations
- update_progress for progress updates
- complete_progress for successful completion
- fail_progress for failures

Convert percentage-based updates to current/total based on ProgressService API
This commit is contained in:
2026-01-23 15:06:49 +01:00
parent f89649fe20
commit c586e9f69d
2 changed files with 42 additions and 72 deletions

View File

@@ -156,24 +156,34 @@ async def setup_auth(req: SetupRequest):
await perform_nfo_scan_if_needed(progress_service)
# Send completion event
progress_service.emit_progress(
from src.server.services.progress_service import ProgressType
await progress_service.start_progress(
progress_id="initialization_complete",
progress_type="system",
status="completed",
progress_type=ProgressType.SYSTEM,
title="Initialization Complete",
total=100,
message="All initialization tasks completed successfully",
metadata={"initialization_complete": True}
)
await progress_service.complete_progress(
progress_id="initialization_complete",
message="All initialization tasks completed successfully",
percent=100,
metadata={"initialization_complete": True}
)
except Exception as e:
# Send error event
progress_service.emit_progress(
from src.server.services.progress_service import ProgressType
await progress_service.start_progress(
progress_id="initialization_error",
progress_type="error",
status="failed",
progress_type=ProgressType.ERROR,
title="Initialization Failed",
total=100,
message=str(e),
percent=0,
metadata={"initialization_complete": True, "error": str(e)}
)
await progress_service.fail_progress(
progress_id="initialization_error",
error_message=str(e),
metadata={"initialization_complete": True, "error": str(e)}
)

View File

@@ -31,13 +31,13 @@ async def perform_initial_setup(progress_service=None):
# Send initial progress update
if progress_service:
progress_service.emit_progress(
from src.server.services.progress_service import ProgressType
await progress_service.start_progress(
progress_id="series_sync",
progress_type="system",
status="started",
progress_type=ProgressType.SYSTEM,
title="Syncing Series Database",
total=100,
message="Checking initialization status...",
percent=0,
metadata={"step_id": "series_sync"}
)
@@ -53,13 +53,9 @@ async def perform_initial_setup(progress_service=None):
"Initial scan already completed, skipping data file sync"
)
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="series_sync",
progress_type="system",
status="completed",
title="Syncing Series Database",
message="Already completed",
percent=100,
metadata={"step_id": "series_sync"}
)
return False
@@ -86,13 +82,9 @@ async def perform_initial_setup(progress_service=None):
"Initialization skipped - anime directory not configured"
)
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="series_sync",
progress_type="system",
status="completed",
title="Syncing Series Database",
message="No anime directory configured",
percent=100,
metadata={"step_id": "series_sync"}
)
return False
@@ -101,13 +93,10 @@ async def perform_initial_setup(progress_service=None):
if not is_initial_scan_done:
logger.info("Performing initial anime folder scan...")
if progress_service:
progress_service.emit_progress(
await progress_service.update_progress(
progress_id="series_sync",
progress_type="system",
status="in_progress",
title="Syncing Series Database",
current=25,
message="Scanning anime folders...",
percent=25,
metadata={"step_id": "series_sync"}
)
@@ -119,13 +108,10 @@ async def perform_initial_setup(progress_service=None):
)
if progress_service:
progress_service.emit_progress(
await progress_service.update_progress(
progress_id="series_sync",
progress_type="system",
status="in_progress",
title="Syncing Series Database",
current=75,
message=f"Synced {sync_count} series from data files",
percent=75,
metadata={"step_id": "series_sync"}
)
@@ -154,13 +140,9 @@ async def perform_initial_setup(progress_service=None):
logger.info("Series loaded from database into memory")
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="series_sync",
progress_type="system",
status="completed",
title="Syncing Series Database",
message="Series loaded into memory",
percent=100,
metadata={"step_id": "series_sync"}
)
@@ -181,13 +163,13 @@ async def perform_nfo_scan_if_needed(progress_service=None):
from src.server.database.system_settings_service import SystemSettingsService
if progress_service:
progress_service.emit_progress(
from src.server.services.progress_service import ProgressType
await progress_service.start_progress(
progress_id="nfo_scan",
progress_type="system",
status="started",
progress_type=ProgressType.SYSTEM,
title="Processing NFO Metadata",
total=100,
message="Checking NFO scan status...",
percent=0,
metadata={"step_id": "nfo_scan"}
)
@@ -213,13 +195,10 @@ async def perform_nfo_scan_if_needed(progress_service=None):
logger.info("Performing initial NFO scan...")
if progress_service:
progress_service.emit_progress(
await progress_service.update_progress(
progress_id="nfo_scan",
progress_type="system",
status="in_progress",
title="Processing NFO Metadata",
current=25,
message="Scanning series for NFO files...",
percent=25,
metadata={"step_id": "nfo_scan"}
)
@@ -231,13 +210,10 @@ async def perform_nfo_scan_if_needed(progress_service=None):
manager = SeriesManagerService.from_settings()
if progress_service:
progress_service.emit_progress(
await progress_service.update_progress(
progress_id="nfo_scan",
progress_type="system",
status="in_progress",
title="Processing NFO Metadata",
current=50,
message="Processing NFO files with TMDB data...",
percent=50,
metadata={"step_id": "nfo_scan"}
)
@@ -246,13 +222,9 @@ async def perform_nfo_scan_if_needed(progress_service=None):
logger.info("Initial NFO scan completed")
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="nfo_scan",
progress_type="system",
status="completed",
title="Processing NFO Metadata",
message="NFO scan completed successfully",
percent=100,
metadata={"step_id": "nfo_scan"}
)
@@ -276,13 +248,9 @@ async def perform_nfo_scan_if_needed(progress_service=None):
exc_info=True
)
if progress_service:
progress_service.emit_progress(
await progress_service.fail_progress(
progress_id="nfo_scan",
progress_type="system",
status="failed",
title="Processing NFO Metadata",
message=f"NFO scan failed: {str(e)}",
percent=0,
error_message=f"NFO scan failed: {str(e)}",
metadata={"step_id": "nfo_scan"}
)
else:
@@ -290,13 +258,9 @@ async def perform_nfo_scan_if_needed(progress_service=None):
"Skipping NFO scan - already completed on previous run"
)
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="nfo_scan",
progress_type="system",
status="completed",
title="Processing NFO Metadata",
message="Already completed",
percent=100,
metadata={"step_id": "nfo_scan"}
)
else:
@@ -309,13 +273,9 @@ async def perform_nfo_scan_if_needed(progress_service=None):
message = "Skipped - NFO features disabled"
if progress_service:
progress_service.emit_progress(
await progress_service.complete_progress(
progress_id="nfo_scan",
progress_type="system",
status="completed",
title="Processing NFO Metadata",
message=message,
percent=100,
metadata={"step_id": "nfo_scan"}
)
else: