From 3457ecc776e87550bc1b1bd4bb686bde8bd5c504 Mon Sep 17 00:00:00 2001 From: onur-ozkan Date: Thu, 27 Jun 2024 13:06:10 +0300 Subject: [PATCH] remove unnecessary packages from `metadata::workspace_members` Currently bootstrap doesn't use any inner paths from rust-analyzer and bootstrap with `ShouldRun::create_or_deps`. Signed-off-by: onur-ozkan --- src/bootstrap/src/core/metadata.rs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/bootstrap/src/core/metadata.rs b/src/bootstrap/src/core/metadata.rs index 12867cb46b81..220eb5ba126e 100644 --- a/src/bootstrap/src/core/metadata.rs +++ b/src/bootstrap/src/core/metadata.rs @@ -66,7 +66,10 @@ pub fn build(build: &mut Build) { } /// Invokes `cargo metadata` to get package metadata of each workspace member. -fn workspace_members(build: &Build) -> impl Iterator { +/// +/// This is used to resolve specific crate paths in `fn should_run` to compile +/// particular crate (e.g., `x build sysroot` to build library/sysroot). +fn workspace_members(build: &Build) -> Vec { let collect_metadata = |manifest_path| { let mut cargo = Command::new(&build.initial_cargo); cargo @@ -85,9 +88,5 @@ fn workspace_members(build: &Build) -> impl Iterator { }; // Collects `metadata.packages` from all workspaces. - let packages = collect_metadata("Cargo.toml"); - let ra_packages = collect_metadata("src/tools/rust-analyzer/Cargo.toml"); - let bootstrap_packages = collect_metadata("src/bootstrap/Cargo.toml"); - - packages.into_iter().chain(ra_packages).chain(bootstrap_packages) + collect_metadata("Cargo.toml") }