Skip to content

Releases: Kotlin/kotlin-lsp

v262.4739.0

27 Apr 21:34

Choose a tag to compare

v262.4739.0

Changelog

🛠 LSP capabilities

  • Call hierarchy (textDocument/prepareCallHierarchy, callHierarchy/incomingCalls, callHierarchy/outgoingCalls) — invoke "Show Call Hierarchy" / "Show Incoming/Outgoing Calls" on a Kotlin function or property to see who calls it and which symbols it calls. Fixes #143.
  • Code folding (textDocument/foldingRange) — Kotlin function and class bodies, blocks, imports, and multiline comments can now be collapsed in the editor.
  • Smart insertion of parentheses, braces, and quotes — auto-pairing and overtyping work for KDoc brackets, string templates, raw strings, generic angle brackets, when / lambda braces, and char literals.
  • File templates (IntelliJ-style) — newly created Kotlin files are generated from configurable templates that support predefined variables and conditional expressions. Templates are configured through VS Code settings.

🐛 Bug fixes

  • override completion no longer throws an exception on methods that carry annotations. Fixes #160.
  • Kotlin compiler settings (including compiler plugins like Compose) are now correctly computed for non-standard Gradle source sets — i.e., anything beyond main and test. Fixes #169.
  • Cross-language references in mixed Kotlin/Java projects with non-standard Gradle source sets are now resolved correctly. Fixes #166.

🧪 Experimental features

Warning

The features listed in this section are not finalized.

They may contain bugs and are likely to change significantly in future releases — do not depend on their current behavior.

  • Import of Android projects is now supported by Kotlin LSP 🎉
  • 🐛 Debug Adapter Protocol (DAP) for Kotlin — attach to a running JVM, set line breakpoints, pause/resume, step over/in, inspect threads, stack frames, and variables, and evaluate simple expressions.

Other

  • 🚀 Index storage migrated to RocksDB — more robust state management and better performance.
  • VS Code extension settings have been renamed from kotlinLSP.* to intellij.*.
  • New intellij.buildTool setting controls which build-system importer should be preferred.
  • 📦 New bundling layout — use the bin/intellij-server executable to launch the standalone server. The legacy kotlin-lsp.sh launcher is deprecated and will be removed in future releases.
  • Standalone archives are now platform-specific: .sit for macOS, .tar.gz for Linux, and .zip for Windows.
  • stdio mode stability — the JVM's own stdout is now isolated from the LSP framing channel, so unexpected output from the JVM no longer corrupts the protocol stream.
  • ⚠️ Kotlin LSP now requires JDK 25 to run.

v262.2310.0

20 Mar 09:08

Choose a tag to compare

v262.2310.0

Changelog

Important

This is the second hotfix release for v262.1668.0.

The second fix is related to disabling faulty parts of a JVM DAP adapter (which is currently a WIP).

The changelog below comes from the v262.1668.0 release and is repeated here for clarity.

🔧 Kotlin 2.3.0 support

🛠 LSP capabilities

  • Import of Maven projects is now supported
  • Import of Gradle projects is now more robust
  • "Go to Type Definition" (typeDefinition) for Kotlin symbols
  • "Go to Implementation" (implementation) for Kotlin symbols
  • New code actions are supported:
    • "Add names to call arguments"
    • "Specify type explicitly"
    • "Add import" quick fixes for unresolved references
  • New inspections from the IntelliJ Kotlin Plugin:
  • Compiler plugins like kotlinx.serialization and AllOpen are now fully supported

✨ UX improvements

  • "Go to Symbol" now works faster due to improved performance of "Workspace Symbols" requests
  • Distribution size has been reduced by > 30% (from 600 MB down to 400 MB)
  • Various other performance improvements

🐛 Bug fixes

  • Fixed caret misplacement and exceptions after invoking code completion
  • Angular brackets are no longer highlighted as unmatched in the editor
  • Various memory leaks fixed

v262.1817.0

12 Mar 20:14

Choose a tag to compare

v262.1817.0

Changelog

Important

This is a hotfix release for v262.1668.0.

The fix is related to unexpected warnings being printed to STDIO at the start of the server.
It disables them to avoid potential problems with different LSP clients.

The changelog below comes from the v262.1668.0 release and is repeated here for clarity.

🔧 Kotlin 2.3.0 support

🛠 LSP capabilities

  • Import of Maven projects is now supported
  • Import of Gradle projects is now more robust
  • "Go to Type Definition" (typeDefinition) for Kotlin symbols
  • "Go to Implementation" (implementation) for Kotlin symbols
  • New code actions are supported:
    • "Add names to call arguments"
    • "Specify type explicitly"
    • "Add import" quick fixes for unresolved references
  • New inspections from the IntelliJ Kotlin Plugin:
  • Compiler plugins like kotlinx.serialization and AllOpen are now fully supported

