Coverage for lintro / config / __init__.py: 100%

4 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-04-03 18:53 +0000

1"""Lintro configuration module. 

2 

3This module provides a tiered configuration system: 

41. EXECUTION: What tools run and how 

52. ENFORCE: Cross-cutting settings injected via CLI flags 

63. DEFAULTS: Fallback config when no native config exists 

74. TOOLS: Per-tool enable/disable and config source 

8 

9Key components: 

10- LintroConfig: Main configuration dataclass 

11- EnforceConfig: Cross-cutting settings enforced via CLI 

12- ConfigLoader: Loads .lintro-config.yaml 

13- ToolConfigGenerator: CLI injection and defaults generation 

14""" 

15 

16from lintro.config.config_loader import ( 

17 clear_config_cache, 

18 get_config, 

19 get_default_config, 

20 load_config, 

21) 

22from lintro.config.lintro_config import ( 

23 EnforceConfig, 

24 ExecutionConfig, 

25 LintroConfig, 

26 LintroToolConfig, 

27) 

28from lintro.config.tool_config_generator import ( 

29 generate_defaults_config, 

30 get_defaults_injection_args, 

31 get_enforce_cli_args, 

32 has_native_config, 

33) 

34 

35__all__ = [ 

36 # Config dataclasses 

37 "EnforceConfig", 

38 "ExecutionConfig", 

39 "LintroConfig", 

40 "LintroToolConfig", 

41 # Config loading 

42 "clear_config_cache", 

43 "get_config", 

44 "get_default_config", 

45 "load_config", 

46 # New tiered model functions 

47 "get_enforce_cli_args", 

48 "has_native_config", 

49 "generate_defaults_config", 

50 "get_defaults_injection_args", 

51]