pub async fn load_resolved_versions(
uri: &Url,
lockfile_cache: &Arc<LockFileCache>,
ecosystem: &dyn Ecosystem,
) -> LockfileLoadExpand description
Loads resolved versions from lock file for a given manifest URI.
Uses the ecosystem’s lockfile provider to locate the lock file, then
parse_known_lockfile to parse it. See LockfileLoad for what each outcome means.
§Examples
use deps_core::HttpCache;
use deps_core::lockfile::LockFileCache;
use deps_core::test_util::test_uri;
use deps_engine::classify::resolved::{LockfileLoad, load_resolved_versions};
use deps_engine::setup::CargoEcosystem;
use std::sync::Arc;
#[tokio::main]
async fn main() {
let ecosystem = CargoEcosystem::new(Arc::new(HttpCache::new()));
let lockfile_cache = Arc::new(LockFileCache::new());
// No `Cargo.lock` exists at this synthetic path, so this is a genuine absence — the
// same fast path a manifest with no lock file takes in production.
let uri = test_uri("/nonexistent-for-doctest/Cargo.toml");
let load = load_resolved_versions(&uri, &lockfile_cache, &ecosystem).await;
assert_eq!(load, LockfileLoad::Absent);
}