Skip to content

Commit

Permalink
fix: prompt the user to run mix deps.get when dependency problems happen
Browse files Browse the repository at this point in the history
at runtime

Closes #53
  • Loading branch information
mhanberg committed Feb 28, 2024
1 parent e32ac2b commit 63a3fce
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
9 changes: 9 additions & 0 deletions lib/next_ls.ex
Original file line number Diff line number Diff line change
Expand Up @@ -1065,6 +1065,15 @@ defmodule NextLS do
{:noreply, lsp}
end

def handle_info({ref, {:runtime_failed, _, _} = error}, %{assigns: %{refresh_refs: refs}} = lsp) when is_map_key(refs, ref) do
Process.demonitor(ref, [:flush])
{{token, msg}, refs} = Map.pop(refs, ref)

Progress.stop(lsp, token, msg)
send(self(), error)

{:noreply, assign(lsp, refresh_refs: refs)}
end
def handle_info({ref, _resp}, %{assigns: %{refresh_refs: refs}} = lsp) when is_map_key(refs, ref) do
Process.demonitor(ref, [:flush])
{{token, msg}, refs} = Map.pop(refs, ref)
Expand Down
9 changes: 8 additions & 1 deletion lib/next_ls/runtime.ex
Original file line number Diff line number Diff line change
Expand Up @@ -303,7 +303,7 @@ defmodule NextLS.Runtime do
diagnostics

{:error, %Mix.Error{message: "Can't continue due to errors on dependencies"}} ->
nil
{:runtime_failed, state.name, {:error, :deps}}

unknown ->
NextLS.Logger.warning(state.logger, "Unexpected compiler response: #{inspect(unknown)}")
Expand Down Expand Up @@ -362,6 +362,13 @@ defmodule NextLS.Runtime do
{:noreply, state}
end

def handle_info({port, {:data, "Unchecked dependencies" <> _ = data}}, %{port: port} = state) do
NextLS.Logger.log(state.logger, data)

state.on_initialized.({:error, :deps})
{:noreply, state}
end

def handle_info({port, {:data, data}}, %{port: port} = state) do
NextLS.Logger.info(state.logger, data)
{:noreply, state}
Expand Down

0 comments on commit 63a3fce

Please sign in to comment.