Skip to main content

Crate monochange_graph

Crate monochange_graph 

Source
Expand description

§monochange_graph

monochange_graph turns normalized workspace data into release decisions.

Reach for this crate when you already have discovered packages, dependency edges, configuration, and change signals and need to calculate propagated bumps, synchronized version groups, and final release-plan output.

§Why use it?

  • calculate release impact across direct and transitive dependents
  • keep version groups synchronized during planning
  • produce one deterministic release plan from normalized input data

§Best for

  • embedding release-planning logic in custom automation or other tools
  • computing the exact set of packages that need to move after a change
  • separating planning logic from ecosystem-specific discovery code

§Public entry points

  • NormalizedGraph builds adjacency and reverse-dependency views over package data
  • build_release_plan(workspace_root, packages, dependency_edges, defaults, version_groups, change_signals, providers) computes the release plan

§Responsibilities

  • build reverse dependency views
  • propagate release impact across direct and transitive dependents
  • synchronize version groups
  • calculate planned group versions

Structs§

NormalizedGraph
Reverse-dependency graph over discovered packages.

Functions§

build_release_plan
Compute a release plan from normalized packages, changes, and compatibility evidence.