Skip to content

Releases: TimeWarpEngineering/timewarp-options-validation

v1.0.0-beta.4

06 Dec 10:11
fa7f887

Choose a tag to compare

v1.0.0-beta.4 Pre-release
Pre-release

What's Changed

AOT and Trim Compatibility (Issue #7)

  • Add [DynamicallyAccessedMembers] attributes to eliminate IL2104/IL3053 warnings
  • Add [RequiresUnreferencedCode] and [RequiresDynamicCode] attributes for transparent AOT support on configuration-binding overload
  • Mark assembly as AOT-compatible (IsAotCompatible) and trimmable (IsTrimmable)
  • Remove AOT warning suppressions from Directory.Build.props

Notes

The AddFluentValidatedOptions<TOptions, TValidator>(IConfiguration) overload that uses configuration binding has inherent AOT limitations due to Microsoft's Bind<T>() using reflection. The attributes transparently communicate this to consumers.

For full AOT support, consumers can:

  1. Use EnableConfigurationBindingGenerator in their projects
  2. Use the AddFluentValidatedOptions<TOptions, TValidator>(Action<TOptions>) overload which is fully AOT-compatible

Full Changelog: v1.0.0-beta.3...v1.0.0-beta.4

v1.0.0-beta.3

25 Oct 14:30
89cf5dd

Choose a tag to compare

Breaking Changes

  • Renamed SectionNameAttribute to ConfigurationKeyAttribute to better align with Microsoft.Extensions.Configuration naming conventions
  • Migrated to .NET 10
  • All files and directories now follow kebab-case naming convention (enforced by TWA001 analyzer)

Features

  • Added fluent API for options validation configuration
  • Modernized library structure following Nuru pattern
  • Added TimeWarp.Build.Tasks and TimeWarp.SourceGenerators for enhanced build-time tooling

Improvements

  • Replaced FluentAssertions with Shouldly for cleaner test assertions
  • Updated to fixie 4.1.0 and TimeWarp.Fixie 3.1.0
  • Simplified NuGet.config
  • Restructured Directory.Build.props with proper separation (package settings in source/Directory.Build.props)
  • Converted to .slnx solution format
  • Updated CI/CD workflows for kebab-case directories

Package Information

  • Package: TimeWarp.OptionsValidation
  • Version: 1.0.0-beta.3
  • License: Unlicense