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
« 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.
7This package provides business logic for compiling, freezing, unfreezing,
8comparing, and auditing project dependencies.
9"""
11from mafw.devtools import ensure_devtools_available
13ensure_devtools_available()
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
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]
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