From 3937b225e7918ae6d75849a0959754af43fbf08c Mon Sep 17 00:00:00 2001 From: Paul Daniel Faria Date: Sun, 7 Jun 2020 10:29:03 -0400 Subject: Change management of test cfg to better support json projects --- crates/rust-analyzer/src/cli/load_cargo.rs | 1 - crates/rust-analyzer/src/global_state.rs | 1 - 2 files changed, 2 deletions(-) (limited to 'crates/rust-analyzer') diff --git a/crates/rust-analyzer/src/cli/load_cargo.rs b/crates/rust-analyzer/src/cli/load_cargo.rs index c7e86fe0c..46181b677 100644 --- a/crates/rust-analyzer/src/cli/load_cargo.rs +++ b/crates/rust-analyzer/src/cli/load_cargo.rs @@ -151,7 +151,6 @@ pub(crate) fn load( // FIXME: cfg options? let default_cfg_options = { let mut opts = get_rustc_cfg_options(None); - opts.insert_atom("test".into()); opts.insert_atom("debug_assertion".into()); opts }; diff --git a/crates/rust-analyzer/src/global_state.rs b/crates/rust-analyzer/src/global_state.rs index 0bebb5bf6..4d871aa34 100644 --- a/crates/rust-analyzer/src/global_state.rs +++ b/crates/rust-analyzer/src/global_state.rs @@ -138,7 +138,6 @@ impl GlobalState { // FIXME: Read default cfgs from config let default_cfg_options = { let mut opts = get_rustc_cfg_options(config.cargo.target.as_ref()); - opts.insert_atom("test".into()); opts.insert_atom("debug_assertion".into()); opts }; -- cgit v1.2.3 From 9c35f135b9c872e904ee1e838cfa69fc5745c45f Mon Sep 17 00:00:00 2001 From: Paul Daniel Faria Date: Mon, 8 Jun 2020 10:23:20 -0400 Subject: Remove default_cfg_options, pass target instead so it can be used for building cargo workspaces --- crates/rust-analyzer/src/cli/load_cargo.rs | 20 ++++---------------- crates/rust-analyzer/src/global_state.rs | 11 ++--------- 2 files changed, 6 insertions(+), 25 deletions(-) (limited to 'crates/rust-analyzer') diff --git a/crates/rust-analyzer/src/cli/load_cargo.rs b/crates/rust-analyzer/src/cli/load_cargo.rs index 46181b677..8f2aeac77 100644 --- a/crates/rust-analyzer/src/cli/load_cargo.rs +++ b/crates/rust-analyzer/src/cli/load_cargo.rs @@ -8,8 +8,7 @@ use crossbeam_channel::{unbounded, Receiver}; use ra_db::{ExternSourceId, FileId, SourceRootId}; use ra_ide::{AnalysisChange, AnalysisHost}; use ra_project_model::{ - get_rustc_cfg_options, CargoConfig, PackageRoot, ProcMacroClient, ProjectManifest, - ProjectWorkspace, + CargoConfig, PackageRoot, ProcMacroClient, ProjectManifest, ProjectWorkspace, }; use ra_vfs::{RootEntry, Vfs, VfsChange, VfsTask, Watch}; use rustc_hash::{FxHashMap, FxHashSet}; @@ -148,25 +147,14 @@ pub(crate) fn load( } } - // FIXME: cfg options? - let default_cfg_options = { - let mut opts = get_rustc_cfg_options(None); - opts.insert_atom("debug_assertion".into()); - opts - }; - - let crate_graph = ws.to_crate_graph( - &default_cfg_options, - &extern_source_roots, - proc_macro_client, - &mut |path: &Path| { + let crate_graph = + ws.to_crate_graph(None, &extern_source_roots, proc_macro_client, &mut |path: &Path| { // Some path from metadata will be non canonicalized, e.g. /foo/../bar/lib.rs let path = path.canonicalize().ok()?; let vfs_file = vfs.load(&path); log::debug!("vfs file {:?} -> {:?}", path, vfs_file); vfs_file.map(vfs_file_to_id) - }, - ); + }); log::debug!("crate graph: {:?}", crate_graph); analysis_change.set_crate_graph(crate_graph); diff --git a/crates/rust-analyzer/src/global_state.rs b/crates/rust-analyzer/src/global_state.rs index 4d871aa34..0b52030cf 100644 --- a/crates/rust-analyzer/src/global_state.rs +++ b/crates/rust-analyzer/src/global_state.rs @@ -15,7 +15,7 @@ use ra_flycheck::{Flycheck, FlycheckConfig}; use ra_ide::{ Analysis, AnalysisChange, AnalysisHost, CrateGraph, FileId, LibraryData, SourceRootId, }; -use ra_project_model::{get_rustc_cfg_options, ProcMacroClient, ProjectWorkspace}; +use ra_project_model::{ProcMacroClient, ProjectWorkspace}; use ra_vfs::{LineEndings, RootEntry, Vfs, VfsChange, VfsFile, VfsRoot, VfsTask, Watch}; use relative_path::RelativePathBuf; use stdx::format_to; @@ -135,13 +135,6 @@ impl GlobalState { } } - // FIXME: Read default cfgs from config - let default_cfg_options = { - let mut opts = get_rustc_cfg_options(config.cargo.target.as_ref()); - opts.insert_atom("debug_assertion".into()); - opts - }; - let proc_macro_client = match &config.proc_macro_srv { None => ProcMacroClient::dummy(), Some((path, args)) => match ProcMacroClient::extern_process(path.into(), args) { @@ -167,7 +160,7 @@ impl GlobalState { }; for ws in workspaces.iter() { crate_graph.extend(ws.to_crate_graph( - &default_cfg_options, + config.cargo.target.as_ref(), &extern_source_roots, &proc_macro_client, &mut load, -- cgit v1.2.3 From dbceaf522b717bd0dda89f6af1684ebd8e033aee Mon Sep 17 00:00:00 2001 From: Paul Daniel Faria Date: Mon, 8 Jun 2020 12:10:23 -0400 Subject: Use Option<&str> for target instead of Option<&String> --- crates/rust-analyzer/src/global_state.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/rust-analyzer') diff --git a/crates/rust-analyzer/src/global_state.rs b/crates/rust-analyzer/src/global_state.rs index 0b52030cf..73b0f881d 100644 --- a/crates/rust-analyzer/src/global_state.rs +++ b/crates/rust-analyzer/src/global_state.rs @@ -160,7 +160,7 @@ impl GlobalState { }; for ws in workspaces.iter() { crate_graph.extend(ws.to_crate_graph( - config.cargo.target.as_ref(), + config.cargo.target.as_deref(), &extern_source_roots, &proc_macro_client, &mut load, -- cgit v1.2.3