Source code for doot.errors.config

 1#!/usr/bin/env python3
 2"""
 3These are the doot specific errors that can occur
 4"""
 5# Imports:
 6from __future__ import annotations
 7
 8# ##-- stdlib imports
 9import logging as logmod
10from typing import (TYPE_CHECKING, Any, Callable, ClassVar, Final, Generator,
11                    Generic, Iterable, Iterator, Mapping, Match,
12                    MutableMapping, Protocol, Sequence, Tuple, TypeAlias,
13                    TypeGuard, TypeVar, cast, final, overload,
14                    runtime_checkable)
15
16# ##-- end stdlib imports
17
18##-- logging
19logging = logmod.getLogger(__name__)
20##-- end logging
21
22# ##-- Generated Exports
23__all__ = ( # noqa: RUF022
24
25# -- Classes
26"ConfigError", "InvalidConfigError", "MissingConfigError", "VersionMismatchError",
27
28)
29# ##-- end Generated Exports
30from ._base import DootError, UserError
31
[docs] 32class ConfigError(UserError): 33 """ Although the doot config was loaded, its format was incorrect """ 34 general_msg = "Doot Config Error:" 35 pass
36
[docs] 37class InvalidConfigError(ConfigError): 38 """ Trying to read either a 'doot.toml' or task toml file, 39 something went wrong. 40 """ 41 general_msg = "Invalid Doot Config:" 42 pass
43
[docs] 44class MissingConfigError(ConfigError): 45 """ An expecting core config value was not found """ 46 general_msg = "Doot Config Error:" 47 pass
48
[docs] 49class VersionMismatchError(ConfigError): 50 general_msg = "Doot Version Mismatch:" 51 pass