-
Notifications
You must be signed in to change notification settings - Fork 63
Update to .NET 10, package versions, and minor UI tweaks #4435
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
Changes from all commits
c0694c3
157fd1f
43853b4
5d73a71
c8f59b5
d43b521
3c512c1
b6c9c39
0c89470
3a4a7d1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -2,7 +2,7 @@ | |
|
|
||
| <PropertyGroup> | ||
| <OutputType>Exe</OutputType> | ||
| <TargetFramework>net8.0-windows10.0.17763.0</TargetFramework> | ||
| <TargetFramework>net10.0-windows10.0.17763.0</TargetFramework> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Target framework change violates coding guidelines. Same as As per coding guidelines: 🤖 Prompt for AI Agents |
||
| <GenerateAssemblyInfo>false</GenerateAssemblyInfo> | ||
| <Nullable>enable</Nullable> | ||
| <UseWPF>true</UseWPF> | ||
|
|
@@ -734,26 +734,28 @@ | |
| </ItemGroup> | ||
|
|
||
| <ItemGroup> | ||
| <PackageReference Include="AvalonEdit" Version="6.3.0.90" /> | ||
| <PackageReference Include="AvalonEdit" Version="6.3.1.120" /> | ||
| <PackageReference Include="CommandLineParser" Version="2.9.1" /> | ||
| <PackageReference Include="DocumentFormat.OpenXml" Version="3.0.1" /> | ||
| <PackageReference Include="DocumentFormat.OpenXml" Version="3.4.1" /> | ||
| <PackageReference Include="EPPlus" Version="6.0.4" /> | ||
| <PackageReference Include="FontAwesome6.Fonts" Version="2.5.1" /> | ||
| <PackageReference Include="FontAwesome6.Svg" Version="2.5.1" /> | ||
| <PackageReference Include="Gherkin" Version="5.1.0" /> | ||
| <PackageReference Include="Ginger.AccountReport.Contracts" Version="2025.4.0" /> | ||
| <PackageReference Include="Ginger.ExecuterService.Contracts" Version="2025.4.2.1" /> | ||
| <PackageReference Include="HtmlAgilityPack" Version="1.11.58" /> | ||
| <PackageReference Include="HtmlAgilityPack" Version="1.12.4" /> | ||
| <PackageReference Include="IdentityModel" Version="7.0.0" /> | ||
| <PackageReference Include="LiteDB" Version="5.0.21" /> | ||
| <PackageReference Include="LiveCharts.Wpf.NetCore3" Version="0.9.7" /> | ||
| <PackageReference Include="LiveCharts.Wpf.NetCore3" Version="0.9.8" /> | ||
| <PackageReference Include="log4net" Version="2.0.15" /> | ||
| <PackageReference Include="Magick.NET-Q16-AnyCPU" Version="14.10.0" /> | ||
| <PackageReference Include="Microsoft.Extensions.AI.OpenAI" Version="9.4.0-preview.1.25207.5" /> | ||
| <PackageReference Include="Magick.NET-Q16-AnyCPU" Version="14.10.2" /> | ||
| <PackageReference Include="Microsoft.Extensions.AI.OpenAI" Version="10.3.0" /> | ||
| <PackageReference Include="Microsoft.IdentityModel.JsonWebTokens" Version="8.15.0" /> | ||
| <PackageReference Include="Microsoft.IdentityModel.Tokens" Version="8.15.0" /> | ||
| <PackageReference Include="Microsoft.NETCore.App" Version="2.1.30" /> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: # First, check the actual TargetFramework in the csproj file
head -50 Ginger/Ginger/Ginger.csproj | grep -i targetframeworkRepository: Ginger-Automation/Ginger Length of output: 134 🏁 Script executed: # Read around line 755 to see the context
sed -n '750,760p' Ginger/Ginger/Ginger.csprojRepository: Ginger-Automation/Ginger Length of output: 972 🏁 Script executed: # Check if there are other .NET Core 2.1 related references
rg -n 'Microsoft\.NETCore\.App|net21|netcore21' Ginger/Ginger/Ginger.csprojRepository: Ginger-Automation/Ginger Length of output: 145 🏁 Script executed: # Check the entire PropertyGroup for target framework
rg -A 20 '<PropertyGroup>' Ginger/Ginger/Ginger.csproj | head -30Repository: Ginger-Automation/Ginger Length of output: 1026 Remove the This package targets .NET Core 2.1, which has been out of support since August 2021. It should not be explicitly referenced in projects targeting .NET 10.0. Explicitly specifying an older runtime package contradicts the target framework and should be removed. 🤖 Prompt for AI Agents |
||
| <PackageReference Include="Microsoft.Office.Interop.Excel" Version="15.0.4795.1001" /> | ||
| <PackageReference Include="Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi" Version="16.205.1" /> | ||
| <PackageReference Include="Microsoft.Web.WebView2" Version="1.0.3179.45" /> | ||
| <PackageReference Include="Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi" Version="19.225.2" /> | ||
| <PackageReference Include="Microsoft.Web.WebView2" Version="1.0.3719.77" /> | ||
| <PackageReference Include="Mono.Posix" Version="7.1.0-final.1.21458.1" /> | ||
| <PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> | ||
| <PackageReference Include="NSwag.Core.Yaml" Version="12.0.9" /> | ||
|
|
@@ -762,16 +764,17 @@ | |
| <PackageReference Include="Selenium.WebDriver.IEDriver" Version="4.14.0" /> | ||
| <PackageReference Include="sharpadbclient" Version="2.3.23" /> | ||
| <PackageReference Include="Syncfusion.Shared.WPF" Version="20.1.0.55" /> | ||
| <PackageReference Include="System.Data.OleDb" Version="8.0.0" /> | ||
| <PackageReference Include="System.Data.OleDb" Version="10.0.3" /> | ||
| <PackageReference Include="System.Data.SqlClient" Version="4.9.0" /> | ||
| <PackageReference Include="System.Drawing.Common" Version="9.0.5" /> | ||
| <PackageReference Include="System.Drawing.Common" Version="10.0.2" /> | ||
| <PackageReference Include="System.Formats.Asn1" Version="9.0.1" /> | ||
| <PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="8.15.0" /> | ||
| <PackageReference Include="System.IO.Packaging" Version="9.0.1" /> | ||
| <PackageReference Include="System.Linq.Dynamic.Core" Version="1.6.0.1" /> | ||
| <PackageReference Include="System.Management" Version="8.0.0" /> | ||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="9.0.1" /> | ||
| <PackageReference Include="System.Text.Json" Version="9.0.1" /> | ||
| <PackageReference Include="System.Web.Services.Description" Version="8.0.0" /> | ||
| <PackageReference Include="System.Management" Version="10.0.3" /> | ||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="10.0.3" /> | ||
| <PackageReference Include="System.Text.Json" Version="10.0.2" /> | ||
|
Comment on lines
+767
to
+776
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: As of February 2026, .NET 10 is already released and in active support:
Sources: 🌐 Web query:
💡 Result: System.Text.Json 10.0.2 is a stable (non-prerelease) NuGet release, published January 13, 2026. [1] As of February 10, 2026, 10.0.3 is available as a newer stable version. [1] 🌐 Web query:
💡 Result: There is no 🏁 Script executed: # Check the TargetFramework and TargetPlatformVersion in Ginger.csproj
cd Ginger/Ginger
head -50 Ginger.csproj | grep -E "(TargetFramework|TargetPlatformVersion|RuntimeIdentifier)"Repository: Ginger-Automation/Ginger Length of output: 134 🌐 Web query:
💡 Result:
Install: dotnet add package System.Drawing.Common --version 10.0.2[2] Sources Citations:
🌐 Web query:
💡 Result: System.Management 10.0.3 is available on NuGet and was last updated (released) on Feb 10, 2026. A newer 11.0.0-preview.1 prerelease is also listed. [1] Install: dotnet add package System.Management --version 10.0.3[1] 🌐 Web query:
💡 Result:
Install: dotnet add package System.Security.Cryptography.Pkcs --version 10.0.3Or: <PackageReference Include="System.Security.Cryptography.Pkcs" Version="10.0.3" />Targets .NET Framework 4.6.2, .NET Standard 2.0/2.1, and is compatible with net8.0, net9.0, and net10.0 (with Notable dependency version bumps in 10.0.3 include Source: NuGet package page. [1] System.Data.OleDb 10.0.3 does not exist on NuGet.org; only 10.0.2 is available. The version specified for 🤖 Prompt for AI Agents |
||
| <PackageReference Include="System.Web.Services.Description" Version="8.1.2" /> | ||
| <PackageReference Include="System.Windows.Forms.DataVisualization" Version="1.0.0-prerelease.20110.1" /> | ||
| <PackageReference Include="TWP.Selenium.Axe.Html" Version="0.0.1" /> | ||
| <PackageReference Include="UIAComWrapperNetstandard" Version="1.0.1"> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8,7 +8,7 @@ | |
| </PropertyGroup> | ||
|
|
||
| <PropertyGroup> | ||
| <TargetFramework>net8.0</TargetFramework> | ||
| <TargetFramework>net10.0</TargetFramework> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: As of February 2026, .NET 10 is already generally available (GA) and is an LTS release.
Sources: [1] .NET Support Policy (Microsoft) [2] .NET 10.0 downloads page (Microsoft) [3] .NET 10.0 Update – Feb 10, 2026 (Microsoft Support) 🏁 Script executed: # Read the GingerAutoPilotTest.csproj file to confirm the current state
cat -n Ginger/GingerAutoPilotTest/GingerAutoPilotTest.csproj | head -30Repository: Ginger-Automation/Ginger Length of output: 1227 🏁 Script executed: # Check other .csproj files in the repository to see if they follow the .NET 8.0 guideline
fd -e csproj -x head -15 {} \; | grep -B5 "TargetFramework" | head -50Repository: Ginger-Automation/Ginger Length of output: 1634 Update target framework to follow coding guidelines, or update guidelines consistently across the PR. The repository's coding guidelines require If this migration to .NET 10 is intentional, the coding guidelines in 🤖 Prompt for AI Agents |
||
| <IsPackable>false</IsPackable> | ||
|
|
||
| <ApplicationIcon /> | ||
|
|
@@ -22,7 +22,7 @@ | |
|
|
||
| <ItemGroup> | ||
| <PackageReference Include="GingerTestHelper" Version="2.0.2" /> | ||
| <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" /> | ||
| <PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" /> | ||
| <PackageReference Include="MSTest.TestAdapter" Version="2.1.2" /> | ||
| <PackageReference Include="MSTest.TestFramework" Version="2.1.2" /> | ||
| <PackageReference Include="System.Net.Http" Version="4.3.4" /> | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -8,24 +8,28 @@ | |||||
| </PropertyGroup> | ||||||
|
|
||||||
| <PropertyGroup> | ||||||
| <TargetFramework>net8.0</TargetFramework> | ||||||
| <TargetFramework>net10.0</TargetFramework> | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Missing The target framework was changed from If the .NET 10 upgrade is intentional and approved, the TFM should at minimum be Additionally, the repository's coding guidelines for Suggested fix (assuming .NET 10 upgrade is approved)- <TargetFramework>net10.0</TargetFramework>
+ <TargetFramework>net10.0-windows10.0.17763.0</TargetFramework>As per coding guidelines, 📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| <IsPackable>false</IsPackable> | ||||||
| <PlatformTarget>AnyCPU</PlatformTarget> | ||||||
| </PropertyGroup> | ||||||
|
|
||||||
| <ItemGroup> | ||||||
| <PackageReference Include="Ginger.ExecuterService.Contracts" Version="2025.4.2.1" /> | ||||||
| <PackageReference Include="GingerTestHelper" Version="2.0.2" /> | ||||||
| <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" /> | ||||||
| <PackageReference Include="Microsoft.IdentityModel.JsonWebTokens" Version="8.15.0" /> | ||||||
| <PackageReference Include="Microsoft.IdentityModel.Tokens" Version="8.15.0" /> | ||||||
|
Comment on lines
+19
to
+20
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Check if IdentityModel packages are directly used in GingerConsoleTest source files
echo "=== Direct usage of IdentityModel in GingerConsoleTest ==="
fd -e cs . 'Ginger/GingerConsoleTest' --exec rg 'using.*IdentityModel|JsonWebToken|IdentityModel.Tokens' {} + 2>/dev/null | head -20
echo ""
echo "=== Check GingerConsoleTest.csproj context (lines around 19-20) ==="
cat -n Ginger/GingerConsoleTest/GingerConsoleTest.csproj | sed -n '1,30p'
echo ""
echo "=== Check if these packages appear in other csproj files ==="
rg -n 'Microsoft.IdentityModel.JsonWebTokens|Microsoft.IdentityModel.Tokens' --glob '*.csproj' | head -30
echo ""
echo "=== Look for OWASPZAPDotNetAPI usage pattern (similar to learnings) ==="
rg -n 'OWASPZAPDotNetAPI' --glob '*.csproj'Repository: Ginger-Automation/Ginger Length of output: 5284 Consolidate Microsoft.IdentityModel packages using central package management rather than repeating across multiple projects. No direct usage of Rather than adding 🤖 Prompt for AI Agents |
||||||
| <PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" /> | ||||||
| <PackageReference Include="Microsoft.NETCore.App" Version="2.1.30" /> | ||||||
| <PackageReference Include="MSTest.TestAdapter" Version="2.1.2" /> | ||||||
| <PackageReference Include="MSTest.TestFramework" Version="2.1.2" /> | ||||||
| <PackageReference Include="SixLabors.ImageSharp" Version="3.1.12" /> | ||||||
| <PackageReference Include="System.Data.SqlClient" Version="4.9.0" /> | ||||||
| <PackageReference Include="System.Formats.Asn1" Version="9.0.1" /> | ||||||
| <PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="8.15.0" /> | ||||||
| <PackageReference Include="System.IO.Packaging" Version="9.0.1" /> | ||||||
| <PackageReference Include="System.Resources.Extensions" Version="8.0.0" /> | ||||||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="9.0.1" /> | ||||||
| <PackageReference Include="System.Text.Json" Version="9.0.1" /> | ||||||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="10.0.3" /> | ||||||
| <PackageReference Include="System.Text.Json" Version="10.0.2" /> | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: System.Text.Json 10.0.2 is a stable NuGet release and is published on NuGet.org (last updated Jan 13, 2026). [1] Install it with: dotnet add package System.Text.Json --version 10.0.2or Install-Package System.Text.Json -Version 10.0.2[2] Note: NuGet.org currently lists 10.0.3 (stable) as a newer version (posted Feb 10, 2026). [2] Sources: [1] [2] 🏁 Script executed: # Check the target framework in the csproj file
cat Ginger/GingerConsoleTest/GingerConsoleTest.csproj | head -50Repository: Ginger-Automation/Ginger Length of output: 2482 Change TargetFramework to .NET 8.0 to comply with coding guidelines. This project targets 🤖 Prompt for AI Agents |
||||||
| </ItemGroup> | ||||||
|
|
||||||
| <ItemGroup> | ||||||
|
|
||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,6 @@ | ||
| <Project Sdk="Microsoft.NET.Sdk"> | ||
| <PropertyGroup> | ||
| <TargetFramework>net8.0-windows7.0</TargetFramework> | ||
| <TargetFramework>net10.0-windows7.0</TargetFramework> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result:
Sources: [1] .NET Support Policy (dotnet.microsoft.com) · [2] Microsoft Learn Lifecycle page · [3] .NET Blog announcement of .NET 10 🏁 Script executed: cat -n Ginger/GingerControls/GingerControls.csprojRepository: Ginger-Automation/Ginger Length of output: 1583 Target framework change violates coding guidelines. The coding guideline for
If this upgrade is intentional and approved, the coding guideline in 🤖 Prompt for AI Agents |
||
| <OutputType>Library</OutputType> | ||
| <GenerateAssemblyInfo>false</GenerateAssemblyInfo> | ||
| <UseWPF>true</UseWPF> | ||
|
|
@@ -10,17 +10,17 @@ | |
| <ItemGroup> | ||
| <PackageReference Include="Microsoft.CSharp" Version="4.7.0" /> | ||
| <PackageReference Include="System.Data.DataSetExtensions" Version="4.5.0" /> | ||
| <PackageReference Include="Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers" Version="0.3.310801"> | ||
| <PackageReference Include="Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers" Version="0.4.421302"> | ||
| <PrivateAssets>all</PrivateAssets> | ||
| </PackageReference> | ||
| <PackageReference Include="Microsoft.Windows.Compatibility" Version="8.0.0" /> | ||
| <PackageReference Include="Microsoft.Windows.Compatibility" Version="10.0.3" /> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Check if the specified package versions exist on NuGet
echo "=== Microsoft.Windows.Compatibility 10.0.3 ==="
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" "https://api.nuget.org/v3-flatcontainer/microsoft.windows.compatibility/10.0.3/microsoft.windows.compatibility.nuspec"
echo "=== System.Security.Cryptography.Pkcs 10.0.3 ==="
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.pkcs/10.0.3/system.security.cryptography.pkcs.nuspec"Repository: Ginger-Automation/Ginger Length of output: 197 🏁 Script executed: # Read the .csproj file to check target framework and see all package references
cat -n Ginger/GingerControls/GingerControls.csprojRepository: Ginger-Automation/Ginger Length of output: 1585 Update target framework to .NET 8.0 and set Windows compatibility to 10.0.17763.0. The packages 🤖 Prompt for AI Agents |
||
| <PackageReference Include="System.Data.SqlClient" Version="4.9.0" /> | ||
| <PackageReference Include="System.Formats.Asn1" Version="9.0.1" /> | ||
| <PackageReference Include="System.IO.Packaging" Version="9.0.1" /> | ||
|
Comment on lines
18
to
19
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: # First, examine the full csproj file to see the target framework and all PackageReferences
cat -n Ginger/GingerControls/GingerControls.csprojRepository: Ginger-Automation/Ginger Length of output: 1585 🏁 Script executed: # Check latest available versions for the packages mentioned in the review
for pkg in "system.formats.asn1" "system.io.packaging" "system.resources.extensions"; do
echo "=== $pkg ==="
curl -s "https://api.nuget.org/v3-flatcontainer/$pkg/index.json" | jq -r '.versions | .[-10:]' 2>/dev/null || echo "Failed to fetch"
echo ""
doneRepository: Ginger-Automation/Ginger Length of output: 861 Update packages to match net10.0 target and align with System.Security.Cryptography.Pkcs.
🤖 Prompt for AI Agents |
||
| </ItemGroup> | ||
| <ItemGroup> | ||
| <PackageReference Include="System.Resources.Extensions" Version="8.0.0" /> | ||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="9.0.1" /> | ||
| <PackageReference Include="System.Security.Cryptography.Pkcs" Version="10.0.3" /> | ||
| </ItemGroup> | ||
| <ItemGroup> | ||
| <ProjectReference Include="..\GingerUtils\GingerUtils.csproj" /> | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Guard
cdagainst failure.If the publish directory doesn't exist (e.g., build wasn't published or path typo), the script silently continues in the wrong directory, causing confusing failures downstream.
Proposed fix
📝 Committable suggestion
🧰 Tools
🪛 Shellcheck (0.11.0)
[warning] 5-5: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
(SC2164)
🤖 Prompt for AI Agents