Source code for haddock

"""HADDOCK3 library."""

import logging
import sys
from pathlib import Path
from importlib.metadata import version as package_version

log = logging.getLogger(__name__)
log.handlers.clear()
log.setLevel(logging.DEBUG)
handler = logging.StreamHandler(sys.stdout)
handler.setFormatter(
    logging.Formatter("[%(asctime)s %(module)s %(levelname)s] %(message)s")
)
log.addHandler(handler)

haddock3_source_path = Path(__file__).resolve().parent
haddock3_repository_path = haddock3_source_path.parents[1]
core_path = Path(haddock3_source_path, "core")
toppar_path = Path(haddock3_source_path, "cns", "toppar")
modules_defaults_path = Path(haddock3_source_path, "modules", "defaults.yaml")

FCC_path = Path(haddock3_source_path.parent, "fcc")
RMSD_path = Path(haddock3_source_path.parent, "fast-rmsdmatrix")

config_expert_levels = ("easy", "expert", "guru")
# yaml parameters with this `explevel` should be ignored when reading the yaml
_hidden_level = "hidden"


[docs] class EmptyPath: """Define the type EmptyPath.""" def __str__(self) -> str: return "" def __repr__(self) -> str: return "" def __bool__(self) -> bool: return False
# version version = package_version("haddock3") v_major, v_minor, v_patch = version.split(".")[:3] contact_us = "https://github.com/haddocking/haddock3/issues"