Skip to content

Commit da2a496

Browse files
thanabodee-cwingyplus
authored andcommitted
Remove deps cached only when deps in mix file changed
Remove deps cached every build can cause deps cached disappear in :ets. Fixes by move calling Mix.Project.clear_deps_cache/0 only when deps in mix.exs was change. Fixes #235
1 parent 78fc2bd commit da2a496

File tree

1 file changed

+4
-5
lines changed
  • apps/language_server/lib/language_server

1 file changed

+4
-5
lines changed

apps/language_server/lib/language_server/build.ex

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,14 @@ defmodule ElixirLS.LanguageServer.Build do
1313
IO.puts("MIX_ENV: #{Mix.env()}")
1414
IO.puts("MIX_TARGET: #{Mix.target()}")
1515

16-
prev_deps = cached_deps()
17-
:ok = Mix.Project.clear_deps_cache()
18-
1916
case reload_project() do
2017
{:ok, mixfile_diagnostics} ->
2118
# FIXME: Private API
2219
if Keyword.get(opts, :fetch_deps?) and
23-
Mix.Dep.load_on_environment([]) != prev_deps,
24-
do: fetch_deps()
20+
Mix.Dep.load_on_environment([]) != cached_deps() do
21+
:ok = Mix.Project.clear_deps_cache()
22+
fetch_deps()
23+
end
2524

2625
{status, diagnostics} = compile()
2726

0 commit comments

Comments
 (0)