Closed tmds closed 3 years ago
The version of Mono produced out of the https://github.com/mono/mono repository will not support net5.0
or later versions, it will stay compatible with the net4.x releases. You can think of it the same way as ".NET Framework" vs. ".NET Core".
The Mono runtime is now part of the unified https://github.com/dotnet/runtime repository so it'll be available as an option there and is used today for WebAssembly target and iOS/Android with .NET 6.
Do you plan to build versions of mono from dotnet/runtime repo that support net5.0
or later?
Or is ".NET 5+" the successor of mono, in the same way it is succeeding ".NET Framework"?
Do you plan to build versions of mono from dotnet/runtime repo that support net5.0 or later?
The versions of mono built from the dotnet/runtime repo already support net5.0
or later, but it's important to understand that this is quite different from the traditional mono in that the mono runtime is used together with the unified BCL libraries and the dotnet
host (similar to CoreCLR, just a different runtime).
Or is ".NET 5+" the successor of mono, in the same way it is succeeding ".NET Framework"?
I think that's a fair way to put it.
The versions of mono built from the dotnet/runtime repo already support net5.0 or later
That's nice. Do you intend to release such builds (like what is now available on https://www.mono-project.com/download/stable/)?
@tmds we publish runtime packs for Mono to the usual feeds, e.g. https://dev.azure.com/dnceng/public/_packaging?_a=package&feed=dotnet6&package=Microsoft.NETCore.App.Runtime.Mono.linux-x64&protocolType=NuGet&version=6.0.0-alpha.1.20612.4
You can use it by adding this to your .csproj which overrides the runtime pack name from the SDK (we'll likely simplify it in the future):
<ItemGroup>
<KnownFrameworkReference Update="Microsoft.NETCore.App">
<RuntimePackNamePatterns>Microsoft.NETCore.App.Runtime.Mono.**RID**</RuntimePackNamePatterns>
</KnownFrameworkReference>
</ItemGroup>
And then publish a self-contained app via dotnet publish -r linux-x64
, this only works with the 6.0 nightly dotnet SDK right now.
I will definitely try that out.
Do you plan to distribute these runtime packages with .NET 6 release via nuget.org? For linux-x64? And other architectures that mono works on?
Yes anything that is on that Azure DevOps feed will automatically flow to nuget.org for each (preview)release: https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.Mono.linux-x64/
Thanks @akoeplinger , it is more clear to me how mono fits in the .NET6+ picture.
hi @migueldeicaza @terrajobst
Will there be a version of mono that supports
net5.0
? Or is mono skippingnet5.0
, and is it a goal to supportnet6.0
?