pub enum PubGrubError<P: Package, V: Version> {
NoSolution(DerivationTree<P, V>),
ErrorRetrievingDependencies {
package: P,
version: V,
source: Box<dyn Error>,
},
DependencyOnTheEmptySet {
package: P,
version: V,
dependent: P,
},
SelfDependency {
package: P,
version: V,
},
ErrorChoosingPackageVersion(Box<dyn Error>),
ErrorInShouldCancel(Box<dyn Error>),
Failure(String),
}Expand description
Errors that may occur while solving dependencies.
Variants§
NoSolution(DerivationTree<P, V>)
There is no solution for this set of dependencies.
ErrorRetrievingDependencies
Error arising when the implementer of DependencyProvider returned an error in the method get_dependencies.
Fields
package: PPackage whose dependencies we want.
version: VVersion of the package for which we want the dependencies.
source: Box<dyn Error>Error raised by the implementer of DependencyProvider.
DependencyOnTheEmptySet
Error arising when the implementer of DependencyProvider returned a dependency on an empty range. This technically means that the package can not be selected, but is clearly some kind of mistake.
Fields
package: PPackage whose dependencies we want.
version: VVersion of the package for which we want the dependencies.
dependent: PThe dependent package that requires us to pick from the empty set.
SelfDependency
Error arising when the implementer of DependencyProvider returned a dependency on the requested package. This technically means that the package directly depends on itself, and is clearly some kind of mistake.
Fields
package: PPackage whose dependencies we want.
version: VVersion of the package for which we want the dependencies.
ErrorChoosingPackageVersion(Box<dyn Error>)
Error arising when the implementer of DependencyProvider returned an error in the method choose_package_version.
ErrorInShouldCancel(Box<dyn Error>)
Error arising when the implementer of DependencyProvider returned an error in the method should_cancel.
Failure(String)
Something unexpected happened.