Skip to content

Commit 3854378

Browse files
authored
Release 2.8.0 (#2329)
**Changes:** - Workload Identity Federation for Azure Repos (#2297) - Git config caching to reduce git process calls - #2268 - #2296 - #2298 - Dark theme support for OAuth authentication response pages (#2325) - Allow installing on Azure Linux (#2269) - Fix GPG ID lookup for `.gpg-id` in subdirectories (#2274) - Fix CS0121 `string.Split` call ambiguity with .NET 8.0 (#2287) - Fix SYSLIB0057 warning for `X509Certificate2Collection.Import` (#2326) - Fix several small bugs (#2303) - Migrate to .NET 10 (Mac/Linux) and adopt Central Package Management (#2313) - Bump `Tmds.DBus.Protocol` from 0.16.0 to 0.21.3 (#2316) - Azure Pipelines: specify `pool.hostArchitecture` correctly (#2323) - Documentation updates - #2283 - #2299 - Actions dependency updates - #2242 - #2271 - #2272 - #2282 - #2301 - #2315
2 parents a78b60d + 95f6bf5 commit 3854378

79 files changed

Lines changed: 2362 additions & 178 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.azure-pipelines/release.yml

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,18 +35,21 @@ parameters:
3535
jobName: 'Windows (x86)'
3636
runtime: win-x86
3737
pool: GitClientPME-1ESHostedPool-intel-pc
38+
poolArch: amd64
3839
image: win-x86_64-ado1es
3940
os: windows
4041
- id: windows_x64
4142
jobName: 'Windows (x64)'
4243
runtime: win-x64
4344
pool: GitClientPME-1ESHostedPool-intel-pc
45+
poolArch: amd64
4446
image: win-x86_64-ado1es
4547
os: windows
4648
- id: windows_arm64
4749
jobName: 'Windows (ARM64)'
4850
runtime: win-arm64
4951
pool: GitClientPME-1ESHostedPool-arm64-pc
52+
poolArch: arm64
5053
image: win-arm64-ado1es
5154
os: windows
5255

@@ -73,12 +76,14 @@ parameters:
7376
jobName: 'Linux (x64)'
7477
runtime: linux-x64
7578
pool: GitClientPME-1ESHostedPool-intel-pc
79+
poolArch: amd64
7680
image: ubuntu-x86_64-ado1es
7781
os: linux
7882
- id: linux_arm64
7983
jobName: 'Linux (ARM64)'
8084
runtime: linux-arm64
8185
pool: GitClientPME-1ESHostedPool-arm64-pc
86+
poolArch: arm64
8287
image: ubuntu-arm64-ado1es
8388
os: linux
8489

@@ -121,6 +126,7 @@ extends:
121126
name: ${{ dim.pool }}
122127
image: ${{ dim.image }}
123128
os: ${{ dim.os }}
129+
hostArchitecture: ${{ dim.poolArch }}
124130
templateContext:
125131
outputs:
126132
- output: pipelineArtifact
@@ -136,10 +142,10 @@ extends:
136142
$version = (Get-Content .\VERSION) -replace '\.\d+$', ''
137143
Write-Host "##vso[task.setvariable variable=version;isReadOnly=true]$version"
138144
- task: UseDotNet@2
139-
displayName: 'Use .NET 8 SDK'
145+
displayName: 'Use .NET 10 SDK'
140146
inputs:
141147
packageType: sdk
142-
version: '8.x'
148+
version: '10.x'
143149
- task: PowerShell@2
144150
displayName: 'Build payload'
145151
inputs:
@@ -296,10 +302,10 @@ extends:
296302
script: |
297303
echo "##vso[task.setvariable variable=version;isReadOnly=true]$(cat ./VERSION | sed -E 's/.[0-9]+$//')"
298304
- task: UseDotNet@2
299-
displayName: 'Use .NET 8 SDK'
305+
displayName: 'Use .NET 10 SDK'
300306
inputs:
301307
packageType: sdk
302-
version: '8.x'
308+
version: '10.x'
303309
- task: Bash@3
304310
displayName: 'Build payload'
305311
inputs:
@@ -551,6 +557,7 @@ extends:
551557
name: ${{ dim.pool }}
552558
image: ${{ dim.image }}
553559
os: ${{ dim.os }}
560+
hostArchitecture: ${{ dim.poolArch }}
554561
templateContext:
555562
outputs:
556563
- output: pipelineArtifact
@@ -565,10 +572,10 @@ extends:
565572
script: |
566573
echo "##vso[task.setvariable variable=version;isReadOnly=true]$(cat ./VERSION | sed -E 's/.[0-9]+$//')"
567574
- task: UseDotNet@2
568-
displayName: 'Use .NET 8 SDK'
575+
displayName: 'Use .NET 10 SDK'
569576
inputs:
570577
packageType: sdk
571-
version: '8.x'
578+
version: '10.x'
572579
- task: Bash@3
573580
displayName: 'Build payload'
574581
inputs:
@@ -664,10 +671,10 @@ extends:
664671
$version = (Get-Content .\VERSION) -replace '\.\d+$', ''
665672
Write-Host "##vso[task.setvariable variable=version;isReadOnly=true]$version"
666673
- task: UseDotNet@2
667-
displayName: 'Use .NET 8 SDK'
674+
displayName: 'Use .NET 10 SDK'
668675
inputs:
669676
packageType: sdk
670-
version: '8.x'
677+
version: '10.x'
671678
- task: NuGetToolInstaller@1
672679
displayName: 'Install NuGet CLI'
673680
inputs:

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ jobs:
2525
- uses: actions/checkout@v6
2626

2727
- name: Setup .NET
28-
uses: actions/setup-dotnet@v5.0.1
28+
uses: actions/setup-dotnet@v5.2.0
2929
with:
30-
dotnet-version: 8.0.x
30+
dotnet-version: 10.0.x
3131

3232
# Initializes the CodeQL tools for scanning.
3333
- name: Initialize CodeQL

.github/workflows/continuous-integration.yml

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,18 @@ jobs:
2828
- uses: actions/checkout@v6
2929

3030
- name: Setup .NET
31-
uses: actions/setup-dotnet@v5.0.1
31+
uses: actions/setup-dotnet@v5.2.0
3232
with:
33-
dotnet-version: 8.0.x
33+
dotnet-version: 10.0.x
34+
35+
# The x86 test host requires an x86 .NET runtime, which isn't pre-installed
36+
# on the runner, nor can the actions/setup-dotnet action install it.
37+
# Install it manually so tests can run.
38+
- name: Setup .NET (x86)
39+
if: matrix.runtime == 'win-x86'
40+
run: |
41+
Invoke-WebRequest 'https://dot.net/v1/dotnet-install.ps1' -OutFile dotnet-install.ps1
42+
./dotnet-install.ps1 -Channel 10.0 -Architecture x86 -InstallDir 'C:\Program Files (x86)\dotnet'
3443
3544
- name: Install dependencies
3645
run: dotnet restore
@@ -56,7 +65,7 @@ jobs:
5665
cp out/windows/Installer.Windows/bin/Release/net472/${{ matrix.runtime }}.sym/* artifacts/bin/${{ matrix.runtime }}/
5766
5867
- name: Upload artifacts
59-
uses: actions/upload-artifact@v6
68+
uses: actions/upload-artifact@v7
6069
with:
6170
name: ${{ matrix.runtime }}
6271
path: |
@@ -76,9 +85,9 @@ jobs:
7685
- uses: actions/checkout@v6
7786

7887
- name: Setup .NET
79-
uses: actions/setup-dotnet@v5.0.1
88+
uses: actions/setup-dotnet@v5.2.0
8089
with:
81-
dotnet-version: 8.0.x
90+
dotnet-version: 10.0.x
8291

8392
- name: Install dependencies
8493
run: dotnet restore
@@ -100,7 +109,7 @@ jobs:
100109
mv out/linux/Packaging.Linux/Release/tar/*.tar.gz artifacts/
101110
102111
- name: Upload artifacts
103-
uses: actions/upload-artifact@v6
112+
uses: actions/upload-artifact@v7
104113
with:
105114
name: ${{ matrix.runtime }}
106115
path: |
@@ -120,9 +129,9 @@ jobs:
120129
- uses: actions/checkout@v6
121130

122131
- name: Setup .NET
123-
uses: actions/setup-dotnet@v5.0.1
132+
uses: actions/setup-dotnet@v5.2.0
124133
with:
125-
dotnet-version: 8.0.x
134+
dotnet-version: 10.0.x
126135

127136
- name: Install dependencies
128137
run: dotnet restore
@@ -145,7 +154,7 @@ jobs:
145154
mv out/osx/Installer.Mac/pkg/Release/gcm*.pkg artifacts/
146155
147156
- name: Upload artifacts
148-
uses: actions/upload-artifact@v6
157+
uses: actions/upload-artifact@v7
149158
with:
150159
name: ${{ matrix.runtime }}
151160
path: |

.github/workflows/lint-docs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
steps:
2121
- uses: actions/checkout@v6
2222

23-
- uses: DavidAnson/markdownlint-cli2-action@07035fd053f7be764496c0f8d8f9f41f98305101
23+
- uses: DavidAnson/markdownlint-cli2-action@ce4853d43830c74c1753b39f3cf40f71c2031eb9
2424
with:
2525
globs: |
2626
"**/*.md"
@@ -35,7 +35,7 @@ jobs:
3535
- name: Run link checker
3636
# For any troubleshooting, see:
3737
# https://github.com/lycheeverse/lychee/blob/master/docs/TROUBLESHOOTING.md
38-
uses: lycheeverse/lychee-action@a8c4c7cb88f0c7386610c35eb25108e448569cb0
38+
uses: lycheeverse/lychee-action@8646ba30535128ac92d33dfc9133794bfdd9b411
3939
with:
4040
# user-agent: if a user agent is not specified, some websites (e.g.
4141
# GitHub Docs) return HTTP errors which Lychee will interpret as

.github/workflows/maintainer-absence.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
name: create-issue
1919
runs-on: ubuntu-latest
2020
steps:
21-
- uses: actions/github-script@v8
21+
- uses: actions/github-script@v9
2222
with:
2323
script: |
2424
const startDate = new Date('${{ github.event.inputs.startDate }}');

.github/workflows/validate-install-from-source.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ on:
55
push:
66
branches:
77
- main
8+
pull_request:
9+
branches:
10+
- main
811

912
jobs:
1013
docker:
@@ -15,7 +18,7 @@ jobs:
1518
matrix:
1619
vector:
1720
- image: ubuntu
18-
- image: debian:bullseye
21+
- image: debian:bookworm
1922
- image: fedora
2023
# Centos no longer officially maintains images on Docker Hub. However,
2124
# tgagor is a contributor who pushes updated images weekly, which should
@@ -29,14 +32,15 @@ jobs:
2932
- image: registry.suse.com/suse/sle15:15.4.27.11.31
3033
- image: archlinux
3134
- image: mcr.microsoft.com/cbl-mariner/base/core:2.0
35+
- image: mcr.microsoft.com/azurelinux/base/core:3.0
3236
container: ${{matrix.vector.image}}
3337
steps:
3438
- run: |
3539
if [[ ${{matrix.vector.image}} == *"suse"* ]]; then
3640
zypper -n install tar gzip
3741
elif [[ ${{matrix.vector.image}} == *"centos"* ]]; then
3842
dnf install which -y
39-
elif [[ ${{matrix.vector.image}} == *"mariner"* ]]; then
43+
elif [[ ${{matrix.vector.image}} == *"mariner"* || ${{matrix.vector.image}} == *"azurelinux"* ]]; then
4044
GNUPGHOME=/root/.gnupg tdnf update -y &&
4145
GNUPGHOME=/root/.gnupg tdnf install tar -y # needed for `actions/checkout`
4246
fi

.vscode/launch.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"request": "launch",
1111
"preLaunchTask": "build",
1212
// If you have changed target frameworks, make sure to update the program path.
13-
"program": "${workspaceFolder}/out/shared/Git-Credential-Manager/bin/Debug/net8.0/git-credential-manager.dll",
13+
"program": "${workspaceFolder}/out/shared/Git-Credential-Manager/bin/Debug/net10.0/git-credential-manager.dll",
1414
"args": ["get"],
1515
"cwd": "${workspaceFolder}/out/shared/Git-Credential-Manager",
1616
"console": "integratedTerminal",
@@ -22,7 +22,7 @@
2222
"request": "launch",
2323
"preLaunchTask": "build",
2424
// If you have changed target frameworks, make sure to update the program path.
25-
"program": "${workspaceFolder}/out/shared/Git-Credential-Manager/bin/Debug/net8.0/git-credential-manager.dll",
25+
"program": "${workspaceFolder}/out/shared/Git-Credential-Manager/bin/Debug/net10.0/git-credential-manager.dll",
2626
"args": ["store"],
2727
"cwd": "${workspaceFolder}/out/shared/Git-Credential-Manager",
2828
"console": "integratedTerminal",

.vscode/tasks.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
"type": "shell",
5757
"group": "test",
5858
"args": [
59-
"~/.nuget/packages/reportgenerator/*/*/net8.0/ReportGenerator.dll",
59+
"~/.nuget/packages/reportgenerator/*/*/net10.0/ReportGenerator.dll",
6060
"-reports:${workspaceFolder}/**/TestResults/**/coverage.cobertura.xml",
6161
"-targetdir:${workspaceFolder}/out/code-coverage"
6262
],
@@ -71,7 +71,7 @@
7171
"type": "shell",
7272
"group": "test",
7373
"args": [
74-
"${env:USERROFILE}/.nuget/packages/reportgenerator/*/*/net8.0/ReportGenerator.dll",
74+
"${env:USERROFILE}/.nuget/packages/reportgenerator/*/*/net10.0/ReportGenerator.dll",
7575
"-reports:${workspaceFolder}/**/TestResults/**/coverage.cobertura.xml",
7676
"-targetdir:${workspaceFolder}/out/code-coverage"
7777
],

Directory.Build.props

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@
2727
</PropertyGroup>
2828

2929
<ItemGroup Condition = "'$(TargetFramework)' == 'net472'">
30-
<PackageReference Include="System.Text.Json">
31-
<Version>8.0.5</Version>
32-
</PackageReference>
30+
<PackageReference Include="System.Text.Json" />
3331
</ItemGroup>
3432

3533
</Project>

Directory.Packages.props

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
<Project>
2+
3+
<PropertyGroup>
4+
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
5+
</PropertyGroup>
6+
7+
<ItemGroup>
8+
<!-- Avalonia -->
9+
<PackageVersion Include="Avalonia" Version="11.1.3" />
10+
<PackageVersion Include="Avalonia.Desktop" Version="11.1.3" />
11+
<PackageVersion Include="Avalonia.Diagnostics" Version="11.1.3" />
12+
<PackageVersion Include="Avalonia.Skia" Version="11.1.3" />
13+
<PackageVersion Include="Avalonia.Themes.Fluent" Version="11.1.3" />
14+
<PackageVersion Include="Avalonia.Win32" Version="11.1.3" />
15+
16+
<!-- Microsoft Identity -->
17+
<PackageVersion Include="Microsoft.Identity.Client" Version="4.65.0" />
18+
<PackageVersion Include="Microsoft.Identity.Client.Broker" Version="4.65.0" />
19+
<PackageVersion Include="Microsoft.Identity.Client.Extensions.Msal" Version="4.65.0" />
20+
21+
<!-- MSBuild -->
22+
<PackageVersion Include="Microsoft.Build.Framework" Version="16.0.461" />
23+
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="16.0.461" />
24+
25+
<!-- Other -->
26+
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
27+
<PackageVersion Include="System.Text.Json" Version="8.0.5" />
28+
<PackageVersion Include="Tmds.DBus.Protocol" Version="0.21.3" />
29+
<PackageVersion Include="Tools.InnoSetup" Version="6.3.1" GeneratePathProperty="true" />
30+
31+
<!-- Testing -->
32+
<PackageVersion Include="coverlet.collector" Version="6.0.2" />
33+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
34+
<PackageVersion Include="Moq" Version="4.20.72" />
35+
<PackageVersion Include="ReportGenerator" Version="5.3.10" />
36+
<PackageVersion Include="xunit" Version="2.9.2" />
37+
<PackageVersion Include="xunit.runner.visualstudio" Version="2.8.2" />
38+
<PackageVersion Include="Xunit.SkippableFact" Version="1.4.13" />
39+
</ItemGroup>
40+
41+
</Project>

0 commit comments

Comments
 (0)