l0ng-ai 293b41dd53 fix(lsp): wait for a loading server before reporting no definition
Right after a project opens, rust-analyzer answers navigation with nothing
until it has read the project, misses macro-generated items until build
scripts and proc macros are built, and withdraws answers (ContentModified)
while loading changes its data. Go to Definition reported "Cannot find
declaration" or did nothing in that window.

The client now enables rust-analyzer's experimental/serverStatus and tracks
whether a server is still loading (its quiescent flag, else any $/progress
task). Definition, declaration, type definition, implementation and hover
retry an empty or withdrawn answer each time a loading phase ends, for up to
30 s; background work such as cargo check does not trigger the wait. The
server shows as busy while it loads.
2026-11-05 11:58:55 +08:00
2026-10-22 18:55:10 +08:00
2026-10-22 18:55:10 +08:00
2026-10-22 18:55:10 +08:00

OpenIDEA

The IDE you know, rebuilt in Rust.

Download  ·  Benchmark  ·  Plugins  ·  Discord

https://github.com/user-attachments/assets/234dd54c-1255-4b3a-b35c-533d78d737c0

OpenIDEA brings the IntelliJ IDEA way of working — its keymap, its tool windows, its search-everything habits — to a native app with a Rust core.

Editor, code insight, debugger, Git, terminal, database and HTTP clients, for 60+ languages. Builds for macOS, Windows and Linux.

Benchmark

Opening freqtrade (Python, ~770 files) with warm caches, median of 5 runs:

OpenIDEA IntelliJ IDEA 2026.2.3
Window with the project 0.9 s 3.1 s
Ready (CPU settled) 1.1 s 13.2 s
Memory (USS, all processes) 169 MB 2011 MB
CPU time until ready 2.4 s 47.9 s
Idle CPU 4 % of a core 7 % of a core
Quit 0.3 s 5.9 s

A release build of OpenIDEA from main and IDEA with default settings and plugins, on Windows 11, 32-core AMD, 62 GB RAM. IDEA analyses Python more deeply, so "ready" doesn't mean the same work on both sides. Both are measured from the outside, the same way: see perf/compare to run it on your machine and projects.

Plugins

Plugins add actions, completion, quick fixes, tool windows, custom editors, themes, file icons and languages. They run as sandboxed WebAssembly components; themes, icon themes and languages need no code at all.

Install them from Settings › Plugins, or start your own with openidea-plugin new — see Writing OpenIDEA plugins and the official plugins. The plugin API is still a preview.

License

Apache 2.0. Bundled third-party assets are listed in THIRD_PARTY_LICENSES.md.

Not affiliated with JetBrains. IntelliJ IDEA is a trademark of JetBrains s.r.o.

Мови
TypeScript 54.7%
Rust 41.8%
CSS 2.1%
Python 0.5%
Java 0.4%
Інші 0.3%