depdigest.utils package#

Submodules#

depdigest.utils.ast_tools module#

depdigest.utils.ast_tools.check_top_level_imports(file_path, soft_deps)[source]#

Scans a python file for top-level imports of given soft dependencies.

Parameters:
  • file_path (str)

  • soft_deps (Set[str])

Return type:

List[Tuple[int, str]]

depdigest.utils.ast_tools.validate_codebase(src_root, soft_deps, exempt_files=None, exempt_dirs=None)[source]#

Walks through a codebase and detects violations of the lazy-import rule.

Parameters:
  • src_root (str)

  • soft_deps (Set[str])

  • exempt_files (Set[str])

  • exempt_dirs (List[str])

Return type:

Dict[str, List[Tuple[int, str]]]

Module contents#