Commit Graph

122 Commits

Author SHA1 Message Date
Michael Panchenko 3d4dba77bd Formatting, minor ruff fixes 2025-06-28 23:42:44 +02:00
Claude Assistant 07118e6fd6 Move serena.sln to C# test resources directory
Relocates the solution file to test/resources/repos/csharp/
to organize C# test assets and keep the root directory clean.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-28 23:42:44 +02:00
Claude Assistant 723b7cb175 Fix C# language server startup and test configuration
- Add required --stdio flag for Microsoft.CodeAnalysis.LanguageServer
- Add required --extensionLogDirectory parameter to avoid startup failure
- Fix test fixture to properly start/stop language server
- Remove skip markers from C# tests to enable testing
- Return cache_dir from setup_runtime_dependencies for log directory creation

The language server now starts successfully and the first test passes.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-25 23:49:54 +01:00
Claude Assistant 2a77363cdf chore: Remove and gitignore C# build artifacts
- Delete obj/ and bin/ directories from test project
- Add .gitignore for C# test project to exclude build artifacts
- Prevents committing build files, temporary files, and NuGet packages
2025-06-25 23:21:41 +01:00
Claude Assistant 57e30aec57 Replace OmniSharp with Microsoft.CodeAnalysis.LanguageServer
- Implemented new CSharpLanguageServer class using Microsoft's official C# language server
- Downloads Microsoft.CodeAnalysis.LanguageServer NuGet package (requires .NET 9)
- Supports direct download from NuGet API with fallback to package managers
- Uses platform-specific runtime packages (linux-x64, win-x64, osx-x64, etc.)
- Caches downloaded language server in ~/.cache/serena/language-servers/csharp/
- Added basic tests for C# language server functionality
- Updated SolidLanguageServer.create to use new implementation
- Removed old OmniSharp implementation

Note: Full language server tests are skipped as they require .NET 9 runtime
2025-06-25 22:56:17 +01:00
Claude Assistant d44ea9c6e5 Fix remaining import errors in CSharpLanguageServer
- Change from solidlsp.exceptions to solidlsp.ls_exceptions
- Change from solidlsp.logger to solidlsp.ls_logger

These modules follow the ls_ prefix convention used throughout the solidlsp package.
2025-06-25 22:27:24 +01:00
Tom Longhurst eb8b118d62 Initial Commit 2025-06-25 22:01:46 +01:00
Dominik Jain 725f252152 Merge branch 'main' of github.com:oraios/serena 2025-06-23 20:47:59 +02:00
Dominik Jain 719a2c55a8 Update references to multilspy and update READMEs 2025-06-23 20:47:27 +02:00
Michael Panchenko 365a4e353a Merge branch 'main' into editing-improvements 2025-06-23 20:31:21 +02:00
Dominik Jain f182db59e3 Rename language server modules and classes 2025-06-23 17:46:58 +02:00
Dominik Jain 05a7d438bc Update language server imports to no longer use renames 2025-06-23 17:11:26 +02:00
Dominik Jain e60d42211a Update language server instantiation to always use SolidLanguageServer 2025-06-23 17:03:36 +02:00
Dominik Jain 1bdc024040 Change imports to use SolidLanguageServer instead of SyncLanguageServer 2025-06-23 17:03:35 +02:00
Dominik Jain c2593a1171 Apply black & ruff to modules copied from multilspy 2025-06-23 16:34:56 +02:00
Dominik Jain 27826d89c6 Move components from multilspy to solidlsp 2025-06-23 16:25:19 +02:00
Dominik Jain b5d9488883 Update test snapshots 2025-06-23 14:43:43 +02:00
Dominik Jain 07ea1370dc Add tests for adding a class with 'LLM-provided' leading/trailing newlines 2025-06-23 14:06:04 +02:00
Dominik Jain 3726408a6f Update editing tests 2025-06-22 23:39:13 +02:00
Dominik Jain 772bc56fc3 Update references to make_tool function in tests 2025-06-21 23:09:12 +02:00
Dominik Jain ac172dcab6 Add global flag USE_SOLID_LSP to switch from multilspy to solidlsp 2025-06-21 20:10:11 +02:00
Yaroslav Halchenko 64ab987e1c Ignore some lines in tests with "fo" 2025-06-19 01:25:35 -04:00
Michael Panchenko 35f2aaa5ff Fixes in glob matching, extended tests 2025-06-16 17:51:41 +02:00
Michael Panchenko 343c00f605 Fix process termination issues and allow terminating through dashboard 2025-06-15 18:31:17 +02:00
Michael Panchenko 1327c7a118 Tests for isolated agent 2025-06-15 17:47:46 +02:00
Michael Panchenko ad96a7b255 Minor renaming 2025-06-15 16:14:40 +02:00
Michael Panchenko b87caf7e0a Merge branch 'main' into fix_deadlocks
# Conflicts:
#	test/conftest.py
2025-06-15 15:17:48 +02:00
Michael Panchenko 37d1004460 Fixes in SerenaAgent isolation in process creation
make_tool previously depended on tool instances in the main process, but the tool instances are no longer available there

