Commit Graph
2320 Commits
Author SHA1 Message Date
Dominik Jain 9b3cb94854 Simplify prompt of mode 'no-onboarding' [skip ci]
(made too many assumptions; presence of memories is indicated upon project activation)
2025-12-05 00:09:45 +01:00
Dominik Jain b4654d9b15 Remove unconditional statement about memories from system prompt 2025-12-04 13:40:25 +01:00
Dominik Jain 725eb08f80 Improve mode descriptions 2025-12-04 13:40:03 +01:00
Dominik Jain b1cee0a9f7 Increase likelihood of Serena's manual being read
(if not provided at MCP connection time)
2025-12-03 23:31:18 +01:00
Dominik Jain 790a9ed863 Improve description of CheckOnboardingPerformedTool 2025-12-03 23:31:18 +01:00
Dominik Jain c09b4139f5 Add 'no-memories' mode 2025-12-03 23:31:17 +01:00
w0wl0lxd b4914673a7 style: Fix black formatting in TOML test file 2025-12-01 04:06:44 -06:00
w0wl0lxd 5b31dfffed test: Add comprehensive TOML language server tests
Add 28 new tests across 4 test files for Taplo TOML language support:

- test_toml_edge_cases.py: Tests for inline tables, multiline strings,
  arrays of tables, nested tables, datetime values, and dependency tables
- test_toml_ignored_dirs.py: Tests for TOML-specific directory ignoring
  (target, .cargo, node_modules)
- test_toml_symbol_retrieval.py: Tests for document overview, symbol tree,
  directory overview, and symbol hierarchy operations
- __init__.py: Package initialization

Also adds config.toml test fixture with comprehensive TOML features for
edge case testing.

Total: 35 TOML tests (7 basic + 28 new), all passing.
2025-12-01 04:01:55 -06:00
w0wl0lxd 8b4cd2d33e fix: Taplo LSP initialization and test assertions
- Remove unsupported capabilities from Taplo initialization params
  (formatting, semanticTokens, configuration) that caused -32602 error
- Remove VS Code extension-specific initializationOptions (evenBetterToml)
- Update tests to match Taplo's actual symbol kinds (kind 19 for tables)
- Fix features symbol test to find top-level section, not nested key
2025-12-01 03:40:21 -06:00
w0wl0lxd c01d9d06e8 feat: Add TOML language support via Taplo
Add TOML language server using Taplo with automatic binary download
for .toml file validation, formatting, and schema support.

Security:
- SHA256 checksum verification for downloaded binaries
- Zip slip vulnerability protection for archive extraction
- Download timeout (120s) to prevent indefinite hangs

Fixes #796: serena project index fails on Rust projects when
project.yml contains languages: ["toml"]. Without TOML in the
Language enum, loading such configurations raises ValueError:
'toml' is not a valid Language. This commonly occurs in Rust
projects where users want to index Cargo.toml alongside .rs files.
2025-12-01 02:49:52 -06:00
Dominik Jain 855818da63 System prompt: Improve potentially misleading information on find_symbol usage
Potentially affects #790
2025-11-29 12:42:51 +01:00
Dominik Jain 2691d65b46 Merge pull request #787 from mdbenito/fix/unused-arg
Bugfix: Remove spurious arg from log call
2025-11-27 13:29:54 +01:00
Miguel de Benito Delgado a5a62748c8 Remove spurious arg from log call 2025-11-27 11:49:21 +01:00
Dominik Jain f2c891c59b Allow non-ASCII characters in JSON responses
escaping only required characters

Introduce method Tool._to_json to unify JSON handling

Resolves #785
2025-11-26 22:58:58 +01:00
Dominik Jain 0c2bc17713 Merge pull request #781 from oraios/remove-ls-logger
Remove LanguageServerLogger
2025-11-26 22:41:56 +01:00
Dominik Jain 7e507c11b9 Sync mux
commit 32170df9a77208235818872af48477689c2c8ebe
  Author: Dominik Jain <dominik.jain@outlook.com>
  Date:   Sun Nov 23 23:35:28 2025 +0100

      Refactor SerenaMCPFactory, removing obsolete subclass

  src-serena/serena/mcp.py
2025-11-23 23:36:45 +01:00
Dominik Jain 9781710f4e Sync mux
commit c5b59a6cb87a093327b3bc2bbfa2a485a3b18d1f
  Author: Dominik Jain <dominik.jain@outlook.com>
  Date:   Sun Nov 23 18:53:06 2025 +0100

      ToolRegistry: Allow valid tool packages to be modified

  src-serena/serena/tools/tools_base.py

  commit 9b4299d4f3e12fe67919e304d9e33c527ee0f345
  Author: Dominik Jain <dominik.jain@outlook.com>
  Date:   Sun Nov 23 17:47:39 2025 +0100

      ToolInclusionDefinition: Add option to specify a fixed tool set

  src-serena/serena/agent.py
  src-serena/serena/config/serena_config.py
