Commit Graph
2051 Commits
Author SHA1 Message Date
Michael Panchenko ba62b0ffd3 Added link to news [ci skip] 2026-01-13 22:35:19 +07:00
Dominik Jain 8de9fcc657 Merge pull request #915 from oraios/add_news_display
TypeHierarchyTool and symbol info in find_symbol tools
2026-01-13 13:30:04 +01:00
Dominik Jain f05e425691 Improve logical clarity of inclusion logic, improve documentation of flags 2026-01-13 12:47:44 +01:00
Dominik Jain 341ac2ed59 Merge branch 'main' into add_news_display
Conflicts:
	src/serena/tools/jetbrains_tools.py
2026-01-13 12:36:07 +01:00
Dominik Jain d75b41b6ae scan_directory: Catch exceptions due to relative path conversion (e.g. nul device file on Windows) #931 2026-01-13 11:33:19 +01:00
Dominik Jain 2b50c360e2 Dashboard: Fix free port search not using the proper listen address #929 2026-01-13 01:29:34 +01:00
MaxMiksa 1946d9c195 SolidLSP: open file before TS rename
Ensure didOpen/didClose around textDocument/rename and add regression test.
2026-01-12 16:56:02 -05:00
Dominik Jain d7e4f7c689 JetBrainsGetSymbolsOverviewTool: Allow to disable compact format for testing 2026-01-12 19:36:23 +01:00
Michael Panchenko eeda995515 Merge branch 'add_news_display' of github.com:oraios/serena into add_news_display 2026-01-12 22:49:01 +07:00
Michael Panchenko 901813c1d9 Disable info retrieval test for Kotlin and for F# module symbol 2026-01-12 22:44:00 +07:00
Dominik Jain 5c3cd478f6 Improve news wording 2026-01-11 15:00:31 +01:00
Michael Panchenko aee0c4c896 Most merge-conflict fix 2026-01-11 20:27:21 +07:00
Michael Panchenko 3702d6d8ed Readme, changelog 2026-01-11 20:21:32 +07:00
Michael Panchenko 68d91593ef Merge branch 'main' into add_news_display
Conflicts:
	src/serena/tools/jetbrains_plugin_client.py
