|
2 | 2 |
|
3 | 3 | #### Highlights
|
4 | 4 |
|
| 5 | +- Added Call hierarchy provider implementing LSP [textDocument/prepareCallHierarchy](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#textDocument_prepareCallHierarchy), [callHierarchy/incomingCalls](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#callHierarchy_incomingCalls) and [callHierarchy/outgoingCalls](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#callHierarchy_outgoingCalls) |
| 6 | +- ElixirLS now bundles a number of experimental LLM oriented tools exposed as custom commands and a builtin MCP server. The tools focus on model friendly text interface instead of typical IDE oriented LSP API methods. Refer to [README.md](README.md) on how to connect to the MCP server. The tools include: |
| 7 | + - `find_definition` - Find and retrieve the source code of symbols. |
| 8 | + - `get_environment` - Retrieve environment at location with aliases, imports, requires and more. |
| 9 | + - `get_docs` - Aggregate and return comprehensive documentation |
| 10 | + - `get_type_info` - Extract typespecs and contracts. |
| 11 | + - `find_implementations` - Find all implementations of behaviours and protocols. |
| 12 | + - `get_module_dependencies` - Analyze module dependency relationships |
| 13 | +- Unofficial support for elixir 1.19 |
| 14 | + |
5 | 15 | #### Improvements
|
6 | 16 |
|
7 | 17 | - Added option `elixirLS.dotFormatter` to specify path to custom `.formatter.exs`
|
| 18 | +- Added `elixir_check` mode to launch script |
| 19 | +- Respect `:*` in `locals_without_parens` |
| 20 | +- Language Server Protocol implementation refactored to use typed structs from `gen_lsp` library by Mitchell Hanberg |
| 21 | +- Debug Adapter Protocol implementation refactored to use typed structs from `gen_dap` library by Łukasz Samson |
| 22 | +- Debug Adapter Protocol spec compliance - introduced error codes |
| 23 | +- Added support for `includeDeclaration` parameter in references provider |
| 24 | +- Improved `*` wildcard handling in debug adapter launch config |
8 | 25 |
|
9 | 26 | #### Fixes
|
10 | 27 |
|
| 28 | +- Fixed crashes related to invalid iodata handling |
| 29 | +- Fixed unicode handling in refactoring functions |
| 30 | +- Fixed debug adapter crash when getting info on no longer alive processes |
| 31 | +- Forkaround `Exception.blame` crash |
| 32 | +- Fixed crash on invalid `locals_without_parens` |
| 33 | +- Fixed crash on invalid dialyzer settings |
| 34 | +- Fixed crash in markdown generation |
| 35 | +- Fixed crash during launch on deterministic elixir builds [Sofie](https://github.com/soupglasses) |
| 36 | + |
11 | 37 | #### Breaking changes
|
12 | 38 |
|
13 | 39 | - support for `rtx` in launch script dropped. Upgrade to `mise`
|
|
0 commit comments