Commit Graph

795 Commits

Author SHA1 Message Date
Claude Assistant 9a2c1659cd Fix import error in CSharpLanguageServer
Fixed incorrect import path: changed from 'solidlsp.config' to 'solidlsp.ls_config'
to match the actual module structure used throughout the codebase.
2025-06-25 22:24:39 +01:00
Claude Assistant ac7547308e Replace csharp-ls with official Microsoft.CodeAnalysis.LanguageServer
This commit updates the C# language server implementation to use the official
Microsoft.CodeAnalysis.LanguageServer package instead of csharp-ls.

Key changes:
- Download and use platform-specific Microsoft.CodeAnalysis.LanguageServer packages
- Support for Windows, Linux, and macOS with appropriate runtime IDs
- Automatic package download and caching in ~/.cache/serena/language-servers/
- Uses stdio communication by default
- Enhanced initialization with workspace folders support

The new implementation provides better stability and feature parity with
VS Code's official C# extension since it uses the same underlying language server.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-25 22:16:39 +01:00
Tom Longhurst eb8b118d62 Initial Commit 2025-06-25 22:01:46 +01:00
Michael Panchenko 13d2051bab CONTRIBUTING.md, updated LS adding instructions [ci skip] 2025-06-25 18:15:03 +02:00
Michael Panchenko 4fd281b7bc Readme: removed mentions of goose 2025-06-25 18:15:03 +02:00
Dominik Jain b1eba4563e LS.request_parsed_file: Enable followlinks in os.walk 2025-06-24 16:14:09 +02:00
Michael Panchenko edc5112fea Skip not found files in request_parsed_files with a warning
Instead of raising an error
2025-06-24 15:05:42 +02:00
Dominik Jain 458f218c12 Merge pull request #227 from oraios/task-queue-async-init
Use a synchronized task queue for agent tasks and LS initialization
2025-06-24 13:51:16 +02:00
Dominik Jain 1a055cf2bb Do not log error determining Serena git commit id (not possible when using uvx) 2025-06-24 13:48:34 +02:00
Dominik Jain 2b68790bce Add method execute_task for synchronous execution and apply it in demo script 2025-06-24 13:33:15 +02:00
Dominik Jain e1d664b25d Assign meaningful names to tasks 2025-06-24 13:24:48 +02:00
Dominik Jain 76558edd44 Initialize project-specific instances that don't require the LS (such as the memory manager) immediately 2025-06-24 13:24:48 +02:00
Dominik Jain 6c9746ec76 Log task scheduling and execution explicitly, adding task identifiers
Lock task scheduling (just in case we call it from multiple threads in the future)
2025-06-24 13:24:48 +02:00
Dominik Jain e3d021a432 Improve logging to show thread name 2025-06-24 13:24:48 +02:00
Dominik Jain 404f026bbd Use a synchronized task queue for agent tasks (thread pool with 1 worker),
which we also use to start the language server in the background
2025-06-24 13:24:48 +02:00
Dominik Jain d3b1f9bb90 Explain language choice in more detail 2025-06-23 22:08:14 +02:00
Michael Panchenko 540b678676 project template, removed javascript [ci skip] 2025-06-23 21:58:25 +02:00
Michael Panchenko 757e4bb79b Memories [ci skip] 2025-06-23 21:46:51 +02:00
Dominik Jain 15e835da75 Merge branch 'main' of github.com:oraios/serena 2025-06-23 21:40:20 +02:00
Dominik Jain bffea2172c Re-add multilspy folders to exclusions
as unversioned files (*/static) remain unless explicitly deleted
2025-06-23 21:40:02 +02:00
Michael Panchenko 1de0a186ce Bumped cache version [ci skip] 2025-06-23 21:29:20 +02:00
Michael Panchenko ac4ef9911e changelog [ci skip] 2025-06-23 21:26:38 +02:00
Michael Panchenko 42a8796353 search_for_pattern: better default and description of restrict_search_to_code_files param 2025-06-23 21:22:59 +02:00
Dominik Jain 449188693e Consider timeout for LS requests 2025-06-23 21:15:32 +02:00
Michael Panchenko 769fc79850 Backwards compat restored for activating javascript projects [ci skip] 2025-06-23 21:05:05 +02:00
Michael Panchenko 3a972b550d Merge remote-tracking branch 'origin/main' 2025-06-23 21:00:28 +02:00
Michael Panchenko ba74c05970 Removed javascript from languages (just ts is enough), enhanced ts file matching 2025-06-23 21:00:20 +02: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 225c4434a2 Merge pull request #225 from oraios/editing-improvements
Editing improvements
2025-06-23 20:46:39 +02:00
Michael Panchenko dfc841857e Typo 2025-06-23 20:44:42 +02:00
Michael Panchenko b951331764 Formatting, removing mentions of multilspy in pyproject 2025-06-23 20:40:52 +02:00
Michael Panchenko 4e6ad37e26 Changelog 2025-06-23 20:33:04 +02:00
Michael Panchenko 365a4e353a Merge branch 'main' into editing-improvements 2025-06-23 20:31:21 +02:00
Dominik Jain a96e5bb476 Update change log [skip ci] 2025-06-23 18:04:59 +02:00
Dominik Jain 277699b826 Merge pull request #224 from oraios/remove-multilspy
Remove multilspy
2025-06-23 17:59:39 +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 605f8fba71 Remove multilspy package 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 541998e912 Move definitions from multilspy.language_server to solidlsp 2025-06-23 16:38:11 +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 f04bd7d65b Apply black & ruff to solidlsp 2025-06-23 15:29:48 +02:00
Michael Panchenko e4e39f5a40 Merge pull request #221 from yarikoptic/bf-format
Just minor formatting fixes
2025-06-23 14:51:23 +02:00
Dominik Jain b5d9488883 Update test snapshots 2025-06-23 14:43:43 +02:00
Dominik Jain 0c11ebebcc Remove obsolete flag at_new_line 2025-06-23 14:15:47 +02:00
Dominik Jain 48296943e9 Improve empty line handling in InsertBefore|AfterSymbolTool:
Always respect the original caller's number of empty lines, but add
a minimum number of empty lines depending on symbol kind
2025-06-23 14:06:04 +02:00
Dominik Jain 0586f4cd62 InsertBefore|AfterSymbolTool: Retain leading/trailing empty lines that are provided by the caller
(if empty lines are appropriate for the symbol type)
2025-06-23 14:06:04 +02:00