Refactor project structure and update configs#179
Merged
ChrisPulman merged 14 commits intomainfrom Jan 22, 2026
Merged
Conversation
Moved example projects to an 'examples' directory, replaced 'src/Extensions.Hosting.sln' with 'src/Extensions.Hosting.slnx', and added new configuration files. The .editorconfig was reorganized for clarity and maintainability, and analyzer rules were grouped and commented. Various project and source files were updated to reflect the new structure.
Moved the With*() calls after WithRegistration(r => r.InitializeSplat()) in the HostBuilderReactiveUiExtensions for Maui, WinForms, WinUI, and Wpf projects to ensure correct registration order. Also updated Wpf to use BuildApp() in the service collection extension.
Introduces new extension methods for configuring Entity Framework Core with SQL Server and SQLite, supporting both Identity and non-Identity scenarios, and adds connection string helpers. Refactors plugin scanning for stricter null handling and type safety. Improves single instance mutex service with better null checks and resource cleanup. Adds a comprehensive test suite for plugins, mutex, and single instance logic, and updates build/test project configuration and props for test dependencies.
Updated HostBuilderReactiveUiExtensions in Maui, WinForms, WinUI, and Wpf projects to use BuildApp() instead of Build() when creating the ReactiveUI builder. This aligns with changes in the ReactiveUI builder API.
Introduces a new Test target in build/Build.cs that runs tests after compilation. Updates the GitHub Actions workflow to execute the Test target instead of just Compile, and makes Pack depend on Test to ensure tests run before packaging.
Adds build height to the version, sets NuGet package version to SemVer 2, enables setVersionVariables, and disables build number in cloud build configuration.
Updated the Test target to run tests on the whole solution instead of iterating over individual test projects. This streamlines the test process and reduces complexity.
Updated the GitHub Actions workflow to separate compile and test steps, adding coverage reporting for MTP mode. Modified the build schema and Build.cs to decouple the Pack target from Test, making Pack depend only on Compile. Enhanced test project configuration with global usings and set OutputType to Exe. Added testconfig.json to test output and disabled VSTest references in Directory.Build.props.
Removed the conditional check for 'performTests' and 'mode' in the BuildOnly workflow for the MTP test step. Updated testconfig.json to include 'Extensions.Hosting' modules instead of 'ReactiveUI' in the modulePaths include list.
Introduces an 'Upload coverage' step using actions/upload-artifact to store coverage reports from the test run. Also updates the working directory for the test step to 'src' for consistency.
Updates the build workflow to use the --solution flag with the dotnet test command for improved clarity and compatibility.
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.
Moved example projects to an 'examples' directory, replaced 'src/Extensions.Hosting.sln' with 'src/Extensions.Hosting.slnx', and added new configuration files.
The .editorconfig was reorganized for clarity and maintainability, and analyzer rules were grouped and commented.
Various project and source files were updated to reflect the new structure.
Moved the With*() calls after WithRegistration(r => r.InitializeSplat()) in the HostBuilderReactiveUiExtensions for Maui, WinForms, WinUI, and Wpf projects to ensure correct registration order.
Also updated Wpf to use BuildApp() in the service collection extension.
Introduces new extension methods for configuring Entity Framework Core with SQL Server and SQLite, supporting both Identity and non-Identity scenarios, and adds connection string helpers.
Refactors plugin scanning for stricter null handling and type safety.
Improves single instance mutex service with better null checks and resource cleanup.
Adds a comprehensive test suite for plugins, mutex, and single instance logic, and updates build/test project configuration and props for test dependencies.