From a8d3ce6ec6ca88e7e7f88ad628212d23057777c5 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Fri, 5 Feb 2021 08:18:06 -1000 Subject: [PATCH 01/10] Add changelog test to verify that the changelog is correctly linked --- apps/elixir_ls_utils/test/changelog_test.exs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 apps/elixir_ls_utils/test/changelog_test.exs diff --git a/apps/elixir_ls_utils/test/changelog_test.exs b/apps/elixir_ls_utils/test/changelog_test.exs new file mode 100644 index 000000000..dfa64caf0 --- /dev/null +++ b/apps/elixir_ls_utils/test/changelog_test.exs @@ -0,0 +1,15 @@ +defmodule ElixirLS.Utils.ChangelogTest do + use ExUnit.Case, async: true + + test "changelog pull requests are correctly linked" do + contents = File.read!("../../CHANGELOG.md") + String.split(contents, "\n", trim: true) + |> Enum.each(fn line -> + case Regex.run(~r/\/pull\/(\d+)/, line, capture: :all_but_first) do + [pr_number] -> + assert String.match?(line, ~r/\[.*#{pr_number}\]/) + _ -> nil + end + end) + end +end From 72ef9b892de7957459587bc9f8f18e5cca89b999 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sun, 28 Feb 2021 08:54:41 -1000 Subject: [PATCH 02/10] Update changelog --- CHANGELOG.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 832bdd57a..8b45e24b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ ### Unreleased +Improvements: +- Use fuzzy matching for completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491/files) + - For example: "valp" will match `validate_password` and "Enum.chub" will match `Enum.chunk_by/2` + +Bug Fixes: +- Make expandMacro a custom command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) + +VSCode: +- Fix test lens shell escaping on Windows (thanks [Étienne Lévesque](https://github.com/Blond11516)) [#175](https://github.com/elixir-lsp/vscode-elixir-ls/pull/175) +- Add hrl to watched files (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#177](https://github.com/elixir-lsp/vscode-elixir-ls/pull/177) +- Fix CI issues (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#178](https://github.com/elixir-lsp/vscode-elixir-ls/pull/178) + +**Deprecations** +Deprecate non-standard `elixirDocument/macroExpansion` command. It is being replaced with the `expandMacro` custom command. See [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) for details. It is planned to be fully removed in 0.8 + ### v0.6.5: 9 February 2021 Bug Fixes: From 5b3e64cc3060725275450286073d43881f99adb7 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sun, 28 Feb 2021 08:57:07 -1000 Subject: [PATCH 03/10] Add #497 --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b45e24b5..d61e88d47 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,12 @@ ### Unreleased Improvements: -- Use fuzzy matching for completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491/files) +- Use fuzzy matching for completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491) - For example: "valp" will match `validate_password` and "Enum.chub" will match `Enum.chunk_by/2` Bug Fixes: - Make expandMacro a custom command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) +- Suppress setup script stdout output on windows(thanks [Po Chen](https://github.com/princemaple)) [#497](https://github.com/elixir-lsp/elixir-ls/pull/497) VSCode: - Fix test lens shell escaping on Windows (thanks [Étienne Lévesque](https://github.com/Blond11516)) [#175](https://github.com/elixir-lsp/vscode-elixir-ls/pull/175) From 4cdbd248d8f35f1649f14579da30c269a58f51cf Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sun, 28 Feb 2021 13:52:38 -1000 Subject: [PATCH 04/10] Specify that the fuzzy completion is only for functions --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d61e88d47..6039d1e79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,9 @@ ### Unreleased Improvements: -- Use fuzzy matching for completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491) +- Use fuzzy matching for function completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491/files) - For example: "valp" will match `validate_password` and "Enum.chub" will match `Enum.chunk_by/2` + - Note: the plan is to extend this fuzzy matching to other types of completion in the future Bug Fixes: - Make expandMacro a custom command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) From 4e8e1c0b541b4e4fcfe0ee9e68df32604e4add0d Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sun, 28 Feb 2021 13:55:23 -1000 Subject: [PATCH 05/10] Fix formatting --- apps/elixir_ls_utils/test/changelog_test.exs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/elixir_ls_utils/test/changelog_test.exs b/apps/elixir_ls_utils/test/changelog_test.exs index dfa64caf0..c15ca0511 100644 --- a/apps/elixir_ls_utils/test/changelog_test.exs +++ b/apps/elixir_ls_utils/test/changelog_test.exs @@ -3,12 +3,15 @@ defmodule ElixirLS.Utils.ChangelogTest do test "changelog pull requests are correctly linked" do contents = File.read!("../../CHANGELOG.md") + String.split(contents, "\n", trim: true) |> Enum.each(fn line -> case Regex.run(~r/\/pull\/(\d+)/, line, capture: :all_but_first) do [pr_number] -> assert String.match?(line, ~r/\[.*#{pr_number}\]/) - _ -> nil + + _ -> + nil end end) end From 05f5f538c2b84b3bd00ffb135f4301bc6705d588 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Fri, 5 Mar 2021 07:51:40 -1000 Subject: [PATCH 06/10] update changelog for #505 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6039d1e79..4cb28f04e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ Improvements: Bug Fixes: - Make expandMacro a custom command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) + - Scope expandMacro command to ElixirLS server instance (thanks [Tom Crossland](https://github.com/tcrossland)) [#505](https://github.com/elixir-lsp/elixir-ls/pull/505) - Suppress setup script stdout output on windows(thanks [Po Chen](https://github.com/princemaple)) [#497](https://github.com/elixir-lsp/elixir-ls/pull/497) VSCode: From 8d777321bd5793b8a8a503dd9a5db53d8d12f4ed Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Fri, 5 Mar 2021 08:23:27 -1000 Subject: [PATCH 07/10] Update changelog for #501, #473, and #504 --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4cb28f04e..377e10d29 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,12 +4,18 @@ Improvements: - Use fuzzy matching for function completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491/files) - For example: "valp" will match `validate_password` and "Enum.chub" will match `Enum.chunk_by/2` - Note: the plan is to extend this fuzzy matching to other types of completion in the future +- Snippet variants with n-1 placeholders to use after pipe (thanks [Leonardo Donelli](https://github.com/LeartS)) [#501](https://github.com/elixir-lsp/elixir-ls/pull/501) +- Make launcher script more robust and support symlinks... more robustly (thanks [Joshua Trees](https://github.com/jtrees)) [#473](https://github.com/elixir-lsp/elixir-ls/pull/473) Bug Fixes: - Make expandMacro a custom command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) - Scope expandMacro command to ElixirLS server instance (thanks [Tom Crossland](https://github.com/tcrossland)) [#505](https://github.com/elixir-lsp/elixir-ls/pull/505) - Suppress setup script stdout output on windows(thanks [Po Chen](https://github.com/princemaple)) [#497](https://github.com/elixir-lsp/elixir-ls/pull/497) +Housekeeping: +- Improved support for OTP 24 (thanks [Tom Crossland](https://github.com/tcrossland)) [#504](https://github.com/elixir-lsp/elixir-ls/pull/504) + - Note that OTP 24 isn't officially supported since it is not yet released + VSCode: - Fix test lens shell escaping on Windows (thanks [Étienne Lévesque](https://github.com/Blond11516)) [#175](https://github.com/elixir-lsp/vscode-elixir-ls/pull/175) - Add hrl to watched files (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#177](https://github.com/elixir-lsp/vscode-elixir-ls/pull/177) From b80dd9b625b9553195c4a72ae20164bce4780a46 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sat, 6 Mar 2021 11:39:42 -1000 Subject: [PATCH 08/10] Update changelog for #507 and vscode #176 --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 377e10d29..3d7d17415 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,11 +15,13 @@ Bug Fixes: Housekeeping: - Improved support for OTP 24 (thanks [Tom Crossland](https://github.com/tcrossland)) [#504](https://github.com/elixir-lsp/elixir-ls/pull/504) - Note that OTP 24 isn't officially supported since it is not yet released +- Add meta-test to ensure that all commands include the server instance id (thanks [Jason Axelson](https://github.com/axelson)) [#507](https://github.com/elixir-lsp/elixir-ls/pull/507) VSCode: - Fix test lens shell escaping on Windows (thanks [Étienne Lévesque](https://github.com/Blond11516)) [#175](https://github.com/elixir-lsp/vscode-elixir-ls/pull/175) - Add hrl to watched files (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#177](https://github.com/elixir-lsp/vscode-elixir-ls/pull/177) - Fix CI issues (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#178](https://github.com/elixir-lsp/vscode-elixir-ls/pull/178) +- Add support for `expandMacro` command (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#176](https://github.com/elixir-lsp/vscode-elixir-ls/pull/176) **Deprecations** Deprecate non-standard `elixirDocument/macroExpansion` command. It is being replaced with the `expandMacro` custom command. See [#498](https://github.com/elixir-lsp/elixir-ls/pull/498) for details. It is planned to be fully removed in 0.8 From 670e1fa43190bc401b8a27606351c9968612f9d4 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sun, 14 Mar 2021 10:28:56 -1000 Subject: [PATCH 09/10] Update changelog for #511 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d7d17415..fee424031 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ Housekeeping: - Improved support for OTP 24 (thanks [Tom Crossland](https://github.com/tcrossland)) [#504](https://github.com/elixir-lsp/elixir-ls/pull/504) - Note that OTP 24 isn't officially supported since it is not yet released - Add meta-test to ensure that all commands include the server instance id (thanks [Jason Axelson](https://github.com/axelson)) [#507](https://github.com/elixir-lsp/elixir-ls/pull/507) +- Fix test flakiness by ensuring build is complete (thanks [Łukasz Samson](https://github.com/lukaszsamson)) [#511](https://github.com/elixir-lsp/elixir-ls/pull/511) VSCode: - Fix test lens shell escaping on Windows (thanks [Étienne Lévesque](https://github.com/Blond11516)) [#175](https://github.com/elixir-lsp/vscode-elixir-ls/pull/175) From 6f68efb9b8fd70e52d3432cbacf69ba70a383016 Mon Sep 17 00:00:00 2001 From: Jason Axelson Date: Sat, 27 Mar 2021 14:27:39 -1000 Subject: [PATCH 10/10] Update changelog for #492 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fee424031..7b72074db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Improvements: - Use fuzzy matching for function completion (thanks [Po Chen](https://github.com/princemaple)) [#491](https://github.com/elixir-lsp/elixir-ls/pull/491/files) - For example: "valp" will match `validate_password` and "Enum.chub" will match `Enum.chunk_by/2` - Note: the plan is to extend this fuzzy matching to other types of completion in the future +- Support auto-generating folding ranges (textDocument/foldingRange) (thanks [billylanchantin](https://github.com/billylanchantin)) [#492](https://github.com/elixir-lsp/elixir-ls/pull/492) - Snippet variants with n-1 placeholders to use after pipe (thanks [Leonardo Donelli](https://github.com/LeartS)) [#501](https://github.com/elixir-lsp/elixir-ls/pull/501) - Make launcher script more robust and support symlinks... more robustly (thanks [Joshua Trees](https://github.com/jtrees)) [#473](https://github.com/elixir-lsp/elixir-ls/pull/473)