Releases: micro-elements/MicroElements.Swashbuckle.FluentValidation
Releases · micro-elements/MicroElements.Swashbuckle.FluentValidation
v7.0.4-beta.3
Changes in 7.0.4-beta.3
- Removed: Deprecated
FluentValidation.AspNetCorepackage reference from test project (Issue #164)- Replaced with
FluentValidation.DependencyInjectionExtensions12.0.0, the official non-deprecated successor - Aligns test project with sample projects that already use
FluentValidation.DependencyInjectionExtensions
- Replaced with
v7.0.4-beta.2
Support for Keyed DI Services (Issue #165)
Validators registered via keyed DI services (.NET 8+) are now discovered automatically:
services.AddKeyedScoped<IValidator<MyModel>, MyModelValidator>("myKey");What's new
- Validators registered via
AddKeyedScoped,AddKeyedTransient,AddKeyedSingletonare now discovered automatically - Works with both
GetValidator(OperationFilter/DocumentFilter) andGetValidators(SchemaFilter) paths - Registration order independent — keyed validators registered before or after
AddFluentValidationRulesToSwagger()are discovered - Deduplication: same validator registered as both keyed and non-keyed is returned only once
- Graceful fallback: no impact when keyed services are not used or DI container doesn't support
IKeyedServiceProvider
Full Changelog: v7.0.4-beta.1...v7.0.4-beta.2
v7.0.4-beta.1
Changes in 7.0.4-beta.1
- Fixed:
[AsParameters]types in minimal API and[FromQuery]container types create unused schemas incomponents/schemas(Issue #180)GetSchemaForType()registers schemas inSchemaRepositoryas a side-effect ofGenerateSchema()- Added check-and-cleanup: snapshot existing schema IDs before processing, remove side-effect schemas after applying validation rules to parameters
- Fix applied to both default path (
FluentValidationOperationFilter) and experimental path (FluentValidationDocumentFilter)
Install from MyGet
# Add MyGet feed (if not already added)
dotnet nuget add source https://www.myget.org/F/micro-elements/api/v3/index.json -n micro-elements
# Install pre-release package
dotnet add package MicroElements.Swashbuckle.FluentValidation --version 7.0.4-beta.1Packages published
MicroElements.Swashbuckle.FluentValidation7.0.4-beta.1MicroElements.OpenApi.FluentValidation7.0.4-beta.1MicroElements.NSwag.FluentValidation7.0.4-beta.1
7.0.3
7.0.2
7.0.1
v.7.0.0
Changes in 7.0.0
New Features
- Add .NET 10 target framework support
- Add Swashbuckle.AspNetCore v10 compatibility
- Add Microsoft.OpenApi 2.x support via conditional compilation
- Create
OpenApiSchemaCompatibilitylayer for cross-version support
Compatibility Matrix
| Version | .NET | Swashbuckle | Microsoft.OpenApi |
|---|---|---|---|
| 7.x | net10.0 | 10.x | 2.x |
| 7.x | net8.0/net9.0 | 8.x | 1.x |
v.6.1.1
Changes in 6.1.1
- Fixed test project compilation errors that prevented building with
.NET 9.0 SDK - Added missing package references (FluentValidation.AspNetCore,
Swashbuckle.AspNetCore.Annotations) - Removed orphaned #endif directive in SwaggerTestHost.cs
- Added null check for ISchemaGenerator to prevent
NullReferenceException
6.1.0
Changes in 6.1.0
- Added support for .NET 8 and .NET 9 to MicroElements.Swashbuckle.FluentValidation.AspNetCore
- Dropped support for .NET 6.0
- Updated NJsonSchema to version 10.6.10
What's Changed
- Fix GetValidators for type 'System.Void' failed by @silveriomirandabee4 in #141
- Bump Swashbuckle.AspNetCore.SwaggerUI from 6.3.0 to 6.4.0 in /samples/SampleWebApi by @dependabot in #120
- feature/net9 by @jrgcubano in #151
New Contributors
- @silveriomirandabee4 made their first contribution in #141
- @dependabot made their first contribution in #120
- @jrgcubano made their first contribution in #151
Full Changelog: v.6.0.0...v.6.1.0
6.0.0
Changes in 6.0.0
- see changelog for betas
Changes in 6.0.0 - beta.3:
- Added:
IFluentValidationRuleProvidercan be replaced with DI - Added:
ISchemaGenerationOptions.ValidatorSearchIsOneValidatorForType: bool; Valuetrue: Gets only one validator (default),false: Gets all suitable validators (new)SearchBaseTypeValidators: allows to search base type validators
- Fixed: Stack Overflow Exception when using recursive validator type (PR#122 by @rachelpetitto)
- Deleted:
FluentValidationRulesRegistrator - Deleted:
SwaggerGenOptionsfrom filters - Many minor code cleanups
Changes in 6.0.0 - beta.2:
- Codebase unified with NSwag
- Added: MicroElements.NSwag.FluentValidation package. Early version
- Change:
INameResolverremoved from FluentValidationRules ctor. Set it fromSchemaGenerationOptions - Change:
ISchemaGenerationSettingsmerged toISchemaGenerationOptions - Change:
IValidatorRegistryand it's implementations moved to MicroElements.OpenApi.FluentValidation namespace and package - Change:
IValidatorRegistrycan return more than one validator with methodGetValidators - Added:
ValidatorSearchstrategy OneForType, ManyForType - Added:
ISchemaGenerationOptions.ValidatorFilter,ISchemaGenerationOptions.RuleFilter,ISchemaGenerationOptions.RuleComponentFilter- Default Rule and RuleComponent filters checks that rule or component has no conditions.
- Default ValidatorFilter checks that validator CanValidateInstancesOfType
- Change:
UseAllOfForMultipleRulestypo fix
Changes in 6.0.0 - beta.1:
- Abstracted common logic for NSwag
- Moved from
IValidationFactory(obsolete in FV 11.1.0) toIValidationRegistry - Supported FluentValidation 11
AddFluentValidationAutoValidation - Removed
HttpContextServiceProviderValidatorFactory - Experimental
DocumentFilter