Develop#34
Closed
henrikhimself wants to merge 12 commits into
Closed
Conversation
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3 to 4. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@v3...v4) --- updated-dependencies: - dependency-name: github/codeql-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
…evelop/github/codeql-action-4 Bump github/codeql-action from 3 to 4
…evelop/actions/checkout-6 Bump actions/checkout from 5 to 6
…ithub workflows. Add test coverage report.
… for macOS and .NET 8. Add logging enhancements and update test report creation.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR migrates the project to .NET 10.0, introduces centralized package management, and enhances test coverage reporting infrastructure. It also adds an "allow overwrite" feature for dynamically updating reverse proxy routes and clusters, along with macOS .NET 8 compatibility improvements for certificate generation.
Key Changes
- Migration to .NET 10.0: Updated target frameworks from
net9.0tonet10.0in all project files, modified global.json SDK version, and updated CI/CD workflows - Centralized Package Management: Introduced Directory.Packages.props for unified NuGet version control, removing explicit versions from individual projects
- Route/Cluster Overwrite Capability: Added
allowOverwriteparameter toAddRouteAsyncandAddClusterAsyncmethods, enabling updates to existing configurations
Reviewed changes
Copilot reviewed 45 out of 46 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| global.json | Updated SDK version to 10.0.0 for .NET 10 support |
| Directory.Packages.props | New centralized package version management file |
| Directory.Build.props | Cleaned up analyzer references, removed SonarAnalyzer |
| test/Directory.Build.props | Deleted (project references moved to individual test projects) |
| src/ReverseProxy/ReverseProxy.csproj | Updated to net10.0, version bumped to beta5, centralized package versions |
| src/ReverseProxy.Aspire/ReverseProxy.Aspire.csproj | Updated to net10.0, centralized package versions |
| test/ReverseProxy.UnitTest/ReverseProxy.UnitTest.csproj | Updated to net10.0, added project reference, centralized packages |
| test/ReverseProxy.Aspire.UnitTest/ReverseProxy.Aspire.UnitTest.csproj | Updated to net10.0, added project reference, centralized packages |
| src/ReverseProxy/ReverseProxyApp.cs | Added allowOverwrite parameter to route/cluster methods with overwrite logic |
| src/ReverseProxy/ReverseProxyApi.cs | Updated API calls to pass allowOverwrite from DTOs |
| src/ReverseProxy/ReverseProxy/Models/RouteInputDto.cs | Added AllowOverwrite property |
| src/ReverseProxy/ReverseProxy/Models/ClusterInputDto.cs | Added AllowOverwrite property |
| test/ReverseProxy.UnitTest/ReverseProxy/ReverseProxyAppTests.cs | Updated test signatures, added overwrite functionality tests |
| src/ReverseProxy/Certificate/* | Refactored certificate creation with platform-specific strategies (ICertificateCreator, ICaLoader) |
| src/ReverseProxy/Certificate/Strategy/MacOSNet8*.cs | New macOS .NET 8 workarounds using Pkcs12Builder to avoid keychain issues |
| src/ReverseProxy/Certificate/Strategy/Default*.cs | New default implementations using standard .NET APIs |
| src/ReverseProxy/Certificate/CertificateConstants.cs | Refactored to use extensible CA name instead of hardcoded filenames |
| src/ReverseProxy/ReverseProxyExtensions.cs | Added conditional platform-specific service registration |
| src/ReverseProxy/ReverseProxy/LoggerMiddleware.cs | Added IsEnabled checks for performance, improved blackhole logging |
| .github/workflows/ci.yml | Updated to actions/checkout@v6 and .NET 10.0.x |
| .github/workflows/cd.yml | Updated to CodeQL v4 and .NET 10.0.x |
| .runsettings | New test and coverage configuration file |
| scripts/Update-TestReport.ps1 | New PowerShell script for automated test execution and HTML report generation |
| Invoke-Test.ps1 | New test runner script |
| .vscode/* | Added tasks.json, updated settings.json and extensions.json for improved developer experience |
| .config/dotnet-tools.json | Added reportgenerator tool configuration |
| .github/copilot-instructions.md | New comprehensive documentation of architecture, testing, and development practices |
| examples/* | Updated all example projects to net10.0, added IsPackable=false |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…ing to user home. Remove optional port in WithReverseProxyReference(...). Add Agents instructions file. Update Aspire to 13 and add settings for cli.
…te to Aspire 13.1.0.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
.NET 10.0 Migration
• Updated all project and example csproj files to target .NET 10.0.
• Updated global.json to align with .NET 10.0.
• Modernized CI/CD workflows to use the latest GitHub Actions and CodeQL versions.
Centralized Package Management
• Introduced Directory.Packages.props for unified NuGet version management.
• Removed explicit package versions from individual project files.
• Enabled ManagePackageVersionsCentrally for consistent dependency handling.
• Cleaned up and reorganized analyzer and package references in Directory.Build.props.
Test Coverage & Reporting Enhancements
• Added .runsettings for detailed test and coverage configuration.
• Added .config/dotnet-tools.json to enable the reportgenerator tool.
• Added PowerShell scripts to automate test execution and HTML coverage report generation.
• Improved VS Code integration with recommended extensions, test settings, and tasks for running tests and viewing reports.
Documentation & Developer Experience
• Added a comprehensive copilot-instructions.md documenting architecture, testing strategy, build approach, and extension points.