mirror of https://github.com/astral-sh/uv
Show terms in derivation tree debug output (#9862)
This commit is contained in:
parent
f0a2d6f076
commit
c2e2c39449
|
|
@ -387,35 +387,43 @@ fn display_tree_inner(
|
||||||
lines: &mut Vec<String>,
|
lines: &mut Vec<String>,
|
||||||
depth: usize,
|
depth: usize,
|
||||||
) {
|
) {
|
||||||
|
let prefix = " ".repeat(depth).to_string();
|
||||||
match error {
|
match error {
|
||||||
DerivationTree::Derived(derived) => {
|
DerivationTree::Derived(derived) => {
|
||||||
display_tree_inner(&derived.cause1, lines, depth + 1);
|
display_tree_inner(&derived.cause1, lines, depth + 1);
|
||||||
display_tree_inner(&derived.cause2, lines, depth + 1);
|
display_tree_inner(&derived.cause2, lines, depth + 1);
|
||||||
}
|
for (package, term) in &derived.terms {
|
||||||
DerivationTree::External(external) => {
|
match term {
|
||||||
let prefix = " ".repeat(depth).to_string();
|
Term::Positive(versions) => {
|
||||||
match external {
|
lines.push(format!("{prefix}term {package}{versions}"));
|
||||||
External::FromDependencyOf(package, version, dependency, dependency_version) => {
|
|
||||||
lines.push(format!(
|
|
||||||
"{prefix}{package}{version} depends on {dependency}{dependency_version}"
|
|
||||||
));
|
|
||||||
}
|
|
||||||
External::Custom(package, versions, reason) => match reason {
|
|
||||||
UnavailableReason::Package(_) => {
|
|
||||||
lines.push(format!("{prefix}{package} {reason}"));
|
|
||||||
}
|
}
|
||||||
UnavailableReason::Version(_) => {
|
Term::Negative(versions) => {
|
||||||
lines.push(format!("{prefix}{package}{versions} {reason}"));
|
lines.push(format!("{prefix}term not {package}{versions}"));
|
||||||
}
|
}
|
||||||
},
|
|
||||||
External::NoVersions(package, versions) => {
|
|
||||||
lines.push(format!("{prefix}no versions of {package}{versions}"));
|
|
||||||
}
|
|
||||||
External::NotRoot(package, versions) => {
|
|
||||||
lines.push(format!("{prefix}not root {package}{versions}"));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
DerivationTree::External(external) => match external {
|
||||||
|
External::FromDependencyOf(package, version, dependency, dependency_version) => {
|
||||||
|
lines.push(format!(
|
||||||
|
"{prefix}{package}{version} depends on {dependency}{dependency_version}"
|
||||||
|
));
|
||||||
|
}
|
||||||
|
External::Custom(package, versions, reason) => match reason {
|
||||||
|
UnavailableReason::Package(_) => {
|
||||||
|
lines.push(format!("{prefix}{package} {reason}"));
|
||||||
|
}
|
||||||
|
UnavailableReason::Version(_) => {
|
||||||
|
lines.push(format!("{prefix}{package}{versions} {reason}"));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
External::NoVersions(package, versions) => {
|
||||||
|
lines.push(format!("{prefix}no versions of {package}{versions}"));
|
||||||
|
}
|
||||||
|
External::NotRoot(package, versions) => {
|
||||||
|
lines.push(format!("{prefix}not root {package}{versions}"));
|
||||||
|
}
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue