Roberto Aloi
Roberto Aloi
Given the following examples, where the `~` represents the cursor location: ``` one() -> Var = 1, [V~ar || Var [ Var || Var
The test occasionally fails. This is most common in CI, it never seems to fail locally. ``` %%% els_references_SUITE ==> ignore_open_watched_file_added: FAILED %%% els_references_SUITE ==> Failure/Error: ?assertEqual(2, length ( Locations...
Following up a review of #1329, we should abstract away the following: els_server ! {result, Lenses, self()},
Following up on the review of #1329: I think, though, this can go a step further and remove even more abstraction. For example, rather than having code like: Provider =...
Parsing the following module: ``` -module(my_module). -export([main/1]). -record(my_record, {}). main(Record) -> Record#my_record{ %% TODO }. ``` Triggers an error: ``` [warning] Please report error parsing form error:{case_clause,comment}:[{els_parser,record_field_name,3,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,698}]},{els_parser,'-record_expr_pois/3-lc$^0/1-0-',2,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,670}]},{els_parser,record_expr_pois,3,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,671}]},{els_parser,do_points_of_interest,1,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,198}]},{els_parser,'-points_of_interest/1-fun-0-',2,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,184}]},{els_parser,fold2,3,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,880}]},{els_parser,fold1,3,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,873}]},{els_parser,fold,3,[{file,".../erlang_ls-0.31.0/apps/els_lsp/src/els_parser.erl"},{line,867}]}], {function,#{end_location => {6,3},location...
```` [error] Generic server terminating. Reason: {{badrecord,clause},[{erl_syntax,clause_patterns,1, [{file,"erl_syntax.erl"},{line,3927}]},{erl_syntax_lib,vann_clause,2,[{file,"erl_syntax_lib.erl"},{line,839}]}, {erl_syntax_lib,vann_clauses,2,[{file,"erl_syntax_lib.erl"},{line,865}]},{erl_syntax_lib,vann_function,2, [{file,"erl_syntax_lib.erl"},{line,572}]},{erl_syntax_lib,annotate_bindings,2,[{file,"erl_syntax_lib.erl"},{line,492}]}, {els_bound_var_in_pattern_diagnostics,find_vars_in_form,1, [...] ````
Similar to https://hexdocs.pm/elixir/1.13/Task.html
There's currently no monitoring mechanism in place to ensure background jobs are removed from the provider state when killed.
Even when indexing for generated files is disabled, it should be possible to auto-complete the module name.
Since we `catch` parsing errors and we always return an empty list of POIs to the caller, the number of indexing errors is always zero, even in presence of errors.