Skip to content

Commit c14c780

Browse files
Move to .NET 10 (net10.0-windows, SDK 10.0.110) (#298)
* Pin .NET SDK via global.json * Pin build SDK to .NET 9 (9.0.119) and install it in CI from global.json * Use rollForward latestFeature so the build uses the latest installed .NET 9 SDK at or above the pinned floor * Move to .NET 10: retarget net10.0-windows, SDK 10.0.110, and build arm64 on the x64 runner * CI: run arm64 natively on windows-11-vs2026-arm (VS 2026), install SDK from global.json only, fail-fast off * Use windows-2025 image for the official ADO build (VS 2026 / MSBuild 18 for .NET 10) * Mark WinRT command/form/page classes partial and use concrete collection types for CsWinRT ABI projection on net10; remove CsWinRT warning suppressions
1 parent 63a7e70 commit c14c780

8 files changed

Lines changed: 24 additions & 19 deletions

File tree

‎.github/workflows/CI.yml‎

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,30 +14,27 @@ permissions:
1414
jobs:
1515
build-and-test:
1616
strategy:
17+
fail-fast: false
1718
matrix:
18-
configuration: [Release]
19-
platform: [x64, arm64]
20-
os: [windows-latest, windows-11-arm]
21-
dotnet-version: ['8.0.x']
22-
exclude:
23-
- os: windows-latest
24-
platform: arm64
25-
- os: windows-11-arm
26-
platform: x64
19+
include:
20+
- platform: x64
21+
os: windows-latest
22+
configuration: Release
23+
- platform: arm64
24+
os: windows-11-vs2026-arm
25+
configuration: Release
2726
runs-on: ${{ matrix.os }}
2827
steps:
2928
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
3029
with:
3130
clean: true
3231

33-
- name: Setup .NET SDK ${{ matrix.dotnet-version }}
32+
- name: Setup .NET SDK (from global.json)
3433
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
3534
with:
36-
dotnet-version: ${{ matrix.dotnet-version }}
35+
global-json-file: global.json
3736
- name: Add MSBuild to PATH
3837
uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce # v2.0.0
39-
with:
40-
vs-version: '17.5'
4138

4239
- name: Download nuget
4340
run: |

‎Common.Dotnet.CsWinRT.props‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
<!-- Some items may be set in Directory.Build.props in root -->
33
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
44
<PropertyGroup>
5-
<WindowsSdkPackageVersion>10.0.26100.42</WindowsSdkPackageVersion>
6-
<TargetFramework>net9.0-windows10.0.22621.0</TargetFramework>
5+
<WindowsSdkPackageVersion>10.0.26100.87</WindowsSdkPackageVersion>
6+
<TargetFramework>net10.0-windows10.0.26100.0</TargetFramework>
77
<TargetPlatformMinVersion>10.0.19041.0</TargetPlatformMinVersion>
88
<SupportedOSPlatformVersion>10.0.19041.0</SupportedOSPlatformVersion>
99
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>

‎Directory.Build.props‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<PackageTags>GITServices</PackageTags>
1919
<EnableNETAnalyzers>true</EnableNETAnalyzers>
2020
<AnalysisMode>Recommended</AnalysisMode>
21+
<NuGetAuditMode>direct</NuGetAuditMode>
2122
<PlatformTarget>$(Platform)</PlatformTarget>
2223
<SelfContained>false</SelfContained>
2324
<RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>

‎GitHubExtension/Controls/Commands/SignInCommand.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
namespace GitHubExtension.Controls.Commands;
1111

12-
public class SignInCommand : InvokableCommand, IDisposable
12+
public partial class SignInCommand : InvokableCommand, IDisposable
1313
{
1414
private readonly IResources _resources;
1515
private readonly IDeveloperIdProvider _developerIdProvider;

‎GitHubExtension/Controls/Commands/SignOutCommand.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
namespace GitHubExtension.Controls.Commands;
1111

12-
public class SignOutCommand : InvokableCommand, IDisposable
12+
public partial class SignOutCommand : InvokableCommand, IDisposable
1313
{
1414
private readonly IResources _resources;
1515
private readonly IDeveloperIdProvider _developerIdProvider;

‎GitHubExtension/GitHubExtension.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
<PackageReference Include="Dapper.Contrib" Version="2.0.78" />
3434
<PackageReference Include="MessageFormat" Version="6.0.2" />
3535
<PackageReference Include="Microsoft.CommandPalette.Extensions" Version="0.1.0" />
36-
<PackageReference Include="Microsoft.Data.Sqlite" Version="9.0.1" />
36+
<PackageReference Include="Microsoft.Data.Sqlite" Version="10.0.10" />
3737
<PackageReference Include="Microsoft.Extensions.Hosting" Version="10.0.9" />
3838
<PackageReference Include="Microsoft.WindowsAppSDK" Version="2.2.0" />
3939
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />

‎build/azure-pipelines.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ extends:
5151
break: false
5252
pool:
5353
name: Azure-Pipelines-1ESPT-ExDShared
54-
image: windows-2022
54+
image: windows-2025
5555
os: windows
5656

5757
stages:

‎global.json‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"sdk": {
3+
"version": "10.0.110",
4+
"rollForward": "latestFeature",
5+
"allowPrerelease": false
6+
}
7+
}

0 commit comments

Comments
 (0)