Commit Graph
1986 Commits
Author SHA1 Message Date
Roman Nikulenkov 3768cb6e31 Add include_info hover budget configuration and validation
- Introduced `include_info_hover_budget_seconds` to ProjectConfig and SerenaConfig for per-project and global hover request time limits.
- Updated YAML templates to include hover budget settings with appropriate documentation.
- Enhanced LanguageServerSymbolRetriever to respect hover budget during symbol info requests, allowing for partial results if the budget is exceeded.
- Added unit tests to validate hover budget behavior and ensure correct handling of various budget scenarios.
Change log level from error to debug for performance logging in LanguageServerSymbolRetriever and SolidLanguageServer
Change log level from debug to error for performance logging in LanguageServerSymbolRetriever and SolidLanguageServer
Enhance symbol retrieval by adding batch request method and optimize hover info fetching + DEBUG
2026-01-19 12:45:25 +03:00
Dominik Jain 3748eb8b7c TestSerenaAgent.test_find_symbol: Fix test by continuing to test with include_info=True 2026-01-18 19:11:00 +01:00
Dominik Jain 486340b2ba FindReferencingSymbolsTool: Disable include_info by default #951 2026-01-18 16:50:56 +01:00
Dominik Jain 684953f646 FindSymbolTool: Disable include_info by default #951 2026-01-18 16:31:49 +01:00
Dominik Jain b5c49c0726 SerenaConfig.propagate_settings: Add missing return type declaration 2026-01-17 00:47:36 +01:00
Dominik Jain 1c17d61121 Improve documentation (particularly on configuration) and the issue template 2026-01-17 00:46:43 +01:00
Dominik Jain 7c1cc2ad0e Improve/extend SerenaConfig
* Make the save function update all configuration settings
  * Consider all non-existing keys to be a migration, triggering a resave
  * Improve handling of settings that do not use the same name in
    the configuration file
  * Properly group SerenaConfig class members:
      - public setting (config file-mapped)
      - private setting (renamed to use _ prefix)
      - static member
      - methods
  * Add configuration setting 'jetbrains_plugin_server_adress',
    which is centrally propagated (avoiding injection)
  * Add 'fixed_tools' to template file (was previously a "hidden" setting)

Relates to #941
2026-01-16 16:03:05 +01:00
Dominik Jain 6c4d6e5b67 Improve docstrings [skip ci] 2026-01-16 15:14:38 +01:00
Dominik Jain b0dd8512bb Merge pull request #933 from oraios/ls-dependency-provider
Introduce LanguageServerDependencyProvider abstraction
2026-01-15 21:36:07 +01:00
Dominik Jain eefebaf018 Add ls_path to documentation and general improvements to ls_specific_settings documentation 2026-01-15 19:15:27 +01:00
Dominik Jain deb416353b Merge remote-tracking branch 'origin/main' into ls-dependency-provider 2026-01-15 18:58:38 +01:00
Dominik Jain 95a856c2e5 LanguageServerDependencyProviderSinglePath: Mention ls_path configurability 2026-01-15 18:55:15 +01:00
Dominik Jain ccca8dad26 Update language addition guide to use DependencyProvider 2026-01-15 18:55:15 +01:00
Dominik Jain 2217f516af ClangdLanguageServer: Refactored to use DependencyProvider 2026-01-15 18:55:15 +01:00
Dominik Jain ac1531b305 ClojureLSP: Refactored to use DependencyProvider 2026-01-15 18:55:15 +01:00
Dominik Jain f45db064d4 Intelephense: Refactored to use DependencyProvider 2026-01-15 18:55:15 +01:00
Dominik Jain b33a4085c2 CSharpLanguageServer: Refactored to use DependencyProvider 2026-01-15 18:55:15 +01: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
Dominik Jain dd3c97b81f Remove Rider from list of IDEs [skip ci] 2026-01-14 23:06:03 +01:00
Dominik Jain 29adb65d39 Project.is_path_in_project: Allow symlinks pointing outside the project directory to be accessed
It is reasonable to assume that symlinks point to relevant project content (instead of disallowing access).

Resolves #936
2026-01-14 19:17:40 +01:00
Dominik Jain be50086930 Merge pull request #938 from oraios/open_dashboard_param_in_cli
Open dashboard param in cli and client info in dashboard
2026-01-14 18:26:48 +01:00
Dominik Jain 129be9bdb1 Improve logging, apply timeout only to project ready event #937 2026-01-14 18:22:27 +01:00
Michael Panchenko 26f66a5d23 Hotfix: Add timeout to waiting for server readiness in EclipseJDTLS 2026-01-14 23:52:27 +07:00
Michael Panchenko 2eca7af593 Display info about the client (that performed the last tool call) in dashboard
Had to hack around a bit to make it happen but worth the added transparency for users
2026-01-14 22:18:20 +07:00
Dominik Jain c7c07046c5 EclipseJDTLS: Log language status updates #937 2026-01-14 12:20:09 +01:00
Michael Panchenko 5897585ef2 Support for --open_web_dashboard in the CLI
Also extended docs around that topic.

The setting `context_settings={"max_content_width": _MAX_CONTENT_WIDTH}` in the click command makes the CLI --help output more readable and ensures longer links are not broken up into multiple lines. For consistency, I added it to all commands
2026-01-14 14:14:59 +07:00
Dominik Jain 62cff92b0f Refactor DependencyProvider: Rename method create_process_env -> create_launch_command_env 2026-01-14 02:33:31 +01:00
Dominik Jain 97a777c55b MatLabLanguageServer: Move _find_matlab_installation into DependencyProvider 2026-01-14 02:33:31 +01:00
Dominik Jain df642b8ca1 VueTypeScriptServer: Refactor to use DependencyProvider 2026-01-14 02:33:31 +01:00
Dominik Jain 20b9104702 EclipseJDTLS: Refactor to use DependencyProvider 2026-01-14 02:33:31 +01:00
Dominik Jain 9350017605 PyrightServer: Use sys.executable instead of just 'python' (just in case) 2026-01-14 02:33:31 +01:00
Dominik Jain 941f4ea253 PyrightServer: Refactor to use DependencyProvider 2026-01-14 02:30:48 +01:00
Dominik Jain 9560ee651d Introduce LanguageServerDependencyProvider abstraction
* Add specialisation LanguageServerDependencyProviderSinglePath,
    where the core path can be overridden via ls_specific_settings #917
  * Implement in MatLabLanguageServer and TypeScriptLanguageServer
  * Backwards compatibility is retained; the new approach is optional
2026-01-14 02:29:15 +01:00
Dominik Jain b7142cbfd4 Use simple executor for poe to avoid uv env recreation trouble 2026-01-13 23:16:38 +01:00
Dominik Jain 5c60f1e8b5 ReplaceContentTool: Improve error case message 2026-01-13 22:14:34 +01:00
Dominik Jain 16792389d7 Add missing DotNetRuntime dependency for win-arm64
Fixes #921
2026-01-13 17:05:15 +01:00
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
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