Rust API#
The public Rust API follows the version-one workflow rather than the retired scaffold/auto-emitter surface.
Canonical package modules#
Module |
Responsibility |
|---|---|
|
schema-versioned plan, profiles, locks, stack policy, CycloneDX conversion |
|
layered public profile TOML |
|
profile materialization and Resolvo lock generation |
|
one deterministic EasyBuild recipe per profile lock |
|
inspect, new-package plan, bump plan, and bundle writer |
Primary entry points:
inspect_new_package;plan_new_package;plan_package_bump;write_package_bundle;solve_package_profile/solve_package_profile_with_hierarchy;emit_profile_easyconfigs.
Parsing and stack solving#
parse_foreign_path and parse_foreign_str return the syntax-normalized
foreign model. package_plan_from_foreign is the canonical adapter.
eb_parse exposes EasyBuild parsing, robot tree merging, package gates, and
dependency checks. resolvo_provider implements candidate selection, policy
pins, stack preferences, locked pins, and exclusions. select provides the
whole-stack optimization path.
Targets and campaigns#
target exposes layered TOML types, target resolution, command plans, staging,
and target doctor reports. campaign exposes campaign state, typed findings,
claim/resolve operations, failure classification, and run_campaign.
Generated API pages#
The crate pages are generated from Rust source:
pixi run -e docs gen-rust-api