pub struct PlanItem {
pub component_id: String,
pub current_version: String,
pub proposed_version: String,
pub validation_tier: ValidationTier,
pub selected: bool,
pub rationale: String,
pub dependencies: Vec<String>,
pub isolation_safe: bool,
pub risk_tier: RiskTier,
pub exclusive_group: String,
}Expand description
A single item in an update plan.
Fields§
§component_id: StringComponent ID.
current_version: StringCurrently installed version (empty if not installed).
proposed_version: StringProposed version to install.
validation_tier: ValidationTierValidation tier of this component.
selected: boolWhether this item is selected for apply.
rationale: StringHuman-readable rationale for this update.
dependencies: Vec<String>Component IDs this item depends on.
isolation_safe: boolWhether this component can be installed in isolation.
risk_tier: RiskTierRisk tier (low/medium/high).
exclusive_group: StringMutual-exclusion group (empty = none). Copied from the manifest component
so the planner can enforce at-most-one-per-group without re-reading the
manifest. See ManifestComponent::exclusive_group.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PlanItem
impl<'de> Deserialize<'de> for PlanItem
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for PlanItem
Auto Trait Implementations§
impl Freeze for PlanItem
impl RefUnwindSafe for PlanItem
impl Send for PlanItem
impl Sync for PlanItem
impl Unpin for PlanItem
impl UnsafeUnpin for PlanItem
impl UnwindSafe for PlanItem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more