Repository navigation
V1.1.0/double digits - #17
gimlichael wants to merge 13 commits into
Conversation
Shared build properties now target net11.0 alongside net10.0 for the source, test, and benchmark projects so the libraries can be built and tested against .NET 11.
Moves the central package version of Codebelt.Coverlet.MTP to the latest stable release to keep the test coverage tooling current.
Converts affected source and test files to LF line endings and removes stray indentation and trailing whitespace so formatting matches the rest of the codebase.
Updates the README, AGENTS guidance, and availability include to describe .NET 11 alongside .NET 10 as supported targets.
Explains which SDKs contributors need to build and test both target frameworks and describes the updated test loop and CI coverage.
Moves CI runners to Ubuntu 26.04 and opts in to preview SDKs so .NET 11 can be built and tested before its final release. The default availability text in the service update workflow now lists .NET 10 and .NET 11.
Records the .NET 11 target in the package release notes and adds a target framework line to each package README so NuGet consumers see the supported frameworks.
[Medium impact] The PR appears safe to merge, with non-blocking cache and contributor-guide fixes recommended.
|
| Version: 1.1.0 | ||
| Availability: .NET 11 and .NET 10 | ||
|
|
||
| # ALM | ||
| - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) | ||
| - CHANGED Target frameworks by adding .NET 11 (net11.0) so the package now targets .NET 11 and .NET 10 |
There was a problem hiding this comment.
Previous release notes disappear
The new 1.1.0 entry replaces 1.0.9 instead of being added above it. The YAML and XML package notes do the same. Because Directory.Build.targets copies each whole file into NuGet release notes, these three packages lose their published 1.0.9 history. Restore that entry below 1.1.0, as the core and Newtonsoft.Json packages already do.
Prompt To Fix With AI
This is a comment left during a code review.
Path: .nuget/Codebelt.Extensions.Carter.AspNetCore.Text.Json/PackageReleaseNotes.txt
Line: 1-5
Comment:
**Previous release notes disappear**
The new `1.1.0` entry replaces `1.0.9` instead of being added above it. The YAML and XML package notes do the same. Because `Directory.Build.targets` copies each whole file into NuGet release notes, these three packages lose their published `1.0.9` history. Restore that entry below `1.1.0`, as the core and Newtonsoft.Json packages already do.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Centralizes the SonarAnalyzer.CSharp package version and makes file-scoped namespaces a build error across the solution, so the project-wide style rule is enforced rather than suggested. Line endings and byte order marks in these files are normalized in the same pass.
Moves the CI test matrix to the .NET 10 and .NET 11 runner images and tunes nginx cache headers for the DocFX site. Also normalizes byte order marks and line endings in the DocFX files, so the published docs match the new targets.
Records the .NET 11 target framework addition, the Coverlet.MTP upgrade and the CI runner move for the 1.1.0 release.
Keeps the contributor and NuGet-facing docs in line with the .NET 11 target framework added in this release.
Brings the two unit test files in line with the file-scoped namespace rule. Assertions are unchanged.
Brings the tracked .bot/README.md in line with the repository line-ending policy at the user's request. The file has no content change.
| # cached permanently because changed content is published under a different URL. | ||
| location ~ "^/public/.+-[A-Z0-9]{8}(?:-[A-Z0-9]{8})?(?:\.min)?\.(?:(?:css|js)(?:\.map)?|woff2?)$" { | ||
| try_files $uri =404; | ||
| add_header Cache-Control "public, max-age=31536000, immutable" always; |
There was a problem hiding this comment.
Adding always gives 404 responses the same year-long cache policy as successful responses. If an asset is temporarily missing, browsers and shared caches can keep the error even after the asset becomes available. Remove always from this header, or give error responses a separate no-store policy.
| add_header Cache-Control "public, max-age=31536000, immutable" always; | |
| add_header Cache-Control "public, max-age=31536000, immutable"; |
Prompt To Fix With AI
This is a comment left during a code review.
Path: .docfx/nginx.conf
Line: 14
Comment:
**Missing assets stay cached**
Adding `always` gives 404 responses the same year-long cache policy as successful responses. If an asset is temporarily missing, browsers and shared caches can keep the error even after the asset becomes available. Remove `always` from this header, or give error responses a separate no-store policy.
```suggestion
add_header Cache-Control "public, max-age=31536000, immutable";
```
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.| { | ||
| "name": "WSL-Ubuntu", | ||
| "type": "wsl", | ||
| "wslDistribution": "Ubuntu-26.04" |
There was a problem hiding this comment.
testenvironments.json now selects Ubuntu-26.04, but .github/CONTRIBUTING.md still says WSL-Ubuntu uses Ubuntu-24.04. Contributors following the guide can install the wrong distribution and then fail to start the configured environment. Update the guide alongside this change.
Prompt To Fix With AI
This is a comment left during a code review.
Path: testenvironments.json
Line: 7
Comment:
**WSL guide names wrong version**
`testenvironments.json` now selects `Ubuntu-26.04`, but `.github/CONTRIBUTING.md` still says `WSL-Ubuntu` uses `Ubuntu-24.04`. Contributors following the guide can install the wrong distribution and then fail to start the configured environment. Update the guide alongside this change.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
|



This pull request adds .NET 11 targeting alongside .NET 10 for the Carter libraries, tests, and benchmark configuration. It updates CI for preview SDKs, aligns framework guidance and package metadata, and normalizes source and test formatting.
Build and CI:
Framework guidance and package metadata:
Formatting consistency: