Expand description
Dependency resolution with semver constraints.
Algorithm:
- Resolve package refs/versions (MVS for git sources)
- Resolve package manifests bottom-up (deps before item seeds)
- Traverse items with DFS from seeded requests and frontmatter skill deps
- Emit deterministic alphabetical package order
Uses semver crate for all version parsing. No custom version logic.
Modules§
Structs§
- Package
Versions - Tracks resolved version per package and rejects divergent refs.
- Pending
Item - An item waiting to be processed in DFS traversal.
- Resolve
Options - Options controlling resolution behavior.
- Resolved
Graph - The resolved dependency graph — all sources with concrete versions.
- Resolved
Node - A single node in the resolved graph.
- Resolved
Version - Stored version information for a visited item.
- Resolver
Context - Mutable resolver state threaded through bottom-up resolution and DFS traversal.
- Rooted
Source Ref - Source checkout provenance and rooted package boundary.
- Visited
Set - Tracks visited items with version-aware lookup for DFS traversal.
Enums§
- Version
Check Result - Result of checking whether an item was seen already.
- Version
Constraint - How a version constraint was specified.
Traits§
- Manifest
Reader - Reads source manifests for transitive dependency discovery.
- Source
Fetcher - Fetches concrete source trees after the resolver has picked a strategy.
- Source
Provider - Composite trait used by
resolve(). - Version
Lister - Lists semver-tagged versions available for a git source.
Functions§
- parse_
version_ constraint - Parse a version string into a constraint.
- resolve
- Resolve the full dependency graph from config.