Skip to main content

crate_cli/publish/
enum.rs

1use super::*;
2
3/// Error types for publish operation
4#[derive(Debug, thiserror::Error)]
5pub enum PublishError {
6    /// Failed to parse Cargo.toml
7    #[error("Failed to parse Cargo.toml")]
8    ManifestParseError,
9    /// Circular dependency detected
10    #[error("Circular dependency detected")]
11    CircularDependency,
12    /// A package is listed before one of its workspace-local
13    /// dependencies in `[workspace.members]`
14    #[error("invalid publish order: {0}")]
15    InvalidPublishOrder(String),
16    /// Sync step failed before publish could start
17    #[error("workspace sync failed: {0}")]
18    SyncFailed(#[from] crate::sync::SyncError),
19    /// IO error
20    #[error("IO error: {0}")]
21    IoError(#[from] io::Error),
22}