Elixir itself supports 5 versions with security updates: https://hexdocs.pm/elixir/compatibility-and-deprecations.html#content
OTP Supports the last 3 versions: http://erlang.2086793.n4.nabble.com/OTP-Versions-and-Maint-Branches-td4722416.html
ElixirLS generally aims to support the last 3 versions of Elixir and the last 3 versions of OTP. However this is not a hard and fast rule and may change in the future.
Bump the changelog
Bump the version numbers in apps/elixir_ls_debugger/mix.exs
, apps/elixir_ls_utils/mix.exs
, and apps/language_server/mix.exs
Make PR
Merge PR
Pull down the latest master
Make the tag from the new master
Push the tag (git push upstream --tags
)
Wait for github actions to push up a draft release https://github.com/elixir-lsp/elixir-ls/releases
Edit the draft release with a link to the changelog
Publish the draft release
If you're debugging a running server than IO.inspect
is a good approach, any messages you create with it will be sent to your LSP client as a log message
To debug in tests you can use IO.inspect(Process.whereis(:user), message, label: "message")
to send your output directly to the group leader of the test process.