-
Notifications
You must be signed in to change notification settings - Fork 0
V4.0.1/package maintenance #13
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
Conversation
WalkthroughThis update upgrades multiple dependencies, Docker images, and test runner versions across the project. It modularizes the GitHub Actions pipeline by switching to reusable workflow calls, updates package release notes and changelog for version 4.0.1, and bumps several NuGet package versions to their latest compatible releases for .NET 8 and .NET 9. Changes
Sequence Diagram(s)sequenceDiagram
participant Developer
participant GitHub Actions
participant Reusable Workflow
participant NuGet
participant Docker
Developer->>GitHub Actions: Push code / open PR
GitHub Actions->>Reusable Workflow: Call build/pack/test/deploy workflows with parameters
Reusable Workflow->>NuGet: Restore, build, pack, test, deploy packages
Reusable Workflow->>Docker: Build images using updated Dockerfile and test runner
Reusable Workflow-->>GitHub Actions: Return results/artifacts
GitHub Actions-->>Developer: Report pipeline status
Possibly related PRs
Poem
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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
🧹 Nitpick comments (5)
.nuget/Codebelt.Bootstrapper.Console/PackageReleaseNotes.txt (1)
1-6: Add console package release notes for 4.0.1
The new section correctly adds the 4.0.1 entry with ALM notes for .NET 9 & 8.
Consider removing the leading BOM () on line 1 for consistent encoding..nuget/Codebelt.Bootstrapper.Web/PackageReleaseNotes.txt (1)
1-6: Add web package release notes for 4.0.1
The Web release notes align with the overall dependency upgrade and mirror other components.
Remove the leading BOM () on line 1 to avoid encoding issues..docfx/Dockerfile.docfx (2)
6-6: Use COPY instead of ADD for local folders.
Switch toCOPYto follow Docker best practices and avoid unintended behaviors ofADD:-ADD [".", "docfx"] +COPY ["docfx", "/docfx"]🧰 Tools
🪛 Hadolint (2.12.0)
[error] 6-6: Use COPY instead of ADD for files and folders
(DL3020)
11-11: Optional: Add platform flag to final stage.
Consider adding--platform=$BUILDPLATFORMto the final image for consistency:-FROM nginx:1.27.5-alpine AS final +FROM --platform=$BUILDPLATFORM nginx:1.27.5-alpine AS finalDirectory.Packages.props (1)
25-26: Updated .NET8-specific OpenAPI and Razor compilation versions.
Aligning these two packages to8.0.16follows the same pattern as the main props. Verify if other .NET8 packages should also be reviewed for minor version updates for uniformity.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (9)
.docfx/Dockerfile.docfx(1 hunks).github/workflows/pipelines.yml(2 hunks).nuget/Codebelt.Bootstrapper.Console/PackageReleaseNotes.txt(1 hunks).nuget/Codebelt.Bootstrapper.Web/PackageReleaseNotes.txt(1 hunks).nuget/Codebelt.Bootstrapper.Worker/PackageReleaseNotes.txt(1 hunks).nuget/Codebelt.Bootstrapper/PackageReleaseNotes.txt(1 hunks)CHANGELOG.md(1 hunks)Directory.Packages.props(1 hunks)testenvironments.json(1 hunks)
🧰 Additional context used
🪛 Hadolint (2.12.0)
.docfx/Dockerfile.docfx
[error] 6-6: Use COPY instead of ADD for files and folders
(DL3020)
🔇 Additional comments (12)
CHANGELOG.md (1)
7-10: Changelog entry for 4.0.1 looks good
The new section follows the Keep a Changelog format and the date aligns with the release notes in.nuget/*.testenvironments.json (1)
12-12: Update test environment Docker image
The Docker image tag has been bumped tonet8.0.409-9.0.300, matching the updated test runner version in the PR objectives..nuget/Codebelt.Bootstrapper.Worker/PackageReleaseNotes.txt (1)
1-5: New version entry is clear and descriptive.
The release notes correctly introduce the 4.0.1 entry above the 4.0.0 section, specifying supported TFMs and summarizing the dependency upgrades. This aligns with other Bootstrapper package notes..docfx/Dockerfile.docfx (2)
1-1: Good: Multi-platform base image specified.
Specifying--platform=$BUILDPLATFORMon the base stage ensures builds target the correct architecture.
4-4: Good: DocFX build image updated with platform flag.
Upgrading tocodebeltnet/docfx:2.78.3and adding--platform=$BUILDPLATFORMaligns with multi-platform build goals.Directory.Packages.props (3)
6-10: Dependency versions have been consistently bumped in the central props.
The updates forCodebelt.Extensions.*,Cuemon.*, andMicrosoft.NET.Test.Sdkensure all packages align to the latest minor releases, matching the 4.0.1 release notes.
15-15: xunit.runner.visualstudio version upgrade noted.
Bumping the test runner to3.1.0is appropriate for .NET 9/.NET 8 test projects. Confirm compatibility with any custom test adapters.
18-22: Updated .NET9-specific Microsoft package versions.
Thenet9condition now references9.0.5for OpenAPI, Razor runtime compilation, Configuration, DI abstractions, and Hosting, keeping them in sync with the SDK..github/workflows/pipelines.yml (4)
26-34: Build Step: Adopt reusablejobs-dotnet-buildworkflow.
Switching to the external workflow centralizes your build logic and reduces duplication. Verify it still handles the expected matrix (Debug,Release), restores, builds, and strong-name signs correctly.
40-49: Pack Step: Modularize packaging with reusable pack workflow.
Delegating tojobs-dotnet-packcleans up your CI and ensures a consistent packaging process. Confirm theversionoutput from build is correctly applied to the artifact.
52-64: Test Step: DRY up test definitions with a reusable workflow.
Centralizing test runs injobs-dotnet-testis a solid improvement. Ensure the OS matrix and custom build switches are supported by the reusable job.
93-99: Deploy Step: Reusejobs-nuget-pushfor NuGet publishing.
Good move delegating the NuGet push. Double-check that the conditional expression forconfigurationresolves correctly wheninputs.configurationis empty, and that inherited secrets provide the needed package permissions.Also applies to: 103-103
| Version 4.0.1 | ||
| Availability: .NET 9 and .NET 8 | ||
|
|
||
| # ALM | ||
| - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) | ||
|
|
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.
💡 Verification agent
🧩 Analysis chain
Add release notes for version 4.0.1
The new entry correctly sits above 4.0.0 and documents the dependency upgrade.
The leading BOM () on line 1 may interfere with some text processors—consider removing it to ensure clean UTF-8.
Please verify that the Worker package release notes have also been updated to 4.0.1.
🏁 Script executed:
#!/bin/bash
# Verify Worker package release notes contains version 4.0.1 entry.
if ! grep -R "Version 4.0.1" .nuget/Codebelt.Bootstrapper.Worker/PackageReleaseNotes.txt; then
echo "Error: Missing 4.0.1 entry in Worker package release notes"
exit 1
fi
echo "Worker package release notes are up to date"Length of output: 197
Release notes for v4.0.1 are in place and Worker package updated
The new entry sits correctly above 4.0.0 and documents the dependency upgrade. Worker package release notes also include the 4.0.1 entry.
Please remove the leading BOM from line 1 of .nuget/Codebelt.Bootstrapper/PackageReleaseNotes.txt to ensure clean UTF-8.
Locations to update:
.nuget/Codebelt.Bootstrapper/PackageReleaseNotes.txt: remove BOM on line 1
🤖 Prompt for AI Agents
In .nuget/Codebelt.Bootstrapper/PackageReleaseNotes.txt at lines 1 to 6, remove
the leading Byte Order Mark (BOM) character from line 1 to ensure the file is
clean UTF-8 and compatible with all text processors. Open the file in a text
editor that can display hidden characters and delete the BOM before the "Version
4.0.1" text, then save the file without BOM encoding.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #13 +/- ##
=======================================
Coverage 76.17% 76.17%
=======================================
Files 20 20
Lines 256 256
Branches 16 16
=======================================
Hits 195 195
Misses 61 61 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|



This pull request introduces updates to dependencies, workflows, and Docker configurations, alongside version bumps and changelog updates. The changes aim to streamline CI/CD processes, ensure compatibility with the latest frameworks, and improve maintainability.
Dependency Updates:
Directory.Packages.props, including upgrades forCodebelt.Extensions.Swashbuckle.AspNetCore,Cuemon.Core, andMicrosoft.NET.Test.Sdk, among others. These updates ensure compatibility with the latest .NET frameworks.Workflow Simplifications:
.github/workflows/pipelines.ymlto use modular workflow templates (jobs-dotnet-build,jobs-dotnet-pack,jobs-dotnet-test, andjobs-nuget-push) instead of inline steps, reducing duplication and improving maintainability. [1] [2]Docker Configuration:
.docfx/Dockerfile.docfxto specify--platform=$BUILDPLATFORMfor multi-platform builds and upgraded the base images to the latest versions (nginx:1.27.5-alpineandcodebeltnet/docfx:2.78.3).Release Notes and Changelog:
4.0.1in multiplePackageReleaseNotes.txtfiles, documenting dependency upgrades for all supported target frameworks. [1] [2] [3] [4]CHANGELOG.mdwith an entry for version4.0.1, highlighting the focus on package dependency updates.Test Environment:
testenvironments.jsontogimlichael/ubuntu-testrunner:net8.0.409-9.0.300for testing environments.Summary by CodeRabbit