Normalize all paths to use forward slashes instead of backslashes to prevent
JSON parsing errors when Windows paths contain unescaped backslashes.
This affects PathUtils.uri_to_path() and PathUtils.get_relative_path().
Fixes JSONDecodeError: Invalid \escape and Expecting value errors in C# tests on Windows.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Removes extraneous EOF marker that was causing JSON parsing to fail
during C# language server initialization parameter loading.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Removes extraneous EOF marker that was causing JSON parsing to fail
during C# language server initialization.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Creates consistent initialization structure with other language servers:
- Extracts hardcoded initialization parameters to JSON configuration
- Uses template variables ($rootPath, $rootUri, $rootName) for dynamic values
- Maintains all existing capabilities and functionality
- Follows the established pattern used by 10/12 other language servers
This improves maintainability by allowing initialization parameter
modifications without code changes and ensures consistency across
all language server implementations.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Creates consistent configuration structure with other language servers:
- Extracts hardcoded URLs/versions to JSON configuration
- Supports both .NET runtime and language server packages
- Maintains platform-specific package handling
- Keeps NuGet source configuration centralized
This improves maintainability and follows the established pattern
used by all other language server implementations.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
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>
Other language servers don't have __init__.py files, keeping
the structure consistent across language server implementations.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Resolves parsing errors for dotnet_member_insertion_location and
dotnet_property_generation_behavior by providing proper enum values
instead of numeric strings.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
The language server was failing to parse empty objects '{}' for configuration
values. Updated the workspace/configuration handler to return proper default
values based on the configuration section:
- Boolean settings (enable/show/suppress/navigate) default to False
- Scope settings (analyzer/compiler diagnostics) default to "openFiles"
- Tab width and indent size default to 4
- Insert final newline defaults to True
- Other settings return null
This eliminates the "Failed to parse '{}' to type" errors during initialization.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Microsoft.CodeAnalysis.LanguageServer attempts to call client/registerCapability
during initialization, which was causing errors and shutting down the server.
Added a handler that acknowledges these requests to prevent the error.
This fixes the "method 'client/registerCapability' not handled on client" error
that was causing the language server to shut down during indexing.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>