config : use the defaults from defaults.py

Remove the defaults from the dataclasses as they are redundent with the
fallbacks of configparser.
Use the values in defaults.py as the fallbacks instead of hardcoded
values.
This commit is contained in:
2026-01-03 17:18:19 +01:00
parent a223f04909
commit 0e80ba0b0d

View File

@@ -7,16 +7,18 @@ from pathlib import Path
import ipaddress import ipaddress
import configparser import configparser
from unisync.defaults import *
@dataclass @dataclass
class ServerConfig: class ServerConfig:
""" """
Dataclass keeping the config for connecting to the server Dataclass keeping the config for connecting to the server
""" """
user: str user: str
sshargs: str = "" sshargs: str
hostname: str = "" hostname: str
ip: str = "" ip: str
port: int = 22 port: int
def __post_init__(self): def __post_init__(self):
""" """
@@ -44,15 +46,15 @@ class UnisonConfig:
""" """
Dataclass keeping unison specific configurations Dataclass keeping unison specific configurations
""" """
bools: list = field(default_factory=list) bools: list
values: dict = field(default_factory=dict) values: dict
@dataclass @dataclass
class OtherConfig: class OtherConfig:
""" """
Dataclass keeping miscellanous configuration options Dataclass keeping miscellanous configuration options
""" """
cache_dir_path: Path = Path("~/.unisync").expanduser() cache_dir_path: Path
@dataclass @dataclass
class Config: class Config:
@@ -62,7 +64,7 @@ class Config:
server: ServerConfig server: ServerConfig
roots: RootsConfig roots: RootsConfig
unison: UnisonConfig unison: UnisonConfig
other: OtherConfig = field(default_factory=OtherConfig) other: OtherConfig
def load_config(config_path:str) -> Config: def load_config(config_path:str) -> Config:
@@ -83,13 +85,13 @@ def load_config(config_path:str) -> Config:
server_config = ServerConfig( server_config = ServerConfig(
config.get(server_section, "user"), config.get(server_section, "user"),
config.get(server_section, "sshargs", fallback=""), config.get(server_section, "sshargs", fallback=DEFAULT_SERVER_SSHARGS),
config.get(server_section, "hostname", fallback=""), config.get(server_section, "hostname", fallback=DEFAULT_SERVER_HOSTNAME),
config.get(server_section, "ip", fallback=""), config.get(server_section, "ip", fallback=DEFAULT_SERVER_IP),
config.getint(server_section, "port", fallback=22) config.getint(server_section, "port", fallback=DEFAULT_SERVER_PORT)
) )
roots_config = RootsConfig( roots_config = RootsConfig(
config.get(roots_section, "local"), config.get(roots_section, "local", fallback=DEFAULT_ROOTS_LOCAL),
config.get(roots_section, "remote") config.get(roots_section, "remote")
) )
other_config = OtherConfig( other_config = OtherConfig(