pulith-version
Version parsing, matching, and preference selection.
Role
pulith-version is a pure primitive crate.
It owns:
- version parsing
- requirement matching
- generic preference selection
It does not own:
- resource-specific alias meaning
- repository policy
- planner-specific source policy
Main APIs
VersionKindVersionRequirementVersionPreferenceSelectionPolicyselect_preferred
Basic Usage
use ;
let versions = ;
let policy = SelectionPolicy ;
let selected = select_preferred.unwrap;
assert_eq!;
# Ok::
How To Use It
Use this crate when a caller already has candidate versions and needs a consistent, reusable way to:
- parse version strings
- match requirements
- prefer stable/latest/lowest/pinned variants
Let higher-level crates decide what aliases like stable or lts mean in resource-specific terms.
See docs/design/version.md.