updating and refactoring codebase for improved performance and maintainability

This commit is contained in:
2026-05-03 17:29:32 -07:00
parent b7d3dc5f2d
commit 77cab1bd27
17 changed files with 590 additions and 294 deletions
+33 -33
View File
@@ -40,49 +40,49 @@ except ImportError:
PdfWriter = None
PdfReader = None
try:
from SYS.metadata import (
read_tags_from_file,
merge_multiple_tag_lists,
)
# Stub fallbacks used before SYS.metadata is lazily imported (or if unavailable).
HAS_METADATA_API: bool = False
_metadata_loaded: bool = False
HAS_METADATA_API = True
except ImportError:
HAS_METADATA_API = False
def read_tags_from_file(file_path: Path) -> List[str]:
return []
def read_tags_from_file(file_path: Path) -> List[str]:
return []
def write_tags_to_file(
file_path: Path,
tags: List[str],
source_hashes: Optional[List[str]] = None,
url: Optional[List[str]] = None,
append: bool = False,
) -> bool:
return False
def dedup_tags_by_namespace(tags: List[str]) -> List[str]:
return tags
def merge_multiple_tag_lists(sources: List[List[str]],
strategy: str = "first") -> List[str]:
out: List[str] = []
seen: set[str] = set()
for src in sources:
for t in src or []:
s = str(t)
if s and s not in seen:
out.append(s)
seen.add(s)
return out
def merge_multiple_tag_lists(sources: List[List[str]],
strategy: str = "first") -> List[str]:
out: List[str] = []
seen: set[str] = set()
for src in sources:
for t in src or []:
s = str(t)
if s and s not in seen:
out.append(s)
seen.add(s)
return out
def write_metadata(*_args: Any, **_kwargs: Any) -> None:
return None
def _ensure_metadata_imports() -> None:
"""Lazily import SYS.metadata to avoid loading Cryptodome (~1s) at startup."""
global _metadata_loaded, HAS_METADATA_API, read_tags_from_file, merge_multiple_tag_lists
if _metadata_loaded:
return
_metadata_loaded = True
try:
from SYS.metadata import ( # type: ignore[assignment]
read_tags_from_file as _rtf,
merge_multiple_tag_lists as _mml,
)
read_tags_from_file = _rtf # type: ignore[assignment]
merge_multiple_tag_lists = _mml # type: ignore[assignment]
HAS_METADATA_API = True
except ImportError:
HAS_METADATA_API = False
def _run(result: Any, args: Sequence[str], config: Dict[str, Any]) -> int:
"""Merge multiple files into one."""
_ensure_metadata_imports()
# Parse help
if should_show_help(args):