polykit_core/
release_reporter.rs

1//! Trait for reporting release operations.
2
3/// Trait for reporting release version bumps.
4///
5/// This trait allows the core library to report release operations without
6/// directly writing to stdout/stderr, maintaining separation of concerns.
7pub trait ReleaseReporter: Send + Sync {
8    /// Reports a version bump operation.
9    ///
10    /// # Arguments
11    ///
12    /// * `package` - The package name being bumped
13    /// * `old` - The old version, if it existed
14    /// * `new` - The new version after bump
15    /// * `dry_run` - Whether this is a dry run (no actual changes made)
16    fn report_bump(&self, package: &str, old: Option<&str>, new: &str, dry_run: bool);
17}