-
Notifications
You must be signed in to change notification settings - Fork 675
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[O# Parity] Project loading support for projects running on Mono #5721
[O# Parity] Project loading support for projects running on Mono #5721
Comments
Didn't quite mean to close this yet, but dotnet/roslyn#69616 brings significant improvements here and adds legacy support for .NET Framework projects on Windows. Mac/Linux for stuff running atop Mono should come soon. |
We'll use this on Mac and Linux; we already had equivalent support on Windows. MonoMSBuildDiscovery.cs is largely a copy of the code from these paths, with some tweaks to remove Omnisharp scenarios that don't apply for us. - https://github.com/OmniSharp/omnisharp-roslyn/blob/dde8119c40f4e3920eb5ea894cbca047033bd9aa/src/OmniSharp.Host/MSBuild/Discovery/Providers/MonoInstanceProvider.cs - https://github.com/OmniSharp/omnisharp-roslyn/blob/dde8119c40f4e3920eb5ea894cbca047033bd9aa/src/OmniSharp.Host/MSBuild/Discovery/MSBuildInstanceProvider.cs Closes dotnet/vscode-csharp#5721
We'll use this on Mac and Linux; we already had equivalent support on Windows. MonoMSBuildDiscovery.cs is largely a copy of the code from these paths, with some tweaks to remove Omnisharp scenarios that don't apply for us. - https://github.com/OmniSharp/omnisharp-roslyn/blob/dde8119c40f4e3920eb5ea894cbca047033bd9aa/src/OmniSharp.Host/MSBuild/Discovery/Providers/MonoInstanceProvider.cs - https://github.com/OmniSharp/omnisharp-roslyn/blob/dde8119c40f4e3920eb5ea894cbca047033bd9aa/src/OmniSharp.Host/MSBuild/Discovery/MSBuildInstanceProvider.cs Closes dotnet/vscode-csharp#5721
With #70263 being merged in Roslyn, we should now have support for all the MSBuild-based projects that Omnisharp also supported. There's still some non-MSBuild project types to look at, but we should have the same compat across all platforms. |
For the C# project loader, we need to run our design time builds out of proc using the project specific SDK. This will avoid errors trying to load various project types in the .NET 7 runtime.
With out of proc design time builds, we should also be able to load mono / legacy csproj (similar to O#'s useModernDotnet flag).
Note that this is only planned to be supported in the C# extension project loader.
The text was updated successfully, but these errors were encountered: