Commit remaining tracked changes

This commit is contained in:
2026-04-19 18:57:26 +02:00
parent 2274403899
commit 9373f500d3
5 changed files with 39 additions and 380 deletions

View File

@@ -6,6 +6,7 @@ configuration, middleware setup, static file serving, and Jinja2 template
integration.
"""
import asyncio
import logging
from contextlib import asynccontextmanager
from pathlib import Path
@@ -51,7 +52,7 @@ async def _check_incomplete_series_on_startup(background_loader) -> None:
Args:
background_loader: BackgroundLoaderService instance
"""
logger = setup_logging(log_level="INFO")
logger = logging.getLogger("aniworld")
try:
from src.server.database.connection import get_db_session
@@ -96,11 +97,11 @@ async def _check_incomplete_series_on_startup(background_loader) -> None:
else:
logger.info("All series data is complete. No background loading needed.")
except Exception as e:
logger.exception("Error checking incomplete series: %s", e)
except Exception:
logger.exception("Error checking incomplete series")
except Exception as e:
logger.exception("Failed to check incomplete series on startup: %s", e)
except Exception:
logger.exception("Failed to check incomplete series on startup")
@asynccontextmanager

View File

@@ -22,6 +22,7 @@ from typing import Any, Dict, List, Optional
import structlog
from src.core.services.nfo_factory import get_nfo_factory
from src.server.services.websocket_service import WebSocketService
logger = structlog.get_logger(__name__)
@@ -550,17 +551,32 @@ class BackgroundLoaderService:
await self._broadcast_status(task, "Generating NFO file...")
logger.info("Creating new NFO for %s", task.key)
# Use existing NFOService to create NFO with all images
# This reuses all existing TMDB API logic and image downloading
nfo_path = await self.series_app.nfo_service.create_tvshow_nfo(
serie_name=task.name,
serie_folder=task.folder,
year=task.year,
download_poster=True,
download_logo=True,
download_fanart=True
)
# Create a fresh NFOService for this task to avoid shared TMDB session closure
try:
factory = get_nfo_factory()
nfo_service = factory.create()
except ValueError:
logger.warning(
"NFOService unavailable for %s, skipping NFO/images",
task.key
)
task.progress["nfo"] = False
task.progress["logo"] = False
task.progress["images"] = False
return False
try:
nfo_path = await nfo_service.create_tvshow_nfo(
serie_name=task.name,
serie_folder=task.folder,
year=task.year,
download_poster=True,
download_logo=True,
download_fanart=True
)
finally:
await nfo_service.close()
# Update task progress
task.progress["nfo"] = True
task.progress["logo"] = True