Module upgrade

Module upgrade 

Source
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§

UpgradeError
Errors that can occur during dependency upgrade operations.

Type Aliases§

UpgradeResult
Result type alias for upgrade operations.