-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Add .NET 8 target (Avalonia 11.1) #14535
Conversation
You can test this PR using the following package version. |
Instead of directly using TargetFramework <PropertyGroup>
<AvaloniaDefaultTargetFramework Condition="'$(AvaloniaDefaultTargetFramework)' == ''">net8.0</AvaloniaDefaultTargetFramework>
</PropertyGroup> eg. using in <PropertyGroup>
<TargetFrameworks>$(AvaloniaDefaultTargetFramework);netstandard2.0</TargetFrameworks>
<PackageId>Avalonia</PackageId>
</PropertyGroup> eg: <PropertyGroup>
<TargetFramework>$(AvaloniaDefaultTargetFramework)-browser</TargetFramework>
<RuntimeIdentifier>browser-wasm</RuntimeIdentifier>
<Nullable>enable</Nullable>
<EmccTotalMemory>16777216</EmccTotalMemory>
</PropertyGroup> For example, when you switch to |
Yeah, we discussed that internally. But we couldn't find if it really would make anything better. It does make it easier to update version, but at the same time harder to quickly check csproj version for users no used to the repo. And in general, it's not like we change these versions often. Next time probably will happen around .NET 10 haha. |
You can test this PR using the following package version. |
You can test this PR using the following package version. |
Can we have |
@kekekeks it would complicate msbuild logic quite a bit. Will think about it. It would also add DotNetCurrent/DotNetPrevious props anyway, which is fine. |
Why? <DotNetCurrentFramework>net9.0</DotNetCurrentFramework>
<DotNetCompatibilityFrameworks>net8.0;net6.0<DotNetCompatibilityFrameworks>
<CommonTargetFrameworks>$(DotNetCurrentFramework);netstandard2.0</CommonTargetFrameworks>
<CommonTargetFrameworks Condition="'$(AvaloniaSkipLegacyTargetFrameworks)' != 'True'>$(CommonTargetFrameworks);$(DotNetCompatibilityFrameworks)</CommonTargetFrameworks> and |
If you decide to add properties, it may be best to add the Avalonia prefix to the properties to try to avoid conflicts. |
So, how would we add "-ios", "-android", "-browser" suffix? |
OK, it's out of the scope of this PR anyway. |
90433ee
to
11d51fc
Compare
You can test this PR using the following package version. |
src/Browser/Avalonia.Browser.Blazor/Avalonia.Browser.Blazor.csproj
Outdated
Show resolved
Hide resolved
You can test this PR using the following package version. |
You can test this PR using the following package version. |
You can test this PR using the following package version. |
d40cac4
to
b6acaa9
Compare
You can test this PR using the following package version. |
What does the pull request do?
There is a number of features that we need from .NET 8 SDK and targets.
Primarily:
UnsafeAccessor
which is going to be helpful with SkiaSharp 3.0 compatibilityAnd also, we are likely to drop .NET 6 in Avalonia 12.0 (while still likely to support .NET Standard 2.0). Targeting .NET 8 is a preparation before that.