Skip to content

Commit 59040c4

Browse files
committed
avoid starting both incremental and old dialyzer
1 parent 13d768e commit 59040c4

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

apps/language_server/lib/language_server/dialyzer/supervisor.ex

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@ defmodule ElixirLS.LanguageServer.Dialyzer.Supervisor do
22
alias ElixirLS.LanguageServer.{Dialyzer, DialyzerIncremental}
33
use Supervisor
44

5-
def start_link(parent \\ self(), root_path) do
6-
Supervisor.start_link(__MODULE__, {parent, root_path})
5+
def start_link(parent \\ self(), name \\ nil, root_path, dialyzer_module) do
6+
Supervisor.start_link(__MODULE__, {parent, root_path, dialyzer_module},
7+
name: name || __MODULE__
8+
)
79
end
810

911
@impl Supervisor
10-
def init({parent, root_path}) do
12+
def init({parent, root_path, dialyzer_module}) do
1113
Supervisor.init(
1214
[
13-
{Dialyzer, {parent, root_path}},
14-
{DialyzerIncremental, {parent, root_path}}
15+
{dialyzer_module, {parent, root_path}}
1516
],
1617
strategy: :one_for_one
1718
)

apps/language_server/lib/language_server/server.ex

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1845,6 +1845,7 @@ defmodule ElixirLS.LanguageServer.Server do
18451845
|> set_mix_env(mix_env)
18461846
|> set_mix_target(mix_target)
18471847
|> set_project_dir(project_dir)
1848+
|> Map.put(:settings, settings)
18481849
|> set_dialyzer_enabled(enable_dialyzer)
18491850

18501851
add_watched_extensions(state.server_instance_id, additional_watched_extensions)
@@ -1885,7 +1886,7 @@ defmodule ElixirLS.LanguageServer.Server do
18851886
%{}
18861887
)
18871888

1888-
trigger_build(%{state | settings: settings})
1889+
trigger_build(state)
18891890
end
18901891

18911892
defp add_watched_extensions(_server_instance_id, []) do
@@ -1963,7 +1964,9 @@ defmodule ElixirLS.LanguageServer.Server do
19631964
defp set_dialyzer_enabled(state = %__MODULE__{}, enable_dialyzer) do
19641965
cond do
19651966
enable_dialyzer and state.mix_project? and state.dialyzer_sup == nil ->
1966-
{:ok, pid} = Dialyzer.Supervisor.start_link(state.project_dir)
1967+
{:ok, pid} =
1968+
Dialyzer.Supervisor.start_link(state.project_dir, dialyzer_module(state.settings))
1969+
19671970
%{state | dialyzer_sup: pid, analysis_ready?: false}
19681971

19691972
not (enable_dialyzer and state.mix_project?) and state.dialyzer_sup != nil ->

0 commit comments

Comments
 (0)