Skip to main content

Module component

Module component 

Source
Expand description

component: include pin classification and resolution.

Two distinct steps, deliberately kept separate:

  • classify_component_pin_style — a pure, shape-only classification of the raw pin text, computed at parse time with no registry access (mirrors deps-github-actions’s is_tag_shaped — same documented trade-off: a textual release name that doesn’t look like a version is classified crate::types::PinStyle::Branch even when it later turns out to exactly match a published release).
  • resolve_component_pin — the FR-007 priority-ladder resolution against the project’s published releases (never the raw tag list — an unreleased tag is not a usable component version), run once release data is actually fetched.

Functions§

classify_component_pin_style
Classifies a component: pin’s raw text by shape alone.
gitlab_version_req
Parses raw as a semver::VersionReq, applying GitLab’s own partial-pin semantics.
resolve_component_pin
Resolves raw (a component: pin, already classified as pin) against releases.