Skip to content

feat: add ELP (Erlang Language Platform) as default Erlang language server#1149

Open
zerone0x wants to merge 1 commit intooraios:mainfrom
zerone0x:feature/elp-erlang-language-server
Open

feat: add ELP (Erlang Language Platform) as default Erlang language server#1149
zerone0x wants to merge 1 commit intooraios:mainfrom
zerone0x:feature/elp-erlang-language-server

Conversation

@zerone0x
Copy link
Contributor

Closes #771

The erlang_ls project was archived on 2025-08-15. This PR switches the default Erlang language server to ELP (Erlang Language Platform) by WhatsApp, as recommended by the erlang_ls maintainers.

Changes

  • New: ErlangLanguagePlatform class in elp_language_server.py using elp server (stdio LSP transport)
  • Language.ERLANG now points to ELP (the new default)
  • Language.ERLANG_LS added as a deprecated/experimental fallback for users who still have erlang_ls installed — set language: erlang_ls in project.yml to use it
  • Docs updated to reference ELP and link to the installation guide

Usage

ELP must be installed and elp must be in PATH. Installation: https://whatsapp.github.io/erlang-language-platform/docs/get-started/

Users who still need the legacy erlang_ls can opt in via project.yml:

language: erlang_ls

ELP is actively maintained, supports go-to-definition, find references, call hierarchy and more. It should also resolve the CI hangs that made erlang_ls testing unreliable.


🤖 Generated with Claude Code

…erver

The erlang_ls project was archived on 2025-08-15 and the maintainers
recommend switching to ELP (Erlang Language Platform) by WhatsApp.

Changes:
- Add ErlangLanguagePlatform class in elp_language_server.py using
  the 'elp server' command (stdio LSP transport)
- Point Language.ERLANG to ELP (new default)
- Add Language.ERLANG_LS as deprecated/experimental fallback for users
  who still have erlang_ls installed
- Update docs to reflect the new default and link to ELP install guide

ELP provides go-to-definition, find references, call hierarchy and
more. It is actively maintained and resolves long-standing CI issues
with erlang_ls hanging on startup.

Closes oraios#771

Co-Authored-By: Claude <noreply@anthropic.com>
@MischaPanch
Copy link
Contributor

@zerone0x is the ELP LS good enough to reliably run in CI? Then the erlang tests should be reactivated and extended if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Erlang LS has been archived on 2025-08-15, recommends switching to Erlang Language Platform

2 participants