✨ UX improvements

  • "Go to Symbol" now works faster due to improved performance of "Workspace Symbols" requests
  • Distribution size has been reduced by > 30% (from 600 MB down to 400 MB)
  • Various other performance improvements

🐛 Bug fixes

  • Fixed caret misplacement and exceptions after invoking code completion
  • Angular brackets are no longer highlighted as unmatched in the editor
  • Various memory leaks fixed

v262.1668.0

12 Mar 11:27

Choose a tag to compare

v262.1668.0

Changelog

🔧 Kotlin 2.3.0 support

🛠 LSP capabilities

  • Import of Maven projects is now supported
  • Import of Gradle projects is now more robust
  • "Go to Type Definition" (typeDefinition) for Kotlin symbols
  • "Go to Implementation" (implementation) for Kotlin symbols
  • New code actions are supported:
    • "Add names to call arguments"
    • "Specify type explicitly"
    • "Add import" quick fixes for unresolved references
  • New inspections from the IntelliJ Kotlin Plugin:
  • Compiler plugins like kotlinx.serialization and AllOpen are now fully supported

✨ UX improvements

  • "Go to Symbol" now works faster due to improved performance of "Workspace Symbols" requests
  • Distribution size has been reduced by > 30% (from 600 MB down to 400 MB)
  • Various other performance improvements

🐛 Bug fixes

  • Fixed caret misplacement and exceptions after invoking code completion
  • Angular brackets are no longer highlighted as unmatched in the editor
  • Various memory leaks fixed

v261.13587.0

10 Dec 12:38

Choose a tag to compare

v261.13587.0

Changelog

🛠 LSP capabilities

  • Full support of inlay hints with a fine-grained configuration via jetbrains.kotlin.hints.* LS settings

✨ UX improvements

  • Zero-dependencies platform-specific builds -- no JDK required by default, the language server bundles its own
  • Code completion revamp: suggesting order is now on par with IJ and more relevant
  • Code completion latency is ~30% better
  • kotlinLSP.jdkForSymbolResolution option to specify JDK version that will be used as a dependency for symbol resolution
  • LS now checks JDK/Gradle versions compatibility and fails gracefully in the case of incompatible changes
  • Indicies are now stored in a dedicated folder and are properly shared between multiple projects and LS instances
  • All inspections and intentions are now using mod command which a more robust approach for LSP-like protocols

Other

  • More indexing fixes on Windows
  • Smaller bundle size on every platform
  • Improved Gradle import performance
  • Better JDK selection for Gradle import when multiple options are present
  • Native filewatcher lib is now signed on OS X in release builds
  • Native filewatcher lib is now linked with libgcc statically
  • Compiler plugins support for JPS and .json-based imports

v0.253.10629

06 Aug 13:33

Choose a tag to compare

  • 🧪 Kotlin for VS Code Extension
    Includes the Kotlin Language Server bundled for use with Visual Studio Code.

    ❌ Build is no longer available.

  • 🗂️ Kotlin Language Server (Standalone ZIP)
    Standalone version of the Kotlin LSP for editors other than VS Code.

    ❌ Build is no longer available.

Changelog

🛠 LSP capabilities

  • Rename refactoring (textDocument/rename)
  • Kotlin code formatting (textDocument/formatting and textDocument/rangeFormatting)
    • Auto-applied on quickfixes, configurable via LSP protocol, IntelliJ implementation
  • Navigation to libraries/JDK sources (textDocument/definition)
  • Documentation on hover (textDocument/hover)
  • Signature help (textDocument/signatureHelp)
  • Faster highlighting on large files (textDocument/semanticTokens/range)

✨ UX improvements

  • Native support of external file system changes (i.e. git pull)
  • Multiple caching layers with on-disk persistence are added
    • Should drastically reduce memory pressure on large projects
  • Full-blown code completion from IntelliJ IDEA
  • More fine-tuned inspections and diagnostics set enabled by default
  • Proper termination sequence of LSP process when the corresponding extension is closed

Other

  • 🐛 Fixed some bugs here and there, introduced new ones
  • 🧩 VSC extension bundling
  • 🪟 Wrestled with \ on Windows on multiple occasions. All on-disk persistence is hopefully platform-independent for now

v0.252.17811

27 May 12:23

Choose a tag to compare

  • 🧪 Kotlin for VS Code Extension
    Includes the Kotlin Language Server bundled for use with Visual Studio Code.

    ❌ Build is no longer available.

  • 🗂️ Kotlin Language Server (Standalone ZIP)
    Standalone version of the Kotlin LSP for editors other than VS Code.

    ❌ Build is no longer available.