Commit Graph
2274 Commits
Author SHA1 Message Date
Michael Panchenko 60d4cba822 Feature: configure read-only memories through regex patterns 2026-03-05 22:19:42 +01:00
Dominik Jain b805b58fe3 Pin ruff 2026-03-05 17:05:44 +01:00
Dominik Jain e7ae10f7cd Update supported IDEs, move OCaml info to the proper place 2026-03-04 22:22:41 +01:00
John Haley 13e20c1cbd feat: Add comprehensive OCaml language support with ocaml-lsp-server integration (#573) 2026-03-04 21:56:49 +01:00
Michael Panchenko 2c901b0a0e Raise error if overview is requested without suitable LS support 2026-03-04 20:12:23 +01:00
Michael Panchenko 4e26785a85 Fix health-check command (was using old overview api) 2026-03-04 20:07:50 +01:00
DevonandClaude Opus 4.6 dbd7bf7596 Add HLSL and related languages support through shader-language-server (#1093)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 19:28:50 +01:00
Dominik Jain dadf3f6a18 Merge pull request #1128 from ClementBourt/fix/concurrent-log-file-collision
fix: append PID to log filename to prevent concurrent server collision
2026-03-04 15:16:13 +01:00
Dominik Jain ec15edde22 Clearly communicate scope of PRs [skip ci] 2026-03-04 14:43:58 +01:00
YenandClaude Sonnet 4.6 4b86e7b5e5 Enable Rego tests on Windows now that Regal fixed upstream path handling (#1114)
- Bump Regal from v0.36.1 to v0.39.0 which includes Windows path fixes
  (upstream fix: https://github.com/StyraInc/regal/issues/1683)
- Remove sys.platform == "win32" skipif from TestRegoLanguageServer

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-04 14:12:32 +01:00
Bourtguize-Ramel Clément cb0afa3d04 fix: append PID to log filename to prevent concurrent server collision
When multiple MCP servers start within the same second, they derive the
  same log filename from datetime_tag() (second-level precision only).
  Both then open the file with mode='w', causing one server's logs to be
  truncated and all subsequent output to be interleaved.

  Appending os.getpid() to the filename guarantees uniqueness across
  concurrent processes regardless of timing.
2026-03-04 12:18:05 +01:00
Dominik Jain 736a6ed103 Update list of supported IDEs 2026-03-04 12:05:53 +01:00
Michael Panchenko 47bb6326cf Fix references in docs 2026-03-04 01:17:23 +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
Dominik Jain 6e95e0e112 Merge pull request #1115 from oraios/improve-dotnet-handling
Improve .NET handling in C# and F# language servers
2026-03-02 21:14:04 +01:00
Dominik Jain 90967ad678 TestFSharpLanguageServer: Mark test_find_referencing_symbols with xfail 2026-03-02 21:13:18 +01:00
Dominik Jain eb78921c08 Split test_find_symbol_references and test_find_symbol into stable and unstable tests 2026-03-02 19:32:25 +01:00
Dominik Jain 9c336cc339 Update language requirements for C# and F#
[skip ci]
2026-03-02 19:29:00 +01:00
Dominik Jain c4844ec4a2 Raise .NET version in CI to 10 2026-03-02 17:47:38 +01:00
Dominik Jain 9800d4e98b Introduce DotNETUtil
* Apply in FSharpLanguageServer and CSharpLanguageServer
* CSharpLanguageServer: Disabled auto-install of .NET (does not work reliably)
  and remove corresponding test
* Remove TestFSharpLanguageServerSetup
2026-03-02 17:47:32 +01:00
Dominik Jain 9cd33aa503 Fully skip Phpactor tests on Windows (can cause hangs) 2026-03-02 00:23:46 +01:00
Dominik Jain 827512b4d1 Improve error reporting for LSP backend issues (LS initialisation)
* Include concrete information on failing language servers
* Explain how to access logs to get detailed information

Resolves #1112
2026-03-01 18:43:55 +01:00
Dominik Jain 6a798ef0c9 Merge pull request #1110 from oraios/fix/markdown-heading-symbol
Fix: Markdown heading symbols were low-level symbols
2026-03-01 14:55:21 +01:00
Dominik Jain 7ac79bae41 Marksman: Set document symbols cache fingerprint to account for override 2026-03-01 14:02:46 +01:00
Terrance Orletsky 003a9e2a6d Fix markdown heading symbol recognition in Marksman LSP
Marksman returns all headings (h1-h6) with SymbolKind.String (15), which
causes them to be treated as low-level symbols and filtered out of
get_symbols_overview results.

Override request_document_symbols in Marksman to remap SymbolKind.String
to SymbolKind.Namespace, which is semantically appropriate for headings
(named sections containing other content) and ensures they appear in
symbol overviews.
2026-03-01 13:57:47 +01:00
Dominik Jain 8375da7dc9 Rename _cache_context_fingerprint -> _document_symbols_cache_fingerprint
Also improve docstring to make clear what the purpose is
2026-03-01 13:05:49 +01:00
Dominik Jain 3d4610fef4 Merge branch 'main' into regression-test-init 2026-03-01 01:20:13 +01:00
Dominik Jain 67d8173f1e Add test for agent instantiation, including regression test for #1107 2026-03-01 01:19:14 +01:00
Dominik Jain 5333ea809f Fix active modes not necessarily being set in activate_project_from_path_or_name during init
Ref #1107
2026-03-01 01:04:09 +01:00
Dominik Jain be618a4653 Merge pull request #1106 from oraios/fix-exposed-tools
Refactor active mode and tool computation, fixing modes not being able to activate optional tools
2026-02-28 21:22:59 +01:00
Dominik Jain e62aa47b7e Refactor active mode and tool computation, fixing modes not being able to activate optional tools
Modes could not activate optional tools, because optional tools were not in the base toolset.
Base toolset computation was fully refactored, now considering all initial modes in the sense
that their inclusions are definitely part of the base toolset.

Dynamic mode changes after agent creation are still subject to the constraint that they
can essentially only disable tools; while they can technically also enable tools,
enabling is not effective unless the tools were also in the exposed toolset (as clients
otherwise cannot "see" them).

Fixes #1105
2026-02-28 20:23:00 +01:00
Dominik Jain 5af01c71dd LanguageServerManager.from_languages: Refactoring, ensuring original language order in dict 2026-02-28 12:24:20 +01:00
Alberto Simões e4c4bf4d19 [Kotlin LSP] Do not download extra Java. (#1079)
The language server is already bundled with a JRE
2026-02-27 12:40:25 +01:00
Dominik Jain 2e2c7bdb60 Add JetBrainsPluginClientManager to scan ports in parallel
This speeds up the port scan considerably (was 1s per port without server on Win).

[skip ci]
2026-02-26 00:14:45 +01:00
Dominik Jain d49c14c258 Use more precise failure instructions (no workarounds) [skip ci] 2026-02-25 22:10:23 +01:00
Dominik Jain 880b03f8cc Update project.yml 2026-02-25 22:10:01 +01:00
Dominik Jain 59c4e59964 Merge pull request #1084 from oraios/xfail-flaky-tests
Use xfail to mark flaky tests, fix TestHoverBudget
2026-02-25 12:01:57 +01:00
Dominik Jain 675384ee3d Fix TestHoverBudget (not adapted after interface change) 2026-02-24 21:44:05 +01:00
Dominik Jain 7ce1d0e564 Mark flaky tests with xfail instead of skip 2026-02-24 20:20:27 +01:00
Dominik Jain 8e6aad0f73 Update project.yml 2026-02-24 20:12:35 +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 229ce04312 Fix: the request_info for a batch of symbols was actually never optimized 2026-02-24 17:29:31 +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 a35ba3a597 Dashboard: Replace automatic banner rotation with random initial display and manual arrows
Replace the automatic timed banner rotation with a random initial banner
selection and small, manually operated arrow buttons for navigation.
Previous behavior can be restored by setting BannerRotation.automaticRotationEnabled to true.

The original slides used position:absolute + opacity for transitions.
This was changed to display:none/block because absolutely positioned
children don't contribute to their parent container's dimensions, causing
the banner containers to collapse to zero width/height. The arrow buttons
(position:absolute, top:50%) need a parent with real dimensions to
center correctly. With display:none/block, the active slide determines
the container's natural size.

The fixed height:60px on .gold-banner was removed for the same reason —
it clipped banner images that are taller than 60px.

An explicit height was added to .header-banner to ensure the arrow
buttons can vertically center via top:50% within the platinum banner area.
2026-02-24 15:12:55 +01:00
Dominik Jain 0c95433fb9 Merge pull request #835 from tkruse/main
Eclipse JDTLS: Add use_system_java_home, gradle_wrapper_enabled and gradle_java_home to support usage in context with restrictive gradle wrapper
2026-02-24 14:04:39 +01:00
Thibault Kruse 8c2f303636 835: Add an LS-specific settings use_system_java_home, gradle_wrapper_enabled and gradle_java_home
* fixes serena startup in cases where projects have a gradle wrapper which requires a specific JRE
2026-02-24 14:03:25 +01:00
Dominik Jain d7557b2033 Merge pull request #1074 from oraios/fix-agent-init
Improvements in SerenaAgent.__init__
2026-02-24 13:49:45 +01:00
Ariadne[bot] (butterflysky-ai)andClaude Opus 4.6 733c80bd46 Fix flaky file cache invalidation test
The test wrote two values to a file and relied on a 3-second sleep for
the filesystem mtime to advance, which fails when both writes land in
the same second (ext4/tmpfs have 1-second mtime granularity).

Fix: use os.utime() to explicitly bump mtime after the second write.
This is deterministic, instant, and tests the actual cache invalidation
logic (mtime comparison) rather than hoping the clock advances.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 13:44:33 +01:00
Dominik Jain 45ee5fe336 Inline method load_project_from_path_or_name 2026-02-24 12:53:41 +01:00