github Kotlin/kotlin-lsp kotlin-lsp/v262.4739.0
v262.4739.0

13 hours ago

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.

Don't miss a new kotlin-lsp release

NewReleases is sending notifications on new releases.