2025-11-23 22:29:53 +01:00
Dominik Jain d58dbebce2 Add repo dir sync [skip ci] 2025-11-23 15:57:45 +01:00
Dominik Jain 7f11d6b7e8 Fix SuspendedLoggerContext (adding a copy to serena.util.logging) 2025-11-23 13:32:41 +01:00
Dominik Jain 09722e9e72 Remove references to multilspy 2025-11-23 13:32:13 +01:00
Dominik Jain 3ffbaa090e Improve documentation on connecting clients 2025-11-21 15:45:50 +01:00
Dominik Jain 82d495b2a6 Remove LanguageServerLogger
Resolves #745
2025-11-20 21:33:37 +01: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
Dominik Jain 09200b8da8 Improve tests (test actual core behaviour, not random specifics) 2025-11-20 14:34:42 +01:00
Dominik Jain 7f60139323 Merge pull request #776 from oraios/pick-languages-cli
Allow the user to interactively enable additional languages
2025-11-20 12:33:33 +01:00
Dominik Jain c544f9e6cc Update exception text (auto-creating a project in a directory without source files) 2025-11-20 12:31:16 +01:00
Dominik Jain 4a5284136d Merge pull request #778 from oraios/enable-java-tests
Enable Java tests in CI (at least on Windows)
2025-11-20 12:17:39 +01:00
Dominik Jain f003684f43 Remove now unused 'type: ignore' 2025-11-20 12:13:56 +01:00
Dominik Jain 2da8e278de Avoid casts, fix dictionaries instead 2025-11-20 12:10:56 +01:00
Michael Panchenko 4a3590bcde More types, less type: ignore
Thanks to Claude Code
2025-11-20 15:05:58 +07:00
Michael Panchenko fff9f1e983 Elixir: bump time to wait for cross-file referencing
Needed since #763 removed the 120s "settling time" at server startup and now
 elixir tests are failing
2025-11-20 14:30:49 +07:00
Michael Panchenko dd3fc54308 CI: lint first, before expensive installs 2025-11-20 14:12:01 +07:00
Michael Panchenko a5071d776b Fix type errors and actual errors in ALLanguageServer
Actual errors: timeout kwarg passed to send_request (no such kwarg exists in the method)
2025-11-20 14:09:10 +07:00
Dominik Jain 860e6b066e Allow the user to interactively enable additional languages when creating a project via CLI
Resolves #768
2025-11-20 07:04:39 +01:00
Dominik Jain 9709be8e7a Skip Java tests only in CI 2025-11-20 06:28:14 +01:00
Dominik Jain 2b157d4e8f Limit Java tests to Windows 2025-11-20 00:38:05 +01:00
Dominik Jain 06c11b2479 Fix return type annotation 2025-11-20 00:29:24 +01:00
Dominik Jain 282c06eb62 Add mypy to CI pipeline (run after tests) 2025-11-19 23:57:32 +01:00
Dominik Jain 2338d33356 Fix mypy issues 2025-11-19 23:45:11 +01:00
Dominik Jain a52756be46 Remove duplicate type RenameParams 2025-11-19 23:05:55 +01:00
Dominik Jain c575c418fb Fix mypy issues 2025-11-19 23:04:29 +01:00
Dominik Jain 01cf4bd0a3 Fix duplicate type (DiagnosticsSeverity vs DiagnosticSeverity) 2025-11-19 22:34:40 +01:00
Dominik Jain b72fe2d45d Fix mypy issues 2025-11-19 22:32:29 +01:00
Dominik Jain 11cb8f2811 Merge branch 'main' into mypy_on_solidlsp
Conflicts:
	src/solidlsp/language_servers/elixir_tools/elixir_tools.py
	src/solidlsp/language_servers/gopls.py
	src/solidlsp/language_servers/terraform_ls.py
	src/solidlsp/ls.py
	src/solidlsp/ls_handler.py
2025-11-19 22:10:16 +01:00
Dominik Jain dede2efcb1 Enable Java tests 2025-11-19 22:06:09 +01:00
Dominik Jain ea3c454a6d Fix signature of overridden method; fixes #777 2025-11-19 21:52:23 +01:00
Dominik Jain d103235561 Update language restrictions (Java no longer has symbol naming-related issues)
[skip ci]
2025-11-19 21:00:18 +01:00
Dominik Jain 4385203956 Fix use of outdated data['language'] in exception 2025-11-19 19:45:59 +01:00
Dominik Jain d97cc2889c Move class ToolSet to module agent 2025-11-19 19:40:31 +01:00