root
The root incompatibility.
case root
The root incompatibility.
case root
import PackageGraph
indirect enum Cause
Every incompatibility has a cause to explain its presence in the derivation graph. Only the root incompatibility uses .root
. All other incompatibilities are either obtained from dependency constraints, decided upon in decision making or derived during unit propagation or conflict resolution. Using this information we can build up a derivation graph by following the tree of causes. All leaf nodes are external dependencies and all internal nodes are derived incompatibilities.
struct Incompatibility
A set of terms that are incompatible with each other and can therefore not all be true at the same time. In dependency resolution, these are derived from version requirements and when running into unresolvable situations.
case dependency(node: DependencyResolutionNode)
The incompatibility represents a package’s dependency on another package.
case conflict(cause: ConflictCause)
The incompatibility was derived from two others during conflict resolution.
case noAvailableVersion
There exists no version to fulfill the specified requirement.
case versionBasedDependencyContainsUnversionedDependency(versionedDependency: PackageReference, unversionedDependency: PackageReference)
A version-based dependency contains unversioned-based dependency.
case incompatibleToolsVersion(ToolsVersion)
The package’s tools version is incompatible.