-
Notifications
You must be signed in to change notification settings - Fork 0
V10.0.0/launch #18
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
V10.0.0/launch #18
Conversation
➖ remove support for net8.0 TFM
WalkthroughThis PR upgrades the project to target .NET 10 and .NET 9, replacing .NET 8 support. Changes include framework target updates, Docker and CI/CD pipeline configuration updates, package dependency version bumps, test framework migration to xunit.v3, removal of conditional compilation guards, and documentation updates reflecting new .NET version support. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes
Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✨ 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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request upgrades the project to target .NET 10 (LTS), removes support for .NET 8, and modernizes dependencies and tooling across the codebase.
- Updates all target frameworks from
net8.0tonet10.0while retainingnet9.0support - Upgrades dependencies to their latest compatible versions, including migration to xUnit v3
- Removes legacy .NET 6 and .NET 8 conditional compilation code
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| Directory.Build.props | Updated target frameworks to net10.0/net9.0 and added xUnit v3 test runner configuration |
| Directory.Packages.props | Upgraded all package versions to net10.0-compatible releases |
| testenvironments.json | Updated Docker test runner image to include .NET 10 SDK |
| ServiceCollectionExtensions.cs | Removed NET6.0 and NET8.0_OR_GREATER conditional compilation directives |
| RestfulProblemDetailsFactory.cs | Deleted legacy NET6.0-only implementation file |
| Test files | Removed unused imports and NET8.0 conditional compilation blocks |
| Documentation files | Updated platform support references from .NET 8 to .NET 10 |
| .github/workflows/pipelines.yml | Updated workflow job versions to v3 and added xUnit v3 build requirement |
| .docfx files | Updated DocFx tooling and target framework references |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #18 +/- ##
=======================================
Coverage 89.69% 89.69%
=======================================
Files 4 4
Lines 97 97
Branches 9 9
=======================================
Hits 87 87
Misses 10 10 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
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.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (17)
.docfx/Dockerfile.docfx(1 hunks).docfx/docfx.json(1 hunks).docfx/includes/availability-default.md(1 hunks).docfx/includes/availability-modern.md(1 hunks).github/workflows/pipelines.yml(4 hunks).nuget/Codebelt.Extensions.Asp.Versioning/PackageReleaseNotes.txt(1 hunks).nuget/Codebelt.Extensions.Asp.Versioning/README.md(1 hunks)CHANGELOG.md(1 hunks)Directory.Build.props(3 hunks)Directory.Packages.props(1 hunks)README.md(1 hunks)src/Codebelt.Extensions.Asp.Versioning/RestfulProblemDetailsFactory.cs(0 hunks)src/Codebelt.Extensions.Asp.Versioning/ServiceCollectionExtensions.cs(1 hunks)test/Codebelt.Extensions.Asp.Versioning.Tests/ApiVersionReaderTest.cs(0 hunks)test/Codebelt.Extensions.Asp.Versioning.Tests/ProblemDetailsFactoryTest.cs(1 hunks)test/Codebelt.Extensions.Asp.Versioning.Tests/RestfulApiVersioningOptionsTest.cs(0 hunks)testenvironments.json(1 hunks)
💤 Files with no reviewable changes (3)
- test/Codebelt.Extensions.Asp.Versioning.Tests/ApiVersionReaderTest.cs
- src/Codebelt.Extensions.Asp.Versioning/RestfulProblemDetailsFactory.cs
- test/Codebelt.Extensions.Asp.Versioning.Tests/RestfulApiVersioningOptionsTest.cs
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md
7-7: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3
(MD001, heading-increment)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
- GitHub Check: call-test (windows-2022, Release) / 🧪 Test
- GitHub Check: call-test (ubuntu-24.04, Debug) / 🧪 Test
- GitHub Check: call-test (windows-2022, Debug) / 🧪 Test
- GitHub Check: call-test (ubuntu-24.04, Release) / 🧪 Test
- GitHub Check: call-pack (Release) / 📦 Pack
- GitHub Check: call-pack (Debug) / 📦 Pack
- GitHub Check: CodeQL analysis (csharp)
🔇 Additional comments (18)
src/Codebelt.Extensions.Asp.Versioning/ServiceCollectionExtensions.cs (1)
60-60: Whitespace-only change; behavior unchangedThis hunk is purely spacing between the problem-details configuration and the return statement; there is no functional impact, and the surrounding configuration remains consistent.
test/Codebelt.Extensions.Asp.Versioning.Tests/ProblemDetailsFactoryTest.cs (1)
59-59: Layout tweak only; tests remain equivalentThe added blank line is a cosmetic change that slightly improves readability without affecting assertions or test behavior.
.nuget/Codebelt.Extensions.Asp.Versioning/README.md (1)
5-6: Approved. The tagline appropriately highlights .NET 9 and .NET 10 support and integrates well with the document structure..docfx/docfx.json (1)
15-15: Approved. TargetFramework update to net10.0 is consistent with the repository's migration to .NET 10..docfx/includes/availability-modern.md (1)
1-1: Approved. Availability documentation appropriately reflects .NET 10 and .NET 9 support.CHANGELOG.md (1)
10-14: Approved. The 10.0.0 changelog entry clearly communicates the major version bump, the .NET 10 adoption, and provides appropriate context about the project's versioning strategy..docfx/includes/availability-default.md (1)
1-1: Approved. Availability documentation correctly reflects .NET 10, .NET 9, and .NET Standard 2.0 support..nuget/Codebelt.Extensions.Asp.Versioning/PackageReleaseNotes.txt (1)
1-8: Approved. Version 10.0.0 release notes clearly document .NET 10 support addition, .NET 8 removal, and dependency upgrades. Format is consistent with prior entries..docfx/Dockerfile.docfx (1)
1-1: Verification complete — both base image versions are available.Both
nginx:1.29.3-alpineandcodebeltnet/docfx:2.78.4exist in their respective Docker registries and can be safely used.testenvironments.json (1)
12-12: Docker image verified and available. The custom test runner imagegimlichael/ubuntu-testrunner:net8.0.416-9.0.307-10.0.100is built, published on Docker Hub, and actively maintained. It was last pushed on 2025-11-11 and has recent pull activity, confirming it is accessible for CI/CD use.Directory.Build.props (3)
18-18: LGTM: Framework targets correctly updated.The migration from
net9.0;net8.0tonet10.0;net9.0aligns with the PR objectives to adopt .NET 10 and remove .NET 8 support.
50-66: LGTM: xUnit v3 configuration correctly implemented.The test project configuration properly includes:
- Updated framework targets to
net10.0;net9.0OutputType=Exe(required for xUnit v3)UseMicrosoftTestingPlatformRunner=true(required for xUnit v3)These settings are necessary for the xUnit v3 migration.
68-85: LGTM: Test package references updated for xUnit v3.The package references correctly include
xunit.v3andxunit.v3.runner.consolefor the xUnit v3 migration, while maintaining other test infrastructure packages (coverage, Visual Studio runner)..github/workflows/pipelines.yml (4)
30-30: LGTM: Workflow actions upgraded to v3.The build, pack, test, and sonarcloud jobs have been consistently upgraded to use v3 reusable workflows, aligning with the PR's CI/CD modernization objectives.
Also applies to: 44-44, 57-57, 68-68
63-63: LGTM: Build step correctly enabled for xUnit v3.The explicit
build: trueconfiguration is required for xUnit v3 compatibility. The inline comment provides helpful context for future maintainers.
83-94: LGTM: CodeQL temporarily disabled and deploy workflow updated.The changes appropriately:
- Comment out the CodeQL job (aligns with PR objective "pending v3 adoption")
- Remove
codeqlfrom the deploy dependencies- Upgrade the nuget-push workflow to v2
78-78: No action required—codecov workflow v3 does not exist.The only released version of the codecov workflow is v1, so the current pin to v1 is appropriate. The code is correct as-is.
Likely an incorrect or invalid review comment.
Directory.Packages.props (1)
10-17: All package versions verified as .NET 10 compatible.Microsoft.NET.Test.Sdk 18.0.1 lists net10.0 as a computed compatible TFM. xunit v3 (3.1.0 and 3.2.0) includes net10.0 support. Codebelt and Cuemon packages have .NET 10 support with net10.0 compatibility. All specified package versions exist on NuGet and are compatible with .NET 10.
|
Note Docstrings generation - SUCCESS |
Docstrings generation was requested by @gimlichael. * #18 (comment) The following files were modified: * `src/Codebelt.Extensions.Asp.Versioning/ServiceCollectionExtensions.cs`



