Classes
ConfigValidationError
Raised when configuration validation fails.
ConfigValidationError
Raised when configuration validation fails.
ValueError
ConfigValidator
Validates configuration with helpful error messages.
Single-responsibility validator class that ch…
ConfigValidator
Validates configuration with helpful error messages.
Single-responsibility validator class that checks:
- Type correctness (bool, int, str)
- Value ranges (min/max)
- Required fields
- Type coercion where sensible
Methods 1
validate
Validate configuration and return normalized version.
validate
def validate(self, config: dict[str, Any], source_file: Path | None = None) -> dict[str, Any]
Validate configuration and return normalized version.
Parameters 2
config |
dict[str, Any] |
Raw configuration dictionary |
source_file |
Path | None |
Optional source file for error context |
Returns
Validated and normalized configurationdict[str, Any]
—
Internal Methods 5
_flatten_config
Flatten nested configuration for validation.
Supports both:
- Flat: {parallel:…
_flatten_config
def _flatten_config(self, config: dict[str, Any]) -> dict[str, Any]
Flatten nested configuration for validation.
Supports both:
- Flat: {parallel: true, title: "Site"}
- Nested: {build: {parallel: true}, site: {title: "Site"}}
Parameters 1
config |
dict[str, Any] |
Returns
dict[str, Any]
_validate_types
Validate and coerce config value types.
_validate_types
def _validate_types(self, config: dict[str, Any]) -> list[str]
Validate and coerce config value types.
Parameters 1
config |
dict[str, Any] |
Returns
list[str]
_validate_ranges
Validate numeric ranges.
_validate_ranges
def _validate_ranges(self, config: dict[str, Any]) -> list[str]
Validate numeric ranges.
Parameters 1
config |
dict[str, Any] |
Returns
list[str]
_validate_dependencies
Validate field dependencies and logical consistency.
_validate_dependencies
def _validate_dependencies(self, config: dict[str, Any]) -> list[str]
Validate field dependencies and logical consistency.
Parameters 1
config |
dict[str, Any] |
Returns
list[str]
_print_errors
Print formatted validation errors.
_print_errors
def _print_errors(self, errors: list[str], source_file: Path | None = None) -> None
Print formatted validation errors.
Parameters 2
errors |
list[str] |
|
source_file |
Path | None |