pub struct TrunkReleaseStrategy<G, V, C, F> {
pub git: G,
pub vcs: V,
pub parser: C,
pub formatter: F,
pub config: Config,
pub prerelease_id: Option<String>,
pub draft: bool,
}Expand description
Concrete release strategy implementing the trunk-based release flow.
Fields§
§git: G§vcs: V§parser: C§formatter: F§config: Config§prerelease_id: Option<String>Pre-release identifier resolved from the active channel (None = stable).
draft: boolWhether the GitHub release should be created as a draft.
Trait Implementations§
Source§impl<G, V, C, F> ReleaseStrategy for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> ReleaseStrategy for TrunkReleaseStrategy<G, V, C, F>
Source§fn plan(&self) -> Result<ReleasePlan, ReleaseError>
fn plan(&self) -> Result<ReleasePlan, ReleaseError>
Compute the release plan without executing it or mutating files.
Used by
sr plan.Source§fn prepare(&self, plan: &ReleasePlan, dry_run: bool) -> Result<(), ReleaseError>
fn prepare(&self, plan: &ReleasePlan, dry_run: bool) -> Result<(), ReleaseError>
Write release-local state to disk (version_files + changelog) but
do not commit, tag, push, or publish. Idempotent: running twice
leaves the same files. Used by
sr prepare. Read moreSource§fn execute(&self, plan: &ReleasePlan, dry_run: bool) -> Result<(), ReleaseError>
fn execute(&self, plan: &ReleasePlan, dry_run: bool) -> Result<(), ReleaseError>
Apply the plan: commit + tag + push + create release + upload +
publish. Idempotent at each stage; safe to re-run.
Auto Trait Implementations§
impl<G, V, C, F> Freeze for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> RefUnwindSafe for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> Send for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> Sync for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> Unpin for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> UnsafeUnpin for TrunkReleaseStrategy<G, V, C, F>
impl<G, V, C, F> UnwindSafe for TrunkReleaseStrategy<G, V, C, F>
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