godotengine / godotengine/godot-dotnet
Upgrade assistant does not handle .slnx files
- Dominant language
- C#
- Stars
- 228
- Forks
- 30
- PR merge metrics
- No merged PRs in 30d
Description
### Godot version
4.6.dev ([`0759141`](https://github.com/raulsntos/godot/commit/075914121d) from new-dotnet-module-plus-source-code-plugin-wip)
### Godot .NET packages version
4.6.dev (7b5efa1 from upgrade-assistant-plus-source-code-plugin-wip)
### System information
Windows 10
### .NET information
SDK 9.0.306
### Issue description
Running the upgrade assistant on a project defining its solution with a `.slnx` file instead of a `.sln` one results in an error. The path is correct, but we hard-code the file extension in `get_project_sln_path()`.
```
File does not exist: '/correct/path/to/solution/file/X.sln'.
ERROR: .NET failed to upgrade project 'X'. See output above for more details.
at: Upgrade (\godot-dotnet\src\Godot.EditorIntegration\UpgradeAssistant\GodotUpgradeAssistant.cs:442)
\godot-dotnet\src\Godot.EditorIntegration\UpgradeAssistant\GodotUpgradeAssistant.cs:442 - .NET failed to upgrade project 'X'. See output above for more details.
```
### Steps to reproduce
- Create a blank project.
- Migrate the `.sln` to a `.slnx`.
- Open the editor.
### Minimal reproduction project
N/A
Contributor guide
Research direction
Start in GodotUpgradeAssistant.cs around line 442 and locate get_project_sln_path(), which the issue identifies as hard-coding the solution extension. Reproduce with a project migrated from .sln to .slnx, then verify the upgrade assistant accepts the .slnx path without the file-not-found error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 58/100