pub struct LockfileEntry {
pub tool_id: String,
pub declared_version_req: String,
pub version: String,
pub spec_kind: SpecKind,
pub image_reference: String,
pub image_digest: String,
pub manifest_sha256: String,
pub image_size_bytes: Option<u64>,
pub layers: Vec<LayerDescriptor>,
pub resolved_at: DateTime<Utc>,
pub reference_data_pins: BTreeMap<String, ReferenceDataPin>,
pub binaries: Vec<String>,
}Expand description
One resolved tool entry in bv.lock.
Stability fields used by bv lock --check to detect drift:
tool_id, version, image_digest, manifest_sha256,
and the digest of every layer for factored_oci entries.
Timestamps and sizes are informational only.
Fields§
§tool_id: String§declared_version_req: StringVersion requirement as declared in bv.toml (e.g. =2.14.0, ^2, or *).
version: StringResolved semver (e.g. 2.14.0).
spec_kind: SpecKindHow the image was built; drives the pull path and layer verification strategy.
image_reference: StringCanonical OCI reference from the manifest (e.g. ncbi/blast:2.14.0).
image_digest: StringContent digest of the pulled image (e.g. sha256:abc123...).
manifest_sha256: StringSHA-256 of the manifest TOML at resolve time; used for drift detection.
image_size_bytes: Option<u64>§layers: Vec<LayerDescriptor>Per-layer descriptors (ordered as they appear in the OCI manifest).
Empty for legacy_image entries.
resolved_at: DateTime<Utc>§reference_data_pins: BTreeMap<String, ReferenceDataPin>§binaries: Vec<String>Binary names this tool contributes to the binary index.
Implementations§
Source§impl LockfileEntry
impl LockfileEntry
Sourcepub fn is_equivalent(&self, other: &Self) -> bool
pub fn is_equivalent(&self, other: &Self) -> bool
True when two entries represent the same resolved state.
Ignores timestamps, sizes, and declared_version_req.
For factored_oci entries, all layer digests must also match.
Trait Implementations§
Source§impl Clone for LockfileEntry
impl Clone for LockfileEntry
Source§fn clone(&self) -> LockfileEntry
fn clone(&self) -> LockfileEntry
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more