Skip to content

Develop#34

Closed
henrikhimself wants to merge 12 commits into
mainfrom
develop
Closed

Develop#34
henrikhimself wants to merge 12 commits into
mainfrom
develop

Conversation

@henrikhimself
Copy link
Copy Markdown
Owner

.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.

dependabot Bot and others added 9 commits October 13, 2025 12:59
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
… for macOS and .NET 8. Add logging enhancements and update test report creation.
Copilot AI review requested due to automatic review settings December 31, 2025 11:34
Copy link
Copy Markdown
Contributor

Copilot AI left a 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 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.0 to net10.0 in 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 allowOverwrite parameter to AddRouteAsync and AddClusterAsync methods, 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.

Comment thread src/ReverseProxy/ReverseProxy/ReverseProxyApp.cs Outdated
Comment thread src/ReverseProxy/Certificate/Strategy/DefaultCertificateCreator.cs
Comment thread scripts/Update-TestReport.ps1 Outdated
Comment thread .github/copilot-instructions.md Outdated
henrikhimself and others added 3 commits December 31, 2025 21:23
…ing to user home. Remove optional port in WithReverseProxyReference(...). Add Agents instructions file. Update Aspire to 13 and add settings for cli.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants