From 8ef6315702277af0ca224e111ee2e27d1305f3ad Mon Sep 17 00:00:00 2001 From: Tamas Vajk Date: Tue, 28 Apr 2026 13:58:13 +0000 Subject: [PATCH] Pass --respect-source-config to cargo vendor Without this flag, `cargo vendor` ignores [source] replacement configured in .cargo/config.toml, causing it to bypass registry proxies and connect directly to index.crates.io. This breaks vendoring in environments that require a proxy (e.g. air-gapped networks, corporate firewalls). --- crate_universe/src/metadata.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/crate_universe/src/metadata.rs b/crate_universe/src/metadata.rs index 5a5f673976..e30315f383 100644 --- a/crate_universe/src/metadata.rs +++ b/crate_universe/src/metadata.rs @@ -256,6 +256,10 @@ impl VendorGenerator { .arg("--locked") .arg("--versioned-dirs") .arg(output_dir) + // Without this flag `cargo vendor` ignores `[source]` replacement + // in `.cargo/config.toml`, so it bypasses any configured registry + // proxy and connects directly to index.crates.io. + .arg("--respect-source-config") .env("RUSTC", &self.rustc_bin) .output() .with_context(|| {