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}