Coverage for src / mafw / devtools / dependencies / __init__.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.14.0, created at 2026-06-28 13:34 +0000

1# Copyright 2026 European Union 

2# Author: Bulgheroni Antonio (antonio.bulgheroni@ec.europa.eu) 

3# SPDX-License-Identifier: EUPL-1.2 

4""" 

5Dependency management utilities for MAFw development tools. 

6 

7This package provides business logic for compiling, freezing, unfreezing, 

8comparing, and auditing project dependencies. 

9""" 

10 

11from mafw.devtools import ensure_devtools_available 

12 

13ensure_devtools_available() 

14 

15from mafw.devtools.dependencies.audit import run_pip_audit # noqa: E402 

16from mafw.devtools.dependencies.compare import ( # noqa: E402 

17 EXTENSION_FORMAT_MAP, 

18 PackageChange, 

19 VersionComparisonResult, 

20 compare_packages, 

21 render_comparison_json, 

22 render_comparison_markdown, 

23 render_comparison_rich, 

24 resolve_output_format, 

25) 

26from mafw.devtools.dependencies.compile import ( # noqa: E402 

27 collect_compiled_dependency_versions, 

28 compile_dependency_lockfile, 

29 compile_python_selector, 

30 ensure_mafw_project_root, 

31 load_pylock_packages, 

32 load_pyproject_doc, 

33 parse_python_version, 

34 project_python_versions, 

35 project_python_versions_from_doc, 

36 python_versions_between, 

37 read_compiled_dependency_versions, 

38) 

39from mafw.devtools.dependencies.freeze import ( # noqa: E402 

40 compute_upper_bound, 

41 freeze_dependencies, 

42 freeze_pyproject_toml, 

43 freeze_requirement, 

44 unfreeze_dependencies, 

45 unfreeze_pyproject_toml, 

46 unfreeze_requirement, 

47 update_requirements_and_readme, 

48) 

49from mafw.devtools.dependencies.verify import ( # noqa: E402 

50 get_expected_lower_bounds, 

51 verify_lowest_resolution, 

52) 

53from mafw.devtools.git import commit_dependency_unfreeze # noqa: E402 

54 

55__all__ = [ 

56 'EXTENSION_FORMAT_MAP', 

57 'PackageChange', 

58 'VersionComparisonResult', 

59 'collect_compiled_dependency_versions', 

60 'commit_dependency_unfreeze', 

61 'compare_packages', 

62 'compile_dependency_lockfile', 

63 'compile_python_selector', 

64 'compute_upper_bound', 

65 'ensure_mafw_project_root', 

66 'freeze_dependencies', 

67 'freeze_pyproject_toml', 

68 'freeze_requirement', 

69 'get_expected_lower_bounds', 

70 'load_pylock_packages', 

71 'load_pyproject_doc', 

72 'parse_python_version', 

73 'project_python_versions', 

74 'project_python_versions_from_doc', 

75 'python_versions_between', 

76 'read_compiled_dependency_versions', 

77 'render_comparison_json', 

78 'render_comparison_markdown', 

79 'render_comparison_rich', 

80 'resolve_output_format', 

81 'run_pip_audit', 

82 'unfreeze_dependencies', 

83 'unfreeze_pyproject_toml', 

84 'unfreeze_requirement', 

85 'update_requirements_and_readme', 

86 'verify_lowest_resolution', 

87] 

88 

89# Set canonical module for Sphinx cross-references 

90for _obj in ( 

91 PackageChange, 

92 VersionComparisonResult, 

93 collect_compiled_dependency_versions, 

94 commit_dependency_unfreeze, 

95 compare_packages, 

96 compile_dependency_lockfile, 

97 compile_python_selector, 

98 compute_upper_bound, 

99 ensure_mafw_project_root, 

100 freeze_dependencies, 

101 freeze_pyproject_toml, 

102 freeze_requirement, 

103 get_expected_lower_bounds, 

104 load_pylock_packages, 

105 load_pyproject_doc, 

106 parse_python_version, 

107 project_python_versions, 

108 project_python_versions_from_doc, 

109 python_versions_between, 

110 read_compiled_dependency_versions, 

111 render_comparison_json, 

112 render_comparison_markdown, 

113 render_comparison_rich, 

114 resolve_output_format, 

115 run_pip_audit, 

116 unfreeze_dependencies, 

117 unfreeze_pyproject_toml, 

118 unfreeze_requirement, 

119 update_requirements_and_readme, 

120 verify_lowest_resolution, 

121): 

122 _obj.__module__ = __name__ 

123del _obj