Expand description
Upgrade error types for package tools.
What: Defines error types specific to dependency upgrade detection, registry operations, backup management, and upgrade application operations.
How: Uses thiserror for error definitions with rich context information including
package names, dependency names, registry URLs, and backup paths. Implements
AsRef<str> for string conversion.
Why: To provide clear, actionable error messages for upgrade operations, enabling users to quickly identify and fix issues with registry communication, version resolution, backup management, and upgrade application.
§Examples
use sublime_pkg_tools::error::{UpgradeError, UpgradeResult};
fn detect_upgrades(package: &str) -> UpgradeResult<Vec<String>> {
if package.is_empty() {
return Err(UpgradeError::InvalidPackageName {
name: package.to_string(),
reason: "Package name cannot be empty".to_string(),
});
}
Ok(vec![])
}Enums§
- Upgrade
Error - Errors that can occur during dependency upgrade operations.
Type Aliases§
- Upgrade
Result - Result type alias for upgrade operations.