@@ -71,6 +71,9 @@ config_data! {
7171 /// How many worker threads to handle priming caches. The default `0` means to pick automatically.
7272 cachePriming_numThreads: ParallelCachePrimingNumThreads = "0" ,
7373
74+ /// Pass `--all-targets` to cargo invocation. Overridden by `#rust-analyzer.check.allTargets#`
75+ /// when the latter is set.
76+ cargo_allTargets: bool = "true" ,
7477 /// Automatically refresh project info via `cargo metadata` on
7578 /// `Cargo.toml` or `.cargo/config.toml` changes.
7679 cargo_autoreload: bool = "true" ,
@@ -163,8 +166,8 @@ config_data! {
163166 /// Run the check command for diagnostics on save.
164167 checkOnSave | checkOnSave_enable: bool = "true" ,
165168
166- /// Check all targets and tests (`--all-targets`).
167- check_allTargets | checkOnSave_allTargets: bool = "true " ,
169+ /// Check all targets and tests (`--all-targets`). Overrides `#rust-analyzer.cargo.allTargets#`.
170+ check_allTargets | checkOnSave_allTargets: Option < bool > = "null " ,
168171 /// Cargo command to use for `cargo check`.
169172 check_command | checkOnSave_command: String = "\" check\" " ,
170173 /// Extra arguments for `cargo check`.
@@ -1273,6 +1276,7 @@ impl Config {
12731276 let sysroot_query_metadata = self . data . cargo_sysrootQueryMetadata ;
12741277
12751278 CargoConfig {
1279+ all_targets : self . data . cargo_allTargets ,
12761280 features : match & self . data . cargo_features {
12771281 CargoFeaturesDef :: All => CargoFeatures :: All ,
12781282 CargoFeaturesDef :: Selected ( features) => CargoFeatures :: Selected {
@@ -1383,7 +1387,7 @@ impl Config {
13831387 targets => Some ( targets. into ( ) ) ,
13841388 } )
13851389 . unwrap_or_else ( || self . data . cargo_target . clone ( ) . into_iter ( ) . collect ( ) ) ,
1386- all_targets : self . data . check_allTargets ,
1390+ all_targets : self . data . check_allTargets . unwrap_or ( self . data . cargo_allTargets ) ,
13871391 no_default_features : self
13881392 . data
13891393 . check_noDefaultFeatures
0 commit comments