Function cargo::ops::resolve_with_previous
source · pub fn resolve_with_previous<'cfg>(
registry: &mut PackageRegistry<'cfg>,
ws: &Workspace<'cfg>,
cli_features: &CliFeatures,
has_dev_units: HasDevUnits,
previous: Option<&Resolve>,
to_avoid: Option<&HashSet<PackageId>>,
specs: &[PackageIdSpec],
register_patches: bool,
max_rust_version: Option<&RustVersion>
) -> CargoResult<Resolve>
Expand description
Resolves all dependencies for a package using an optional previous instance of resolve to guide the resolution process.
This also takes an optional hash set, to_avoid
, which is a list of package
IDs that should be avoided when consulting the previous instance of resolve
(often used in pairings with updates).
The previous resolve normally comes from a lock file. This function does not read or write lock files from the filesystem.
specs
may be empty, which indicates it should resolve all workspace
members. In this case, opts.all_features
must be true
.
If register_patches
is true, then entries from the [patch]
table in
the manifest will be added to the given PackageRegistry
.