This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-07-24
Channels
Released https://clojure-lsp.io/ 2022.07.24-18.25.43 with focus on performance improvements!
• General
◦ Bump cljfmt
from 0.8.0 -> 0.8.2
• Editor
◦ Add clojure.core/fn to resolve-macro-as options. https://github.com/clojure-lsp/clojure-lsp/issues/1094
◦ Restore https://github.com/clojure-lsp/clojure-lsp/issues/995 Improve element selected on textDocument/hover
(previously reverted) with a fix that keeps it working for Calva even after a syntax error is introduced.
◦ Improve call hierarchy performance by parsing less frequently. https://github.com/clojure-lsp/clojure-lsp/pull/1092
◦ Improve system wide performance by keeping a graph of dependencies between namespaces. https://github.com/clojure-lsp/clojure-lsp/issues/990 https://github.com/clojure-lsp/clojure-lsp/pull/1053
◦ Enable setting :experimental {:dep-graph-queries true}
to beta test this feature.
◦ Improve performance by adding second level of analysis indexing.
◦ Improve performance of things that need keyword definitions, like completion and custom lint.
◦ Fix hover showing previous function elements on some cases. https://github.com/clojure-lsp/clojure-lsp/issues/1098
◦ Fix: find definition will find registration of unnamespaced keyword.
◦ Fix to update unused-public-var lint on registered keywords as usages change in other files. https://github.com/clojure-lsp/clojure-lsp/issues/1018
◦ Fix to navigate to var defined by declare, when there aren't any later defs. https://github.com/clojure-lsp/clojure-lsp/issues/1107
◦ Fix to always go to the definition of the correct var imported by potemkin. https://github.com/clojure-lsp/clojure-lsp/issues/1020
◦ Fix to correctly rename namespaces. https://github.com/clojure-lsp/clojure-lsp/issues/1121
◦ Fix to correctly :keep require and import indent spacing. https://github.com/clojure-lsp/clojure-lsp/issues/1141
◦ Improve accuracy of progress reporting during uncached startup. https://github.com/clojure-lsp/clojure-lsp/issues/1134
◦ Add refactoring Destructure keys
to destructure keywords. https://github.com/clojure-lsp/clojure-lsp/issues/905
◦ Add refactoring Extract to def
to create a def
from the thing under the cursor. https://github.com/clojure-lsp/clojure-lsp/issues/1136
◦ Include defmethods in document and workspace symbols. https://github.com/clojure-lsp/clojure-lsp/issues/1016
🚀 There is a new experimental feature, which completely changes the way clojure-lsp analyze the project's code, not scanning the whole project after startup but only the current namespace and its dependencies, building and maintaining a dependency-graph, this feature should improve performance drastically, especially for huge projects with lots of files like metabase. For people interested, please help with tests and feedbacks enabling it via {:experimental {:dep-graph-queries true}}
in your .lsp/config.edn
. (Details about the performance improvement https://github.com/clojure-lsp/clojure-lsp/pull/1053#issue-1272865476.)
Besides that, we had many minor performance improvements and even new refactorings!
Kudos to @jacob.maine for the huge help during this release! 👏
Thank you for all sponsors and contributors! 💜
Are others able to run brew upgrade
to get the latest release?
I’m getting the following error as the URL seems incorrect based on the releases page:
lojure-lsp/brew/clojure-lsp-native 2022.06.22-14.09.50 -> 2022.07.24-18.25.43
==> Downloading
curl: (22) The requested URL returned error: 404
Error: clojure-lsp-native: Failed to download resource "clojure-lsp-native"
Download failed:
I fixed the name on the release, could you try again @U0WKCCE3S?