Skip to content

Conversation

@smaillet
Copy link
Member

@smaillet smaillet commented Nov 6, 2025

Added multi targetting for source generation

  • This includes Ubiquity.NET.Extensions and Ubiquity.NET.SrcGeneration
  • Added SrcGeneration project to the docs
    • Apparently that was missed in previos commits somehow
    • This includes updates on how some things like lists are handled.
      • Guidance is now provided for help
  • Updated all toc.yml files to indicate correct use.
    • They were mostly copy/pasted and included the incorrect folder use as a result.
  • Exclude test projects from code coverage
    • Most this is a simple [assembly: ExcludeFromCodeCoverage]
    • However that attribute doesn't support assembly level use for down level and therefore MUST be applied to each test class/helper.etc... for multi-targetting test libraries.
  • Moved Fluent validation into a distinct namespace to support disambiguation of extensions when targetting down level runtimes
  • Added testing of Extensions and SrcGeneration for multi-targetting
  • Updated docfx tool version to 2.78.4 as that has support for C#14 language additions.
    • This allows generation of docs for code using the new extension keyword. Eliminationg one of the major blockers for not using that.

* This includes `Ubiquity.NET.Extensions` and `Ubiquity.NET.SrcGeneration`
* Added SrcGeneration project to the docs
    - Apparently that was missed in previos commits somehow
    - This includes updates on how some things like lists are handled.
        - Guidance is now provided for help
* Updated all `toc.yml` files to indicate correct use.
    - They were mostly copy/pasted and included the incorrect folder use as a result.
* Exclude test projects from code coverage
    - Most this is a simple `[assembly: ExcludeFromCodeCoverage]`
    - However that attribute doesn't support assembly level use for down level and therefore ***MUST*** be applied to each test class/helper.etc... for multi-targetting test libraries.
* Moved Fluent validation into a distinct namespace to support disambiguation of extensions when targetting down level runtimes
 * Added testing of Extensions and SrcGeneration for multi-targetting
* Updated docfx tool version to 2.78.4 as that has support for C#14 language additions.
    - This allows generation of docs for code using the new `extension` keyword. Eliminationg one of the major blockers for not using that.
@github-actions
Copy link

github-actions bot commented Nov 6, 2025

Test Results

 11 files  +  3   11 suites  +3   14s ⏱️ -3s
375 tests + 64  262 ✅ + 64  113 💤 ±0  0 ❌ ±0 
448 runs  +137  335 ✅ +137  113 💤 ±0  0 ❌ ±0 

Results for commit 33eeb87. ± Comparison against base commit c5b6cab.

This pull request removes 8 and adds 72 tests. Note that renamed tests count towards both.
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfNotDefined_does_not_throw_for_defined_value
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfNotDefined_throws_for_undefined_values
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfNull_does_not_throw_on_non_null_input
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfNull_reports_exception_whith_provided_expression
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfNull_throws_expected_exception_when_null
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfOutOfRange_does_not_throw_for_inrange_values
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfOutOfRange_throws_for_out_of_range_values
Ubiquity.NET.Extensions.UT.FluentValidationExtensionsTests ‑ ThrowIfOutOfRange_throws_with_custom_expression_for_out_of_range_values
Ubiquity.NET.Extensions.UT.AssemblyExtensionsTests ‑ GetInformationalVersion_succeeds
Ubiquity.NET.Extensions.UT.AssemblyExtensionsTests ‑ GetInformationalVersion_with_null_throws
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfNotDefined_does_not_throw_for_defined_value
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfNotDefined_throws_for_undefined_values
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfNull_does_not_throw_on_non_null_input
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfNull_reports_exception_whith_provided_expression
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfNull_throws_expected_exception_when_null
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfOutOfRange_does_not_throw_for_inrange_values
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfOutOfRange_throws_for_out_of_range_values
Ubiquity.NET.Extensions.UT.FluentValidation.ExceptionValidationExtensionsTests ‑ ThrowIfOutOfRange_throws_with_custom_expression_for_out_of_range_values
…

@smaillet smaillet merged commit d3ca6e4 into UbiquityDotNET:develop Nov 6, 2025
4 checks passed
@smaillet smaillet deleted the MultiTargetSourceGeneration branch November 6, 2025 21:17
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.

1 participant