pub fn resolve_with_previous<'cfg>(
    registry: &mut PackageRegistry<'cfg>,
    ws: &Workspace<'cfg>,
    opts: &ResolveOpts,
    previous: Option<&Resolve>,
    to_avoid: Option<&HashSet<PackageId>>,
    specs: &[PackageIdSpec],
    register_patches: bool
) -> 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.