This pull request is a major update that shifts the project to target .NET 10 (LTS), removes support for .NET 8, and upgrades dependencies and tooling across the codebase. It also updates documentation and CI/CD workflow configurations to align with the new platform support and package versions.
Platform and Framework Updates:
net10.0andnet9.0, removing support fornet8.0(Directory.Build.props,.docfx/docfx.json) [1] [2] [3]..nuget/Codebelt.Extensions.Asp.Versioning/PackageReleaseNotes.txt,.docfx/includes/availability-default.md,.docfx/includes/availability-modern.md, [1] [2] [3] [4].Dependency and Package Upgrades:
Directory.Packages.props,Directory.Build.props) [1] [2]..docfx/Dockerfile.docfx).CI/CD and Workflow Improvements:
.github/workflows/pipelines.yml) [1] [2] [3].Codebase Cleanup:
RestfulProblemDetailsFactoryand related service registration logic (src/Codebelt.Extensions.Asp.Versioning/RestfulProblemDetailsFactory.cs,src/Codebelt.Extensions.Asp.Versioning/ServiceCollectionExtensions.cs) [1] [2] [3] [4].test/Codebelt.Extensions.Asp.Versioning.Tests/ApiVersionReaderTest.cs,test/Codebelt.Extensions.Asp.Versioning.Tests/ProblemDetailsFactoryTest.cs,test/Codebelt.Extensions.Asp.Versioning.Tests/RestfulApiVersioningOptionsTest.cs) [1] [2] [3] [4] [5].Documentation Enhancements:
README.md,.nuget/Codebelt.Extensions.Asp.Versioning/README.md) [1] [2].[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]
Summary by CodeRabbit
Release Notes
New Features
Documentation
Chores