On this page
Monorepo impact analysis command: show affected packages from a change.
#rlsbl.commands.monorepo.impact
#rlsbl.commands.monorepo.impact
Monorepo impact analysis command: show affected packages from a change.
#_map_file_to_package
def _map_file_to_package(file_path, projects, root)Map a file path (relative to repo root) to its containing package name.
Checks which project's path is a prefix of the file path. When multiple projects match (nested paths), the most specific (longest) prefix wins. Returns the project name or None if no project matches.
#_get_changed_files_from_git
def _get_changed_files_from_git(since_ref, root)Run git diff --name-only {since_ref}..HEAD and return file paths.
#_get_affected_packages_from_git
def _get_affected_packages_from_git(since_ref, projects, root)Map git-changed files to workspace package names.
#_is_file_path
def _is_file_path(arg)Heuristic: does the argument look like a file path rather than a package name?
#_compute_impact
def _compute_impact(package_names, graph, depth)Compute direct and transitive dependents for a set of packages.
Returns a dict with: input, direct_dependents, transitive_dependents, test_scope, release_candidates.
#_render_text
def _render_text(impact_data)Format impact data as human-readable text.
#_render_json
def _render_json(impact_data)Format impact data as JSON.
#_cmd_impact
def _cmd_impact(args, flags)Analyze the impact of changes on the monorepo dependency graph.