100 Commits
Author SHA1 Message Date
Michael Panchenko 7fcbca7e62 Merge pull request #1848 from AmirF194/fix/1814-tsserver-crash-silent-empty-result
Fix: surface a mid-indexing tsserver crash instead of returning {}
2026-08-20 08:51:14 +02:00
Michael Panchenko 2561478a70 fix(clojure): declare didChangeWatchedFiles client capability (#1884)
Serena notifies language servers about files changed outside its own edit tools (a git checkout, another editor, a build step) by sending workspace/didChangeWatchedFiles from LanguageServerManager.poll_and_notify, whose docstring names this exact case: such edits are 'otherwise invisible to a warm language server, causing symbolic queries to answer from a stale index'.

ClojureLSP never declared the corresponding client capability, so clojure-lsp was not told those notifications are sent and need not treat them as a reason to invalidate its analysis. DefaultInitializeParamsBuilder does not supply a default capabilities block, so nothing filled this in on the server's behalf.

Relates to #1593, where find_symbol returned a body from a comment mentioning the symbol rather than its definition, at a position the symbol had previously occupied.
2026-08-18 09:47:19 +02:00
Michael Panchenko 27d7d0e0ec Merge pull request #1778 from shiersa/feat/deno-language-server
feat: add Deno language server support
2026-08-08 18:50:38 +02:00
Michael Panchenko ad2fdf1fa6 Merge pull request #1708 from ebarkhordar/fix/search-text-exclusive-end-line
fix(search): do not mark the following line as matched when a match ends at a line break
2026-07-17 10:27:28 +02:00
Michael Panchenko 465c5eb627 Merge pull request #1696 from xormania/fix/ci-job-timeout
CI: add timeout-minutes backstop to the pytest matrix job
2026-07-16 10:35:29 +02:00
Michael Panchenko b235c45389 Merge pull request #1648 from xormania/fix/svelte-ci-flake
Svelte + TypeScript: fail loudly on companion TS timeouts; deterministic test fixture
2026-07-12 11:32:23 +02:00
Michael Panchenko dcc9a3c97e Merge pull request #1675 from xormania/fix/solidity-diagnostics-validation-wait
Solidity: await validation completion for diagnostics instead of a fixed wait
2026-07-12 11:16:43 +02:00
Michael Panchenko 5c80a145b0 Merge pull request #1676 from oraios/dependabot/uv/uv-65b15dc743
Bump the uv group across 1 directory with 2 updates
2026-07-12 11:12:01 +02:00
Michael Panchenko 7333a0c868 Replace mypy by ty (#1619) 2026-06-29 12:26:07 +02:00
Michael Panchenko befc642f34 Merge pull request #1614 from 0x1997/main
Add pyrefly as alternative lsp for python
2026-06-28 15:34:12 +02:00
Michael Panchenko c7be814402 Merge pull request #1595 from oraios/dependabot/uv/uv-536976e7af
Bump the uv group across 1 directory with 2 updates
2026-06-28 13:10:04 +02:00
Michael Panchenko 88fe650f35 Merge pull request #1576 from zerone0x/fix/jdtls-workspace-hash-config-1541
fix: invalidate JDTLS workspace cache when Java import settings change
2026-06-28 13:09:37 +02:00
Michael Panchenko 42294fdf32 Merge pull request #1617 from Lauritz-Timm/fix/windows-csharp-startup-install
Fix Windows C# startup and Roslyn install
2026-06-28 12:48:07 +02:00
Michael Panchenko 22c135a881 Merge pull request #1574 from oraios/dependabot/uv/uv-cfedfbfab6
Bump tornado from 6.5.5 to 6.5.6 in the uv group across 1 directory
2026-06-13 00:40:02 +02:00
Michael Panchenko f71dc0be66 Merge pull request #1542 from oraios/dependabot/uv/uv-f07ca4ca9c
Bump starlette from 1.0.0 to 1.0.1 in the uv group across 1 directory
2026-06-12 19:06:25 +02:00
Michael Panchenko 4385741e8c Merge pull request #1555 from oraios/bug/svelte_ts_document_symbols
Fix Svelte (svelte-only) symbol discovery in .ts/.js files (#1552)
2026-06-08 16:16:41 +02:00
Michael Panchenko 6956948180 Merge pull request #1518 from oraios/improve_packaging
Improve packaging
2026-05-26 16:39:36 +02:00
0e3f665976 Cpp extensions (#1451)
* Add more cpp extensions

* Allow FilenameMatcher to be case insensitive
---------

Co-authored-by: Darin Morrison <darinmorrison@gmail.com>
Co-authored-by: silvanshade <silvanshade@users.noreply.github.com>
Co-authored-by: MischaPanch
2026-05-06 19:04:36 +02:00
Michael Panchenko 626e370a89 Merge pull request #1447 from oraios/hook_extension
Hook extension
2026-05-05 17:35:39 +02:00
Michael Panchenko e643e91cd7 Merge pull request #1418 from meirLixen/feature/cross-package-typescript-references
Add cross-package reference support via additional_workspace_folders
2026-05-04 20:17:03 +02:00
Michael PanchenkoandClaude Opus 4.7 024d31ba22 fix(lsp): omit optional Content-Type header from outgoing messages (#1442)
Per the LSP spec, Content-Type is optional and defaults to
application/vscode-jsonrpc; charset=utf-8 (the exact value we were
sending). Spec-compliant servers behave identically with or without it.

In practice some servers have stricter parsers. Notably, Godot's
GDScript LSP (LSPeer::handle_data in
modules/gdscript/language_server/gdscript_language_protocol.cpp)
extracts the body length via header.substr(16).to_int() and silently
drops messages that contain any header beyond Content-Length.

Sending only Content-Length is interoperable across the spec-compliant
servers we use today and unblocks Godot's LSP. Also tightens the type
signature of create_message from tuple[bytes, bytes, bytes] to
tuple[bytes, bytes] now that there is no Content-Type element.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 11:43:04 +02:00
Michael Panchenko c79e9d65f2 Update header text in README.md [ci skip] 2026-04-29 14:33:02 +02:00
Michael Panchenko ff78c1bee6 Improve cpp log level classification (#1422) 2026-04-28 09:19:47 +02:00
Michael Panchenko f786dee0b4 Merge pull request #1393 from oraios/dependabot/uv/uv-82fdfb001f
Bump nbconvert from 7.17.0 to 7.17.1 in the uv group across 1 directory
2026-04-22 00:09:28 +02:00
Michael Panchenko b2cce67206 Merge pull request #1383 from oraios/bugfix/insert_after_constant
Forbid using insert_after_symbol on symbols with no proper body
2026-04-21 12:43:57 +02:00
Michael Panchenko 14cd3ef559 Merge pull request #1385 from mdorman/flake
flake.nix: include `serena-hooks` in package
2026-04-20 19:58:39 +02:00
Michael Panchenko 1fd97a8ae2 Merge pull request #1376 from oraios/new_evals
New evals
2026-04-20 09:33:04 +02:00
Michael Panchenko e0cf89ff6a Merge branch 'main' into new_evals 2026-04-20 09:32:50 +02:00
Michael Panchenko 11dfdbf8c5 Merge pull request #1375 from Koushik-Salammagari/fix/document-symbol-children-field
fix: add missing children field to DocumentSymbol TypedDict
2026-04-18 20:48:54 +02:00
Michael Panchenko 8c4fa120fe Fix in request_overview: explicitly passed file path bypassed ignore check (#1365) 2026-04-17 13:06:54 +02:00
Michael Panchenko 3345153cce Clean up CodeQL workflow by removing languages
Removed unused languages from CodeQL workflow matrix.
2026-04-16 17:53:54 +02:00
Michael Panchenko 7a0d142185 Merge pull request #1354 from oraios/dependabot/uv/uv-d832887a00
Bump python-multipart from 0.0.22 to 0.0.26 in the uv group across 1 directory
2026-04-16 10:27:19 +02:00
Michael Panchenko f0d92bfca8 Merge pull request #1353 from oraios/implement_security_recommendations
Implement security recommendations
2026-04-16 10:13:36 +02:00
Michael Panchenko 9cb12248c4 Merge pull request #1341 from oraios/docs/new_evals
Docs/new evals
2026-04-14 15:46:58 +02:00
Michael Panchenko 9aded3c38f Merge pull request #1332 from oraios/dependabot/uv/uv-489ca64b8d
Bump pillow from 12.1.1 to 12.2.0 in the uv group across 1 directory
2026-04-14 00:12:05 +02:00
Michael Panchenko 587f74ccdd Merge pull request #1326 from oraios/fix/added_ignored_dirs
Followup after 34e1fae7 - added more ignored directories
2026-04-13 23:17:42 +02:00
90c30e0374 HLSL: bump to shader-language-server v1.3.1, remove CRLF workaround (#1319)
The upstream fix for the CRLF stale-tree crash (antaalt/shader-sense#44)
was merged and released as v1.3.1. This commit:

- Removes the client-side CRLF workaround (open_file override and
  _preload_crlf_content helper) added in #1305, along with the
  now-unused imports.
- Bumps _DEFAULT_VERSION to 1.3.1 and updates SHA-256 checksums for
  all three pre-built platform archives (win-x64, linux-x64, win-arm64).

The regression test (test_include_file_document_symbols_directly) that
exercises the original crash scenario passes against v1.3.1 without the
workaround.

Co-authored-by: TheSmallKiwi <TheSmallKiwi@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 08:27:48 +02:00
Michael Panchenko 21232b0bd0 Merge pull request #1310 from Tobbse/main
Add Haxe support
2026-04-11 13:46:49 +02:00
Michael Panchenko ded6f9a93c Merge pull request #1301 from oraios/dependabot/uv/uv-3344959f9f
Bump cryptography from 46.0.6 to 46.0.7 in the uv group across 1 directory
2026-04-09 23:18:00 +02:00
Michael Panchenko ad8e403b44 Merge pull request #1302 from zerone0x/fix/root-ignore-dot-path-1054
fix: avoid ignoring root path in gitignore checks
2026-04-09 23:16:17 +02:00
Michael Panchenko c667a26c2d Merge pull request #1305 from TheSmallKiwi/fix/hlsl-crlf-crash
Fix HLSL language server crash on CRLF files pulled in via #include
2026-04-09 23:11:37 +02:00
Michael Panchenko ab38fa98f1 Merge pull request #1294 from jochenseeber/main
Add Crystal language support (very limited, pre-alpha)
2026-04-08 12:07:00 +02:00
Michael Panchenko 946fdd558f Merge pull request #1292 from oraios/stdin_piping_fix
Fix in runtime dep/ installation: add stdin=subprocess.DEVNULL
2026-04-07 18:22:40 +02:00
Michael Panchenko c3e3c57309 Merge pull request #1290 from oraios/updated_news
Updated news pulling mechanism
2026-04-07 16:04:30 +02:00
Michael Panchenko 33a246ab66 Merge pull request #1287 from oraios/serena_init_cmd
Serena init cmd
2026-04-06 20:28:25 +02:00
Michael Panchenko 40b61dae37 Merge pull request #1271 from oraios/v1-beta
Serena v1.0.0
2026-04-03 16:10:27 +02:00
Michael Panchenko d30cdf8474 Fix symbol name resolution in selected LS (#1247)
Adds tests for name resolution for each language and fixes the name resolution where tests have failed.

Also:

Extends python tests to cover ty
Extends skipping conditions for several LS (but only when not in CI)
Better test output in CI
Removed a wrong python test (started failing for ty and should have failed for pyright too)
2026-04-01 16:29:00 +02:00
Michael Panchenko e9d2191566 Merge pull request #1261 from oraios/bump_pyjwt
Bump pyjwt (dependabot alert)
2026-04-01 09:07:38 +02:00
Michael Panchenko 6bf7955ada Merge pull request #1239 from oraios/dependabot/uv/uv-6ba9ca5f64
Bump cryptography from 46.0.5 to 46.0.6 in the uv group across 1 directory
2026-03-31 09:05:46 +02:00
Michael Panchenko 368486299d Merge pull request #1245 from lyang/configurable-jdtls-jvm-heap
Make JDTLS and IntelliCode JVM heap sizes configurable
2026-03-30 09:45:58 +02:00
Michael Panchenko 9f1b71a120 Merge pull request #1169 from oraios/update-all-yaml-comments
Force-update all comments in .yml files when resaving
2026-03-27 15:49:40 +01:00
Michael Panchenko 256041fa10 Merge pull request #1205 from zerone0x/fix/dashboard-show-experimental-langs-1177
fix: allow adding experimental languages from dashboard
2026-03-27 15:49:08 +01:00
Michael Panchenko 67576cd128 Merge pull request #1227 from oraios/security/pinning_and_checksum_verification
Security enhancement: pinned all runtime deps, verify checksums
2026-03-27 13:58:28 +01:00
Michael Panchenko f94e956339 Merge pull request #1226 from oraios/ty_support
Ty support
2026-03-27 12:14:07 +01:00
Michael PanchenkoandDominik Jain c6250aeeab Improved retrieval tool responses (#1190)
* Improved symbol retrieval tool responses

1. FindSymbol (LS and JB) now has max_matches. Both tools now perform grouping like other symbol retrieval tools
2. When a result exceeds max_answer_chars, the caller may pass a shortened message. This is used in references and overview tools

* Progressive shortening for tool results that exceed max_answer_chars

Change _limit_length to accept an optional list of closures instead of
a single shortened_result string. Each closure produces a progressively
shorter version of the result, tried in order until one fits. The last
closure is assumed to always fit and is used unconditionally.

* Extended grouper

More flexible grouping logic was needed to achieve the above results. Grouper also no longer
mutates the input (using deepcopy)

---------

Co-authored-by: Dominik Jain <dominik.jain@oraios-ai.de>
2026-03-27 08:34:21 +01:00
Michael Panchenko 8c62b0d991 Merge pull request #1213 from oraios/dependabot/uv/uv-ad53704374
Bump the uv group across 1 directory with 2 updates
2026-03-24 10:46:37 +01:00
Michael Panchenko 1707bb43d1 Merge pull request #1212 from oraios/broken-uvx 2026-03-24 10:40:09 +01:00
Michael Panchenko 2ccd396d74 Merge pull request #1188 from habaneraa/main
Fix: Handle Non-Standard SymbolKind Values from Language Servers
2026-03-23 15:05:22 +01:00
Michael Panchenko f834571d41 Merge pull request #1195 from Asher-/fix/agent-shutdown-lifecycle
Fix agent shutdown lifecycle: no-op shutdown, orphaned LS processes, missing MCP cleanup
2026-03-23 10:23:26 +01:00
Michael Panchenko 793af0a470 Merge pull request #1197 from Asher-/fix/ls-copy-paste-bugs
Fix copy-paste bugs in language server init params
2026-03-23 10:20:42 +01:00
Michael Panchenko 7ed2862b08 Merge pull request #1198 from Asher-/fix/shell-command-safety
Use shlex.quote for shell argument escaping on POSIX
2026-03-23 10:18:28 +01:00
Michael Panchenko b1a8db35f1 Merge pull request #1202 from Asher-/fix/cosmetic-error-messages
Fix copy-paste error messages in log strings
2026-03-23 10:12:00 +01:00
Michael Panchenko b9ae3b9a12 Merge pull request #1204 from Asher-/fix/dashboard-root-redirect
Redirect root URL to /dashboard/
2026-03-23 10:04:55 +01:00
ccbd15082b Feature/global memories (#1091)
Support for global (cross-project) memories, adds a news item

---------

Co-authored-by: Ariadne[bot] (butterflysky-ai) <good.town5863@butterflysky.dev>
Co-authored-by: Dominik Jain <dominik.jain@oraios-ai.de>
2026-03-03 15:18:41 +01:00
Michael Panchenko 2ab807a1ff Merge pull request #1075 from oraios/fix/batch_hover_optimization
Fix: the request_info for a batch of symbols was actually never optimized
2026-02-24 18:03:28 +01:00
Michael Panchenko 66a3ca8a31 Merge pull request #1076 from cx-alberto-simoes/PR/GlobalMetals
[SCALA LSP] Do not reinstall metals if it is globally available on system
2026-02-24 16:05:03 +01:00
Michael Panchenko db9fa3a370 Merge pull request #1077 from oraios/manual_banner_rotation
Dashboard: Replace automatic banner rotation with random initial display and manual rotation
2026-02-24 15:58:27 +01:00
Michael Panchenko e7a562aa4d Merge pull request #1060 from mareurs/per-project-language-backend
feat: support per-project language_backend override
2026-02-24 12:26:04 +01:00
Michael Panchenkoandjoachim.arting 6214b46e7b feat(csharp): add .slnx solution file support (#1056)
Co-authored-by: joachim.arting <joachim.arting@gmail.com>
2026-02-23 13:49:15 +01:00
Michael Panchenko dcbf08520d Merge pull request #956 from n-r-w/hover_budget 2026-02-20 17:44:23 +01:00
Michael Panchenko d7125fabe1 Merge pull request #1010 from Proton23/fix/add-python-artifacts-to-dockerignore
fix: Add Python artifacts to .dockerignore
2026-02-09 22:16:46 +01:00
Michael Panchenko e588bc7f89 C/C++ language server fixes (#987)
Fixes longstanding clangd issues (wrong selectionRange, failure to take compile_commands.json into account) and enhances documentation about C/C++ support
2026-02-06 15:25:43 +01:00
Michael Panchenko f14faa12d0 Merge pull request #947 from Linde7777/fix-codex-prompt
Adjust the activation prompt for Codex, to make GPT-5 more compliant.
2026-01-29 14:26:09 +07:00
Michael Panchenko bd4bac87a0 Merge pull request #963 from zyn1018/fix/jetbrains-plugin-http-error-handling
fix: handle HTTPError in JetBrainsPluginClient initialization
2026-01-21 10:49:45 +07:00
Michael Panchenko adf26b792b Merge pull request #902 from n-r-w/golang-ls-specific-settings
feat(gopls): support gopls_settings via ls_specific_settings
2026-01-16 00:41:28 +07:00
Michael Panchenko 3f87de1582 Merge pull request #874 from zen010101/feat/pascal-delphi-support
feat: Add Pascal and Delphi language server support
2026-01-10 09:14:22 +07:00
Michael Panchenko 5e7d5469cf Merge pull request #863 from oraios/improved_overview_tools
Improved overview tools
2026-01-03 18:27:53 +07:00
Michael Panchenko 823e7c6325 Merge pull request #862 from triepod-ai/feat/add-tool-annotations
feat: Add tool annotations for improved LLM tool understanding
2026-01-01 19:07:26 +07:00
Michael Panchenkoandflex-hyeonseok eff50cf682 🚩 add custom jvm option for kotlin language server (#864)
Co-authored-by: flex-hyeonseok <hyeonseok@flex.team>
2025-12-24 16:10:19 +07:00
Michael Panchenko f4ab15da98 Changelog [ci skip] 2025-12-16 17:06:35 +01:00
Michael Panchenko c35f0fa5b5 Merge pull request #797 from w0wl0lxd/feature/toml-support
feat: Add TOML language support via Taplo
2025-12-12 11:07:59 +07:00
Michael Panchenko 7afcf67ae2 Merge pull request #831 from michaelleone/feature/power-shell-LSP-support 2025-12-11 18:48:27 +07:00
Michael Panchenko 99fe6e7000 Merge branch 'main' into feature/power-shell-LSP-support 2025-12-11 18:37:57 +07:00
Michael Panchenko 3e1138bef3 Merge pull request #819 from oraios/dashboard_port_fix
Changed dashboard default listening address to 127.0.0.1 and made it configurable

Also some improvements to the configuration in docker setup, no longer use serena_config.docker.yml
2025-12-11 18:30:49 +07:00
Michael Panchenko 4702fbe1ea Merge pull request #370 from oraios/mypy_on_solidlsp
Make mypy run through on solidlsp
2025-11-20 22:47:25 +07:00
Michael Panchenko 3147126161 GH: move type-check to the end of CI pipeline [ci skip] 2025-11-20 16:46:09 +01:00
Michael Panchenko bb1cc5c33e Merge pull request #723 from tylersatre/main
Fix memory name parameter inconsistency
2025-11-05 06:22:20 +01:00
Michael Panchenko fe824a15e9 Merge pull request #717 from oraios/dashboard_extensions
Dashboard extensions, in particular task queue management
2025-10-31 14:09:27 +01:00
Michael Panchenko 84d9d866c3 Merge pull request #715 from oraios/dashboard/edit-memories
dashboard/edit-memories
2025-10-30 14:13:25 +01:00
Michael Panchenko 6cbc22f19c Merge branch 'main' into multi-ls 2025-10-29 00:07:10 +01:00
Michael Panchenko 7d10457e66 Merge pull request #701 from Rheasilvia/main
feat: Support user's Maven and Gradle configuration files in JDTLS
2025-10-28 13:10:28 +01:00
Michael Panchenko 5dfb8ad912 Merge pull request #676 from oraios/minor_fix_in_ignored_path
Minor fix in ignored path
2025-10-16 18:34:44 +02:00
Michael Panchenko 5f114d9e05 Merge pull request #669 from Anivie/fix_rust_analyzer
Fix 'Failed to deserialize config field at /cargo/cfgs' error from rust analyzer
2025-10-15 11:16:05 +02:00
Michael Panchenko 21af8bf451 Removed LinesRead and mark_file_modified (#666) 2025-10-13 11:37:17 +02:00
Michael Panchenko 271e7ad31f Merge pull request #622 from stgmt/fix/linux-arm64-dotnet-runtime
feat: Add configurable runtime dependencies for C# Language Server (ARM64 support)
2025-09-22 11:23:17 +02:00
Michael Panchenko 892ef9cf19 Fix typo in readme [ci skip] 2025-09-14 13:22:15 +02:00
Michael Panchenko 5d33a301f3 Allow passing LS implementation specific options. (#524)
* Allow passing LS implementation specific options. Made use of it in csharp and intelephense LS
* Bidirectional mapping from Language to the corresponding LS implementation Use this as key for ls_specifics.

Fix to swift installation in CI authored-by: maksim.r <avalab>
2025-09-13 00:36:21 +02:00
Michael Panchenko df9a4e3037 Merge pull request #593 from SShadowS/al-support-clean
Add support for AL programming language
2025-09-05 00:10:34 +02:00
Michael Panchenko 230ac32adb Merge pull request #589 from snoord/bugfix/terraformls-arm64
fix(terraformls): add linux arm64 runtime dependency
2025-09-02 14:40:49 +02:00
Michael Panchenko 4cb1683c5a Merge pull request #548 from quangtruongnb/main
Upgrade gradle to 8.14.2 and disable gradle wrapper for java 21 compatibility
2025-08-27 10:00:15 +02:00