Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 76b849fc91 | |||
| 00b26c8cbc |
@@ -1 +1 @@
|
|||||||
v1.2.1
|
v1.2.2
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "aniworld-web",
|
"name": "aniworld-web",
|
||||||
"version": "1.2.1",
|
"version": "1.2.2",
|
||||||
"description": "Aniworld Anime Download Manager - Web Frontend",
|
"description": "Aniworld Anime Download Manager - Web Frontend",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ from src.config.settings import settings
|
|||||||
from src.core.entities.series import Serie
|
from src.core.entities.series import Serie
|
||||||
from src.core.exceptions.Exceptions import MatchNotFoundError, NoKeyFoundException
|
from src.core.exceptions.Exceptions import MatchNotFoundError, NoKeyFoundException
|
||||||
from src.core.providers.base_provider import Loader
|
from src.core.providers.base_provider import Loader
|
||||||
from src.core.utils.key_utils import generate_key_from_folder
|
from src.core.utils.key_utils import generate_key_from_folder, is_valid_key
|
||||||
from src.server.database.connection import get_sync_session
|
from src.server.database.connection import get_sync_session
|
||||||
from src.server.database.service import AnimeSeriesService, EpisodeService
|
from src.server.database.service import AnimeSeriesService, EpisodeService
|
||||||
|
|
||||||
@@ -726,6 +726,16 @@ class SerieScanner:
|
|||||||
try:
|
try:
|
||||||
generated_key = generate_key_from_folder(folder_name)
|
generated_key = generate_key_from_folder(folder_name)
|
||||||
year_from_folder = self._extract_year_from_folder_name(folder_name)
|
year_from_folder = self._extract_year_from_folder_name(folder_name)
|
||||||
|
|
||||||
|
# Validate that the generated key is usable
|
||||||
|
if not generated_key or not is_valid_key(generated_key):
|
||||||
|
logger.warning(
|
||||||
|
"Serie key is invalid for folder '%s' (key='%s') - skipping",
|
||||||
|
folder_name,
|
||||||
|
generated_key
|
||||||
|
)
|
||||||
|
return None
|
||||||
|
|
||||||
logger.info(
|
logger.info(
|
||||||
"Generated key for folder '%s' -> key='%s'",
|
"Generated key for folder '%s' -> key='%s'",
|
||||||
folder_name,
|
folder_name,
|
||||||
@@ -741,7 +751,7 @@ class SerieScanner:
|
|||||||
)
|
)
|
||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
logger.warning(
|
logger.warning(
|
||||||
"Failed to generate key for folder '%s': %s",
|
"Unexpected error generating key for folder '%s': %s",
|
||||||
folder_name,
|
folder_name,
|
||||||
exc
|
exc
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -602,6 +602,11 @@ async def validate_and_rename_series_folders(dry_run: bool = False) -> Dict[str,
|
|||||||
try:
|
try:
|
||||||
import shutil
|
import shutil
|
||||||
|
|
||||||
|
logger.warning(
|
||||||
|
"Removing source duplicate folder '%s' — target '%s' already exists",
|
||||||
|
current_name,
|
||||||
|
expected_name,
|
||||||
|
)
|
||||||
shutil.rmtree(series_dir)
|
shutil.rmtree(series_dir)
|
||||||
logger.info(
|
logger.info(
|
||||||
"Removed source folder '%s' — series already exists at target",
|
"Removed source folder '%s' — series already exists at target",
|
||||||
|
|||||||
Reference in New Issue
Block a user