Repository navigation
V0.6.0/double digits - #34
gimlichael wants to merge 14 commits into
Conversation
The repository now requires file-scoped namespaces for all C# files, so the remaining block-scoped declarations are converted and the editorconfig rule is raised to error.
Packages now target .NET 10 and .NET 11 instead of .NET 9, and SonarAnalyzer.CSharp is added as a private build dependency so analyzer findings surface during builds.
CI workflows move from Ubuntu 24.04 to 26.04 runners and opt into preview images so the pipeline tracks the upcoming runner image.
Docker test runners are split into separate net10.0 and net11.0 environments so each target framework is exercised by its own image, and the contributor guide reflects the change.
The benchmark prompt file is deleted from the repository, so the copy under .github/prompts is no longer tracked.
Fingerprinted assets are always served with a one-year immutable cache header, replacing the status-dependent map that set it only on successful and revalidated responses.
The changelog records the 0.6.0 patch release covering analyzer enforcement, formatting normalization, test environments, and documentation hosting.
Readmes, agent guidance and the availability include now name .NET 10 and .NET 11 as the supported targets, matching the project files.
Line endings are normalized to LF through .gitattributes and byte order marks are removed from text files, so diffs only show real content changes.
[Medium impact] The PR appears safe to merge; duplicate release-note entries remain a non-blocking issue.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #34 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 11 11
Lines 191 191
Branches 4 4
=========================================
Hits 191 191 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
The 0.6.0 target framework change removes .NET 9 from the package targets and adds .NET 11, which is a breaking change for consumers, so the release is classified as major.
The fingerprinted asset location cached every response for a year, including errors. Only successful and revalidated responses are now marked immutable, and range requests are disabled so complete assets are served consistently.
The SonarCloud and CodeQL jobs now opt into preview analysis so the pipeline runs the newer analyzer checks.
The service update workflow only accepted a pending patch release. It now honors a planned minor or major version in CHANGELOG.md, validates release dates, and accepts case-insensitive TBD markers.
| if pending_version > released_version: | ||
| # Preserve an explicitly planned patch, minor, or major release. | ||
| new_version = current_version |
There was a problem hiding this comment.
Release notes repeat a version
If a service update runs before the planned release is tagged, this branch now reuses that release number. With the current files, it selects 0.6.0 even though PackageReleaseNotes.txt already contains Version: 0.6.0. The later step always prepends another block, leaving two entries for the same release in the generated PR and package notes. When reusing a planned version, update its existing block instead.
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/service-update.yml
Line: 96-98
Comment:
**Release notes repeat a version**
If a service update runs before the planned release is tagged, this branch now reuses that release number. With the current files, it selects `0.6.0` even though `PackageReleaseNotes.txt` already contains `Version: 0.6.0`. The later step always prepends another block, leaving two entries for the same release in the generated PR and package notes. When reusing a planned version, update its existing block instead.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
|



This pull request moves the library to .NET 10 and .NET 11, switches the codebase to file-scoped namespaces, and updates CI, Docker test environments, documentation, and the 0.6.0 release notes to match.
Target frameworks:
Code style:
Build and CI:
Documentation: