feat: upgrade to .NET 9 / C# 13, latest packages & actions, add Copilot instructions (#2)

This commit is contained in:
Copilot
2026-03-06 02:39:56 +02:00
committed by GitHub
parent 7639eb1cfc
commit 76ff24b34c
12 changed files with 224 additions and 596 deletions

View File

@@ -5,7 +5,10 @@ public partial class App : Application
public App()
{
InitializeComponent();
}
MainPage = new AppShell();
protected override Window CreateWindow(IActivationState? activationState)
{
return new Window(new AppShell());
}
}

View File

@@ -2,11 +2,11 @@
<PropertyGroup>
<!-- Per spec: iOS (primary), Web (Blazor), macOS (tertiary) -->
<!-- net8.0 included for unit testing without platform dependencies -->
<!-- net9.0 included for unit testing without platform dependencies -->
<!-- Include iOS/macOS targets only on macOS (where they can be built) -->
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('OSX'))">net8.0;net8.0-ios;net8.0-maccatalyst</TargetFrameworks>
<!-- On Linux/Windows, only include net8.0 -->
<TargetFrameworks Condition="!$([MSBuild]::IsOSPlatform('OSX'))">net8.0</TargetFrameworks>
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('OSX'))">net9.0;net9.0-ios;net9.0-maccatalyst</TargetFrameworks>
<!-- On Linux/Windows, only include net9.0 -->
<TargetFrameworks Condition="!$([MSBuild]::IsOSPlatform('OSX'))">net9.0</TargetFrameworks>
<!-- Note for MacCatalyst:
The default runtime is maccatalyst-x64, except in Release config, in which case the default is maccatalyst-x64;maccatalyst-arm64.
@@ -15,17 +15,17 @@
either BOTH runtimes must be indicated or ONLY macatalyst-x64. -->
<!-- For example: <RuntimeIdentifiers>maccatalyst-x64;maccatalyst-arm64</RuntimeIdentifiers> -->
<OutputType Condition="'$(TargetFramework)' != 'net8.0'">Exe</OutputType>
<OutputType Condition="'$(TargetFramework)' == 'net8.0'">Library</OutputType>
<OutputType Condition="'$(TargetFramework)' != 'net9.0'">Exe</OutputType>
<OutputType Condition="'$(TargetFramework)' == 'net9.0'">Library</OutputType>
<RootNamespace>HihaArvio</RootNamespace>
<UseMaui Condition="'$(TargetFramework)' != 'net8.0'">true</UseMaui>
<UseMaui Condition="'$(TargetFramework)' != 'net9.0'">true</UseMaui>
<SingleProject>true</SingleProject>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<!-- Per spec: treat warnings as errors, C# 12 -->
<!-- Per spec: treat warnings as errors, C# 13 -->
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<LangVersion>12</LangVersion>
<LangVersion>13</LangVersion>
<!-- Display name -->
<ApplicationTitle>HihaArvio</ApplicationTitle>
@@ -61,11 +61,11 @@
</ItemGroup>
<ItemGroup>
<!-- Per spec: MAUI 8.x with explicit lower bound -->
<!-- Per spec: MAUI 9.x with explicit lower bound -->
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
<PackageReference Include="Microsoft.Maui.Controls" Version="8.0.3" />
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="8.0.3" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.1" />
<PackageReference Include="Microsoft.Maui.Controls" Version="9.0.120" />
<PackageReference Include="Microsoft.Maui.Controls.Compatibility" Version="9.0.120" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="9.0.13" />
<PackageReference Include="sqlite-net-pcl" Version="1.9.172" />
<PackageReference Include="SQLitePCLRaw.bundle_green" Version="2.1.11" />
</ItemGroup>