Update test SDKs, tooling packages,#563
Update test SDKs, tooling packages,#563Daniel-Svensson merged 12 commits intoOpenRIAServices:mainfrom
Conversation
Upgraded Microsoft.NET.Test.Sdk to 18.4.0 across all test projects. Updated Microsoft.Build.Locator, System.CommandLine, coverlet.collector, and System.Management
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughUpdated many test project NuGet versions (primarily Microsoft.NET.Test.Sdk 18.0.1 → 18.4.0), bumped selected build/test-related packages, removed two binder classes from the CodeGenTask, refactored CLI wiring in Program.cs, and marked one logger class as sealed. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@src/OpenRiaServices.Tools.CodeGenTask/Properties/launchSettings.json`:
- Around line 5-6: The committed launch profile contains machine-specific
absolute paths in the launchSettings.json keys "commandLineArgs" and
"workingDirectory"; replace these with portable values (remove the hardcoded
temp and user paths), e.g. clear commandLineArgs or use a relative path or
environment-variable placeholder, and change workingDirectory to a
project-relative token (or omit it) so the profile no longer contains a local
username or temp file path; alternatively remove the profile from source control
if it is only needed per-developer.
In
`@src/Test/Desktop/OpenRiaServices.Common.Test/OpenRiaServices.Common.Test.csproj`:
- Around line 16-17: The ItemGroup Condition contains a trailing space in the
comparison value ('net472' ) causing whitespace-sensitive MSBuild comparison to
fail; edit the Condition on the ItemGroup that controls the PackageReference for
System.Management so the comparison uses the exact string "'net472'" (no
trailing space) against $(TargetFramework), i.e., update the Condition to
"'$(TargetFramework)' != 'net472'" so the System.Management PackageReference is
excluded for net472 as intended.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: cc9244dd-4cd1-4e97-8402-41a9b1ed4142
📒 Files selected for processing (19)
src/OpenRiaServices.Client/Test/Client.External.Test/OpenRiaServices.Client.External.Test.csprojsrc/OpenRiaServices.Client/Test/Client.Test/OpenRiaServices.Client.Test.csprojsrc/OpenRiaServices.Client/Test/Client.Vb.Test/OpenRiaServices.Client.Vb.Test.csprojsrc/OpenRiaServices.Hosting.AspNetCore/Test/OpenRiaServices.Hosting.AspNetCore.Test/OpenRiaServices.Hosting.AspNetCore.Test.csprojsrc/OpenRiaServices.Hosting.Local/Test/OpenRiaServices.Hosting.Local.Test.csprojsrc/OpenRiaServices.Hosting.Wcf.Endpoint/Test/OpenRiaServices.Hosting.Wcf.Endpoint.Test.csprojsrc/OpenRiaServices.Hosting.Wcf/Test/OpenRiaServices.Hosting.Wcf.Test.csprojsrc/OpenRiaServices.Server.Authentication.AspNetMembership/Test/OpenRiaServices.Server.Authentication.AspNetMembership.Test.csprojsrc/OpenRiaServices.Server.EntityFrameworkCore/Test/OpenRiaServices.Server.EntityFrameworkCore.Test/OpenRiaServices.Server.EntityFrameworkCore.Test.csprojsrc/OpenRiaServices.Server.UnitTesting/Test/OpenRiaServices.Server.UnitTesting.Test.csprojsrc/OpenRiaServices.Server/Test/OpenRiaServices.Server.Test.csprojsrc/OpenRiaServices.Tools.CodeGenTask/OpenRiaServices.Tools.CodeGenTask.csprojsrc/OpenRiaServices.Tools.CodeGenTask/Properties/launchSettings.jsonsrc/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csprojsrc/OpenRiaServices.Tools/Test/OpenRiaServices.Tools.Test.csprojsrc/Test/Desktop/OpenRiaServices.Common.Test/OpenRiaServices.Common.Test.csprojsrc/Test/OpenRiaservices.EndToEnd.AspNetCore.Test/OpenRiaservices.EndToEnd.AspNetCore.Test.csprojsrc/Test/OpenRiaservices.EndToEnd.Wcf.Test/OpenRiaservices.EndToEnd.Wcf.Test.csprojsrc/VisualStudio/Tools/Test/OpenRiaServices.VisualStudio.DomainServices.Tools.Test.csproj
src/OpenRiaServices.Tools.CodeGenTask/Properties/launchSettings.json
Outdated
Show resolved
Hide resolved
src/Test/Desktop/OpenRiaServices.Common.Test/OpenRiaServices.Common.Test.csproj
Outdated
Show resolved
Hide resolved
src/Test/Desktop/OpenRiaServices.Common.Test/OpenRiaServices.Common.Test.csproj
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In
`@src/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csproj`:
- Around line 35-36: Update all project PackageReference entries for
System.Collections.Immutable and System.Reflection.MetadataLoadContext to the
same version (preferably 10.0.5) to avoid MSBuild resolution conflicts;
specifically change the PackageReference in
OpenRiaServices.Tools.TextTemplate.Test.csproj and align the versions used in
the projects referenced (OpenRiaServices.Hosting.Wcf,
OpenRiaServices.Hosting.AspNetCore, WebsiteFullTrust, and any other csproj that
references these packages) so every csproj uses System.Collections.Immutable and
System.Reflection.MetadataLoadContext version 10.0.5, then restore and build to
verify no binding or resolution warnings remain.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 34433d4a-a98b-4d03-8c2b-0e1b16c41e15
📒 Files selected for processing (2)
src/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csprojsrc/OpenRiaServices.Tools/Test/OpenRiaServices.Tools.Test.csproj
src/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csproj
Show resolved
Hide resolved
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cs (1)
2-4:⚠️ Potential issue | 🟠 MajorConsider upgrading System.CommandLine from beta version to stable 2.0.5.
The code uses
System.CommandLineversion 2.0.0-beta4.22272.1 (released June 2, 2022). The latest stable version is 2.0.5 (March 2026). While no known security vulnerabilities were found for beta4, using a 4-year-old beta version in production is not ideal. Upgrading would require code changes due to breaking API changes between beta4 and stable 2.0.x releases. The PR description references "revert commandline update," suggesting previous upgrade attempts encountered incompatibilities. This is likely technical debt worth addressing if feasible.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cs` around lines 2 - 4, The project currently imports System.CommandLine (seen in SharedCodeServiceParametersBinder.cs via the using directives System.CommandLine and System.CommandLine.Binding) which is an old beta; update the NuGet package to the stable 2.0.5 and then fix compile breaks in SharedCodeServiceParametersBinder and any other files that use the old binding API: replace obsolete types/methods from System.CommandLine.Binding with the stable equivalents (adjust Binder/BinderBase/Argument<T>/Option<T> usages, binding constructors, and any BindingContext/InvocationContext differences), update using directives as needed, rebuild, and resolve any resulting compiler errors by following the System.CommandLine 2.0 migration guidance so the code compiles and tests pass.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Outside diff comments:
In `@src/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cs`:
- Around line 2-4: The project currently imports System.CommandLine (seen in
SharedCodeServiceParametersBinder.cs via the using directives System.CommandLine
and System.CommandLine.Binding) which is an old beta; update the NuGet package
to the stable 2.0.5 and then fix compile breaks in
SharedCodeServiceParametersBinder and any other files that use the old binding
API: replace obsolete types/methods from System.CommandLine.Binding with the
stable equivalents (adjust Binder/BinderBase/Argument<T>/Option<T> usages,
binding constructors, and any BindingContext/InvocationContext differences),
update using directives as needed, rebuild, and resolve any resulting compiler
errors by following the System.CommandLine 2.0 migration guidance so the code
compiles and tests pass.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 1b5c282c-1823-4c54-bf3f-2c3f4074c67f
📒 Files selected for processing (2)
src/OpenRiaServices.Tools.CodeGenTask/ConsoleLogger.cssrc/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cs
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@src/OpenRiaServices.Tools.CodeGenTask/Program.cs`:
- Around line 62-93: The rootCommand.SetAction currently registers a void
handler so Invoke() always returns 0; change the handler to return an int and
return a non-zero exit code when RunCodeGenForNet6 fails. Inside the SetAction
callback that uses parseResult, call RunCodeGenForNet6(...) and return 0 when it
returns true and a non-zero value (e.g., 1) when it returns false; ensure the
handler signature matches System.CommandLine's Func<ParseResult,int> (or use
SetHandler that returns int) so rootCommand.Parse(args).Invoke() propagates the
code. Use the existing symbols rootCommand.SetAction, parseResult,
RunCodeGenForNet6, and the local success result when implementing the change.
In
`@src/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csproj`:
- Around line 31-34: The project references Microsoft.Build packages at
Version="17.11.48" but the commit message claims "latest .NET 8 release"; either
update all four PackageReference versions (Microsoft.Build,
Microsoft.Build.Framework, Microsoft.Build.Utilities.Core,
Microsoft.Build.Tasks.Core) from 17.11.48 to 17.14.28 to use the current .NET
8-compatible MSBuild, or if 17.11.48 was intentionally chosen for compatibility,
keep those versions and amend the commit/message to accurately state the chosen
version rather than "latest .NET 8 release".
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: dfe883ba-9084-4cb5-a005-55c4d438a70e
📒 Files selected for processing (8)
src/OpenRiaServices.Hosting.AspNetCore/Framework/OpenRiaServices.Hosting.AspNetCore.csprojsrc/OpenRiaServices.Tools.CodeGenTask/ClientCodeGenerationOptionsBinder.cssrc/OpenRiaServices.Tools.CodeGenTask/OpenRiaServices.Tools.CodeGenTask.csprojsrc/OpenRiaServices.Tools.CodeGenTask/Program.cssrc/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cssrc/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csprojsrc/OpenRiaServices.Tools/Test/OpenRiaServices.Tools.Test.csprojsrc/VisualStudio/Tools/Test/OpenRiaServices.VisualStudio.DomainServices.Tools.Test.csproj
💤 Files with no reviewable changes (3)
- src/OpenRiaServices.Hosting.AspNetCore/Framework/OpenRiaServices.Hosting.AspNetCore.csproj
- src/OpenRiaServices.Tools.CodeGenTask/ClientCodeGenerationOptionsBinder.cs
- src/OpenRiaServices.Tools.CodeGenTask/SharedCodeServiceParametersBinder.cs
src/OpenRiaServices.Tools.TextTemplate/Test/OpenRiaServices.Tools.TextTemplate.Test.csproj
Outdated
Show resolved
Hide resolved
|

Summary by CodeRabbit