Skip to content

Commit

Permalink
fix: ALL config validation
Browse files Browse the repository at this point in the history
  • Loading branch information
NTFSvolume committed Nov 29, 2024
1 parent 5f64196 commit 4b226c0
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 12 deletions.
3 changes: 0 additions & 3 deletions cyberdrop_dl/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import logging
import os
import sys
from copy import deepcopy
from functools import wraps
from pathlib import Path
from textwrap import indent
Expand Down Expand Up @@ -50,9 +49,7 @@ def startup() -> Manager:
manager = Manager()
manager.startup()
if manager.parsed_args.cli_only_args.multiconfig:
original_manager = deepcopy(manager)
manager.validate_all_configs()
manager = original_manager

if not manager.parsed_args.cli_only_args.download:
ProgramUI(manager)
Expand Down
14 changes: 7 additions & 7 deletions cyberdrop_dl/managers/config_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
class ConfigManager:
def __init__(self, manager: Manager) -> None:
self.manager = manager
self.loaded_config: str = field(init=False)
self.loaded_config: str = None

self.authentication_settings: Path = field(init=False)
self.settings: Path = field(init=False)
Expand All @@ -32,12 +32,12 @@ def __init__(self, manager: Manager) -> None:

def startup(self) -> None:
"""Startup process for the config manager."""
if not isinstance(self.loaded_config, str):
self.loaded_config = self.manager.cache_manager.get("default_config")
if not self.loaded_config:
self.loaded_config = "Default"
if self.manager.parsed_args.cli_only_args.config:
self.loaded_config = self.manager.parsed_args.cli_only_args.config
self.loaded_config = self.loaded_config or self.manager.cache_manager.get("default_config")
if not self.loaded_config or self.loaded_config.casefold() == "all":
self.loaded_config = "Default"
cli_config = self.manager.parsed_args.cli_only_args.config
if cli_config and cli_config.casefold() != "all":
self.loaded_config = self.manager.parsed_args.cli_only_args.config

self.settings = self.manager.path_manager.config_folder / self.loaded_config / "settings.yaml"
self.global_settings = self.manager.path_manager.config_folder / "global_settings.yaml"
Expand Down
6 changes: 4 additions & 2 deletions cyberdrop_dl/managers/manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
from cyberdrop_dl.managers.realdebrid_manager import RealDebridManager
from cyberdrop_dl.utils.args import ParsedArgs
from cyberdrop_dl.utils.data_enums_classes.supported_domains import SupportedForums
from cyberdrop_dl.utils.logger import log
from cyberdrop_dl.utils.logger import log, print_to_console
from cyberdrop_dl.utils.transfer.first_time_setup import TransitionManager

if TYPE_CHECKING:
Expand Down Expand Up @@ -212,8 +212,10 @@ async def close(self) -> None:
self.hash_manager: HashManager = field(init=False)

def validate_all_configs(self) -> None:
log("validating all configs, please wait..")
print_to_console("validating all configs, please wait...")
all_configs = self.config_manager.get_configs()
all_configs.sort()
if not all_configs:
return
for config in all_configs:
self.config_manager.change_config(config)

0 comments on commit 4b226c0

Please sign in to comment.