To solve this, the tool interface was adjusted to provide static information which is used in the ProcessIsolatedTool wrapper.

I also tried another approach before, where ProcessIsolatedTool would accept tool metadata at init, but this lead to serialization issues that couldn't be easily solved (mcp's FuncMetadata is not serializable, despite being a BaseModel...).

Tests for checking that the wrapped tool instance has the same metadata as the wrapper have been added.
2025-06-15 15:15:23 +02:00
Michael Panchenko 3f5b4da532 More config options for logging in tests, formating 2025-06-13 23:31:48 +02:00
Michael Panchenko b1e14d8267 Force-added ingored file in test resources
Needed for tests involving ignored patterns
2025-06-13 23:29:35 +02:00
Michael Panchenko 40e9bb87c1 Tests: use gitignore parser in LS setup, remove duplication 2025-06-13 23:29:35 +02:00
Michael Panchenko 47a133a7c0 Typo 2025-06-13 23:29:35 +02:00
Michael Panchenko 3ca27e47d5 Fix tests to correctly use gitignore for LS setup 2025-06-13 23:29:35 +02:00
Michael Panchenko 287e59e45e Merge remote-tracking branch 'origin/main' 2025-06-13 18:13:58 +02:00
Michael Panchenko b185a9f595 Tests: use gitignore parser in LS setup, remove duplication 2025-06-13 18:13:46 +02:00
Michael Panchenko 099ab41203 Typo 2025-06-13 18:13:46 +02:00
Michael Panchenko 8cd50fab16 Force-added ingored file in test resources
Needed for tests involving ignored patterns
2025-06-13 18:13:46 +02:00
Michael Panchenko b0ade9e9fa Fix tests to correctly use gitignore for LS setup 2025-06-13 18:13:46 +02:00
Dominik Jain e19b0b6d34 Fix glob pattern escaping 2025-06-13 11:54:56 +02:00
Michael Panchenko 0c5a98236f Gitignore: fix handling of anchored ignores
Previously anchored ignores would be erroneosly ingored everywhere
2025-06-11 17:09:33 +02:00
Michael Panchenko 993c6f6dfd Mercilessly kill all asyncio stuff at shutdown 2025-06-10 00:29:37 +02:00
Michael Panchenko d2cd006007 More logging in tests 2025-06-09 22:01:03 +02:00
nikita2206 597c28c8e8 feat: Add Java 21 support to multilspy
- Update Eclipse JDTLS to vscode-java v1.42.0 with Java 21.0.7 JRE
- Update Kotlin language server dependencies to use Java 21
- Update test Maven project to use Java 21 compiler settings
- Update runtime configuration from JavaSE-17 to JavaSE-21
- Update dependency versions: lombok 1.18.36, launcher 1.7.0

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-06 11:10:36 +02:00
Michael Panchenko 7445bbcc42 Revert GH changes, don't run snapshot tests on Windows 2025-06-04 21:23:21 +02:00
Michael Panchenko dfe3633a42 Adjusted agent tests to new return of symbol tools 2025-06-04 21:03:20 +02:00
Michael Panchenko 3ee5f8e900 Minor prompting, renaming and memory file handling
- Moved symbol-reading related prompt to system prompt (from planning) since it's always need
- Use relative_path as kwarg in all tools (models get confused by different kwarg names)
- Identify and list memories without .md extension appearing
2025-06-03 12:23:35 +02:00
Michael Panchenko 795ffda435 Update snapshot (whitespace issues) 2025-06-02 22:01:23 +02:00
Michael Panchenko 950caaf91c Add and use use_same_indentation flag to body-replacement 2025-06-01 23:26:11 +02:00
Michael Panchenko e8d5cefe9d Adjusted test 2025-05-31 14:12:38 +02:00
Michael Panchenko fe6a7d04f4 Major: replace location-based symbol referencing by name_path based
Also:
1. find_references now cannot return bodies, instead content around the reference is included
2. find_reference_snippets tool removed since it's no longer necessary
2025-05-31 14:03:45 +02:00