2026-01-11 20:14:47 +07:00
Michael Panchenko 8f6c1c7e17 Added actual news item, removed placeholder 2026-01-11 20:05:42 +07:00
Michael Panchenko f35e10da8c Dashboard: use standard button for marking news as read 2026-01-11 20:05:19 +07:00
Michael Panchenko fac3393e0d Added include_info parameter to JBFindReferencingSymbolsTool 2026-01-11 20:01:24 +07:00
Dominik Jain f24073c0c0 Merge pull request #919 from ketema/fix/shutdown-params-void-pr
fix(lsp): Omit params field for shutdown/exit methods (#870)
2026-01-11 13:46:42 +01:00
Michael Panchenko 156171e8f1 Minor 2026-01-11 19:30:59 +07:00
Michael Panchenko f3a508b7f2 Merge branch 'feature/docstring_and_signature' into add_news_display
# Conflicts:
#	src/serena/code_editor.py
2026-01-11 19:28:49 +07:00
Ketema Harris 502d3f3e60 fix(lsp): Omit params field for shutdown/exit methods (#870)
WHY:
- HLS (Haskell) and rust-analyzer use Void/unit types for shutdown/exit
- These strict-typed servers reject ANY params field (even empty {})
- PR #851 changed to send params:{} for Delphi/FPC compatibility
- This broke HLS/rust-analyzer with "Cannot parse Void" errors

EXPECTED:
- shutdown/exit methods: omit params field entirely (HLS/rust-analyzer compat)
- Other methods with None: send params:{} (Delphi/FPC compat)
- Other methods with params: include them unchanged (standard behavior)
- Three-way compatibility preserved per JSON-RPC 2.0 spec

Refs: oraios/serena#870
2026-01-10 23:31:23 -05:00
Dominik Jain 86cbcf0cda Merge pull request #913 from CervEdin/main
fix(java): add missing linux-arm64 configuration for Eclipse JDTLS
2026-01-10 13:56:43 +01:00
Egor a8cc4711b6 fix: add WSL path normalization for JetBrains plugin matching (#916)
* fix: add WSL path normalization for JetBrains plugin matching

When running Serena MCP server inside WSL2 with JetBrains IDE on Windows,
the plugin returns paths like `//wsl.localhost/Ubuntu-24.04/home/user/...`
while Serena expects `/home/user/...`. This causes `ServerNotFoundError`
because the paths don't match despite pointing to the same location.

This commit adds `_normalize_wsl_path()` method that converts WSL UNC
paths to standard Linux paths before comparison, enabling seamless
integration between WSL-based Claude Code and Windows-based JetBrains IDEs.

Fixes #912
2026-01-10 13:42:44 +01:00
Dominik Jain b805ae99a7 Merge pull request #909 from cx-alberto-simoes/PR/FixIssueWithModeAndContextYamlFiles
Support --mode and --context with yaml files
2026-01-10 12:40:03 +01:00
Dominik Jain ab599b7c8f Merge pull request #882 from ximot/feature/open-dashboard-tool
feat: Add open_dashboard MCP tool for on-demand dashboard opening
2026-01-10 12:27:47 +01: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
Dominik Jain b10f36f1c8 Introduce dedicated exception classes
* for expected API errors (that shall simply be passed on)
  * for unexpected server errors (that may need to be reported)
2026-01-09 23:28:05 +01:00
Michael Panchenko 8f89bc32b1 Adding news support in dashboard, WIP 2026-01-10 00:52:31 +07:00
zen010101 fa012910cb feat(pascal): add Pascal language server support
Add support for Free Pascal/Lazarus projects using pasls.

Features:
- Auto-download pasls binary for Linux, macOS, and Windows
- Platform detection for x64 and arm64 architectures
- Support for FPC environment variables (PP, FPCDIR)

CI: Add FPC compiler installation (fpc-ootb for Windows)

Includes test repository and unit tests.
2026-01-10 01:30:55 +08:00
Dominik Jain 021572f572 JetBrainsTypeHierarchyTool: Remove error handling (now auto-handled via exception) 2026-01-09 18:22:59 +01:00
Dominik Jain d58cc58195 JetBrainsTypeHierarchyTool: Change default type to 'both' 2026-01-09 18:22:14 +01:00
Dominik Jain 32a97eb306 Do not overwrite input variable for flexibility 2026-01-09 18:21:34 +01:00
Dominik Jain a5f586fda2 Add version check for new features, telling the caller to update 2026-01-09 13:34:57 +01:00
Erik Cervin-EdinandClaude Opus 4.5 77af789fc3 fix(java): add missing linux-arm64 configuration for Eclipse JDTLS
The linux-arm64 platform entry was missing required fields (jre_home_path,
jre_path, lombok_jar_path, jdtls_launcher_jar_path, jdtls_readonly_config_path)
causing a KeyError when activating Java projects on ARM64 Linux systems.

Fixes #486

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 11:22:16 +01:00
Alberto Simoes ff68b53397 Fix context and mode file detection logic
- Replace .yml extension check with proper file existence check
- Check if path exists as a file first before treating as name
- Raise FileNotFoundError for paths that look like files but don't exist
  (contains path separators or ends with .yml/.yaml)
- Improves error messages when file paths are invalid
2026-01-09 09:35:01 +00:00
Alberto Simões 4cdc2a7405 Merge pull request #1 from cx-alberto-simoes/Test
Validate if files exist, instead of just lookint to yml extension
2026-01-09 09:20:56 +00:00
Dominik Jain 337472a33a Postprocess HTML documentation in symbol overviews within the client, not the tool 2026-01-08 18:10:30 +01:00
Dominik Jain 01d0f26164 Post-process symbol collections in the client (implementing it centrally for all affected API calls) 2026-01-08 17:52:32 +01:00
Dominik Jain 76834ddf32 JetBrainsFindReferencingSymbolsTool: set include_quick_info to False by default
Signature info is not generally helpful when looking for references
2026-01-08 17:29:46 +01:00
Alberto Simoes c25fb66262 Instead of checking for extension, check if file exists 2026-01-08 15:02:22 +00:00
Dominik Jain 18a9a13f69 Add type jb.GetSymbolsOverviewResponse 2026-01-08 16:02:16 +01:00
Alberto Simoes 201db5afcb Instead of checking for extension, check if file exists 2026-01-08 15:00:00 +00:00
Dominik Jain e1e7c233ed JetBrainsPluginClient.get_symbols_overview: Add parameter include_file_documentation 2026-01-08 15:48:46 +01:00
Dominik Jain 25db8275a0 JetBrainsPluginClient.find_symbol: Change new flag defaults to False 2026-01-08 15:33:55 +01:00
Dominik Jain 04d9abd854 Fix incorrect default in docstring 2026-01-08 15:15:02 +01:00
Dominik Jain 360e8d31c6 JetBrainsPluginClient: Consistently use private members 2026-01-08 15:05:41 +01:00
Dominik Jain 0da7abd324 Log JetBrains plugin version for matching client 2026-01-08 15:05:41 +01:00
Dominik Jain e3915371b4 Check for (non-)recoverable error only for 2023.2.6+, where status code is differentiated 2026-01-08 15:05:41 +01:00
Dominik Jain 559250cfdd Get plugin status upon client construction, storing version 2026-01-08 15:05:41 +01:00
Dominik Jain e996e914cf Add version util 2026-01-08 15:05:41 +01:00