mirror of
https://github.com/astral-sh/uv.git
synced 2025-11-02 12:59:45 +00:00
uv-resolver: rejigger 'trace_resolution'
When I first wrote this routine, it was intended to only emit a trace for the final "unioned" resolution. But we actually moved that semantic operation to the construction of the resolution *graph*. So there is no unioned `Resolution` any more. But this is still useful to see. So I changed this to just emit a trace of *every* resolution right before constructing the graph. It might be nice to also emit a trace of the unioned graph too. Or perhaps we should do that instead if this proves too noisy. (Although this is only emitted at TRACE level.)
This commit is contained in:
parent
d6a14464ab
commit
94a0a0f2ee
1 changed files with 9 additions and 4 deletions
|
|
@ -366,7 +366,6 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
|
|||
);
|
||||
}
|
||||
|
||||
Self::trace_resolution(&resolution);
|
||||
resolutions.push(resolution);
|
||||
continue 'FORK;
|
||||
};
|
||||
|
|
@ -563,6 +562,7 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
|
|||
resolution.nodes.len()
|
||||
);
|
||||
}
|
||||
Self::trace_resolution(resolution);
|
||||
}
|
||||
ResolutionGraph::from_state(
|
||||
&resolutions,
|
||||
|
|
@ -579,7 +579,7 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
|
|||
}
|
||||
|
||||
/// When trace level logging is enabled, we dump the final
|
||||
/// unioned resolution, including markers, to help with
|
||||
/// set of resolutions, including markers, to help with
|
||||
/// debugging. Namely, this tells use precisely the state
|
||||
/// emitted by the resolver before going off to construct a
|
||||
/// resolution graph.
|
||||
|
|
@ -587,9 +587,14 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
|
|||
if !tracing::enabled!(Level::TRACE) {
|
||||
return;
|
||||
}
|
||||
if let Some(markers) = combined.markers.fork_markers() {
|
||||
trace!("Resolution: {:?}", markers);
|
||||
} else {
|
||||
trace!("Resolution: <matches all marker environments>");
|
||||
}
|
||||
for edge in &combined.edges {
|
||||
trace!(
|
||||
"Resolution: {} -> {}",
|
||||
"Resolution edge: {} -> {}",
|
||||
edge.from
|
||||
.as_ref()
|
||||
.map(PackageName::as_str)
|
||||
|
|
@ -619,7 +624,7 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
|
|||
if let Some(marker) = edge.marker.contents() {
|
||||
write!(msg, " ; {marker}").unwrap();
|
||||
}
|
||||
trace!("Resolution: {msg}");
|
||||
trace!("Resolution edge: {msg}");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue