it, uh, turns out that we should be spawning for new servers. oops.
This commit is contained in:
parent
6a42d7f627
commit
e5bfd7ef0a
@ -296,9 +296,9 @@ pub(crate) fn switch_workspaces(&mut self, cause: Cause) {
|
|||||||
let workspaces =
|
let workspaces =
|
||||||
workspaces.iter().filter_map(|res| res.as_ref().ok().cloned()).collect::<Vec<_>>();
|
workspaces.iter().filter_map(|res| res.as_ref().ok().cloned()).collect::<Vec<_>>();
|
||||||
|
|
||||||
// `different_workspaces` is used to spawn a new proc macro server for a newly-added
|
// `different_workspaces` is used to determine whether to spawn a a new proc macro server for
|
||||||
// rust workspace (most commonly sourced from a `rust-project.json`). While the algorithm
|
// a newly-added rust workspace (most commonly sourced from a `rust-project.json`). While the
|
||||||
// to find the new workspaces is quadratic, we generally expect that the number of total
|
// algorithm to find the new workspaces is quadratic, we generally expect that the number of total
|
||||||
// workspaces to remain in the low single digits. the `cloned_workspace` is needed for borrowck
|
// workspaces to remain in the low single digits. the `cloned_workspace` is needed for borrowck
|
||||||
// reasons.
|
// reasons.
|
||||||
let cloned_workspaces = workspaces.clone();
|
let cloned_workspaces = workspaces.clone();
|
||||||
@ -387,7 +387,8 @@ pub(crate) fn switch_workspaces(&mut self, cause: Cause) {
|
|||||||
if self.proc_macro_clients.is_empty() || !different_workspaces.is_empty() {
|
if self.proc_macro_clients.is_empty() || !different_workspaces.is_empty() {
|
||||||
if let Some((path, path_manually_set)) = self.config.proc_macro_srv() {
|
if let Some((path, path_manually_set)) = self.config.proc_macro_srv() {
|
||||||
tracing::info!("Spawning proc-macro servers");
|
tracing::info!("Spawning proc-macro servers");
|
||||||
self.proc_macro_clients = different_workspaces
|
self.proc_macro_clients = self
|
||||||
|
.workspaces
|
||||||
.iter()
|
.iter()
|
||||||
.map(|ws| {
|
.map(|ws| {
|
||||||
let (path, args): (_, &[_]) = if path_manually_set {
|
let (path, args): (_, &[_]) = if path_manually_set {
|
||||||
|
Loading…
Reference in New Issue
Block a user