Skip to content

Commit fd02856

Browse files
authored
Merge pull request #54 from kolan72/main
Update dev from main.
2 parents f4aa767 + 2a1c189 commit fd02856

7 files changed

Lines changed: 87 additions & 64 deletions

File tree

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
## 0.9.0
2+
3+
- Added quick validation support via `QuickValidator` and its `Validate<T>` overloads.
4+
- Improve performance by applying options in `ExpressValidator<TObj, TOptions>` during the `ExpressValidatorBuilder<TObj, TOptions>.Build` call instead of at validation time.
5+
- Introduce the `Unit` readonly struct.
6+
- Add 'Nuances Of Using The Library' README Chapter.
7+
- Add 'Nuances Of Using The Library' NuGet README Chapter.
8+
- Add 'Quick Validation' README Chapter.
9+
- Add 'Quick Validation' NuGet README Chapter.
10+
11+
112
## 0.5.0
213

314
- Introduced the `IExpressValidatorBuilder<TObj, TOptions>.BuildAndValidate<TObj, TOptions>(TObj, TOptions)` extension method.

src/ExpressValidator.Extensions.DependencyInjection/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
## 0.3.7
2+
3+
- Update ExpressValidator nuget package.
4+
- Split the DI extensions into a dedicated solution.
5+
- Update Microsoft nuget packages.
6+
- Update Microsoft NuGet packages for ExpressValidator.Extensions.DependencyInjection.Tests.
7+
8+
19
## 0.3.5
210

311
- Reduced unnecessary updates to validator parameters by listening to `IOptionsMonitor.Change` with named validation options.

src/ExpressValidator.Extensions.DependencyInjection/ExpressValidator.Extensions.DependencyInjection.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<TargetFramework>netstandard2.0</TargetFramework>
55
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
6-
<Version>0.3.5</Version>
6+
<Version>0.3.7</Version>
77
<GenerateDocumentationFile>true</GenerateDocumentationFile>
88
<Authors>Andrey Kolesnichenko</Authors>
99
<PackageLicenseExpression>MIT</PackageLicenseExpression>
@@ -15,7 +15,7 @@
1515
<PackageTags>FluentValidation Validation DependencyInjection</PackageTags>
1616
<Description>The ExpressValidator.Extensions.DependencyInjection package extends ExpressValidator to provide integration with Microsoft Dependency Injection.</Description>
1717
<Copyright>Copyright 2024 Andrey Kolesnichenko</Copyright>
18-
<AssemblyVersion>0.3.5.0</AssemblyVersion>
18+
<AssemblyVersion>0.3.7.0</AssemblyVersion>
1919
</PropertyGroup>
2020

2121
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
@@ -31,9 +31,9 @@
3131
</ItemGroup>
3232

3333
<ItemGroup>
34-
<PackageReference Include="ExpressValidator" Version="0.5.0" />
35-
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.4" />
36-
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="9.0.4" />
34+
<PackageReference Include="ExpressValidator" Version="0.9.0" />
35+
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.6" />
36+
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="9.0.6" />
3737
</ItemGroup>
3838

3939
<ItemGroup>

src/ExpressValidator/ExpressValidator.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<TargetFramework>netstandard2.0</TargetFramework>
55
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
6-
<Version>0.5.0</Version>
6+
<Version>0.9.0</Version>
77
<GenerateDocumentationFile>true</GenerateDocumentationFile>
88
<Authors>Andrey Kolesnichenko</Authors>
99
<Description>ExpressValidator is a library that provides the ability to validate objects using the FluentValidation library, but without object inheritance from `AbstractValidator`.</Description>
@@ -15,7 +15,7 @@
1515
<PackageIcon>ExpressValidator.png</PackageIcon>
1616
<PackageReadmeFile>NuGet.md</PackageReadmeFile>
1717
<PackageIconUrl />
18-
<AssemblyVersion>0.5.0.0</AssemblyVersion>
18+
<AssemblyVersion>0.9.0.0</AssemblyVersion>
1919
<FileVersion>0.0.0.0</FileVersion>
2020
</PropertyGroup>
2121

tests/ExpressValidator.Extensions.DependencyInjection.Tests/ExpressValidator.Extensions.DependencyInjection.Tests.csproj

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -39,56 +39,56 @@
3939
<WarningLevel>4</WarningLevel>
4040
</PropertyGroup>
4141
<ItemGroup>
42-
<Reference Include="ExpressValidator, Version=0.5.0.0, Culture=neutral, processorArchitecture=MSIL">
43-
<HintPath>..\..\packages\ExpressValidator.0.5.0\lib\netstandard2.0\ExpressValidator.dll</HintPath>
42+
<Reference Include="ExpressValidator, Version=0.9.0.0, Culture=neutral, processorArchitecture=MSIL">
43+
<HintPath>..\..\packages\ExpressValidator.0.9.0\lib\netstandard2.0\ExpressValidator.dll</HintPath>
4444
</Reference>
4545
<Reference Include="FluentValidation, Version=11.0.0.0, Culture=neutral, PublicKeyToken=7de548da2fbae0f0, processorArchitecture=MSIL">
4646
<HintPath>..\..\packages\FluentValidation.11.11.0\lib\netstandard2.0\FluentValidation.dll</HintPath>
4747
</Reference>
48-
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.4, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
49-
<HintPath>..\..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.4\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
48+
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
49+
<HintPath>..\..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.6\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
5050
</Reference>
51-
<Reference Include="Microsoft.Extensions.Configuration, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
52-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.9.0.4\lib\net462\Microsoft.Extensions.Configuration.dll</HintPath>
51+
<Reference Include="Microsoft.Extensions.Configuration, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
52+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.9.0.6\lib\net462\Microsoft.Extensions.Configuration.dll</HintPath>
5353
</Reference>
54-
<Reference Include="Microsoft.Extensions.Configuration.Abstractions, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
55-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Abstractions.9.0.4\lib\net462\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
54+
<Reference Include="Microsoft.Extensions.Configuration.Abstractions, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
55+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Abstractions.9.0.6\lib\net462\Microsoft.Extensions.Configuration.Abstractions.dll</HintPath>
5656
</Reference>
57-
<Reference Include="Microsoft.Extensions.Configuration.Binder, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
58-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Binder.9.0.4\lib\net462\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
57+
<Reference Include="Microsoft.Extensions.Configuration.Binder, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
58+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Binder.9.0.6\lib\net462\Microsoft.Extensions.Configuration.Binder.dll</HintPath>
5959
</Reference>
60-
<Reference Include="Microsoft.Extensions.Configuration.EnvironmentVariables, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
61-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.EnvironmentVariables.9.0.4\lib\net462\Microsoft.Extensions.Configuration.EnvironmentVariables.dll</HintPath>
60+
<Reference Include="Microsoft.Extensions.Configuration.EnvironmentVariables, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
61+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.EnvironmentVariables.9.0.6\lib\net462\Microsoft.Extensions.Configuration.EnvironmentVariables.dll</HintPath>
6262
</Reference>
63-
<Reference Include="Microsoft.Extensions.Configuration.FileExtensions, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
64-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.FileExtensions.9.0.4\lib\net462\Microsoft.Extensions.Configuration.FileExtensions.dll</HintPath>
63+
<Reference Include="Microsoft.Extensions.Configuration.FileExtensions, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
64+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.FileExtensions.9.0.6\lib\net462\Microsoft.Extensions.Configuration.FileExtensions.dll</HintPath>
6565
</Reference>
66-
<Reference Include="Microsoft.Extensions.Configuration.Json, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
67-
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Json.9.0.4\lib\net462\Microsoft.Extensions.Configuration.Json.dll</HintPath>
66+
<Reference Include="Microsoft.Extensions.Configuration.Json, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
67+
<HintPath>..\..\packages\Microsoft.Extensions.Configuration.Json.9.0.6\lib\net462\Microsoft.Extensions.Configuration.Json.dll</HintPath>
6868
</Reference>
69-
<Reference Include="Microsoft.Extensions.DependencyInjection, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
70-
<HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.9.0.4\lib\net462\Microsoft.Extensions.DependencyInjection.dll</HintPath>
69+
<Reference Include="Microsoft.Extensions.DependencyInjection, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
70+
<HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.9.0.6\lib\net462\Microsoft.Extensions.DependencyInjection.dll</HintPath>
7171
</Reference>
72-
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
73-
<HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.9.0.4\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
72+
<Reference Include="Microsoft.Extensions.DependencyInjection.Abstractions, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
73+
<HintPath>..\..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.9.0.6\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll</HintPath>
7474
</Reference>
75-
<Reference Include="Microsoft.Extensions.FileProviders.Abstractions, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
76-
<HintPath>..\..\packages\Microsoft.Extensions.FileProviders.Abstractions.9.0.4\lib\net462\Microsoft.Extensions.FileProviders.Abstractions.dll</HintPath>
75+
<Reference Include="Microsoft.Extensions.FileProviders.Abstractions, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
76+
<HintPath>..\..\packages\Microsoft.Extensions.FileProviders.Abstractions.9.0.6\lib\net462\Microsoft.Extensions.FileProviders.Abstractions.dll</HintPath>
7777
</Reference>
78-
<Reference Include="Microsoft.Extensions.FileProviders.Physical, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
79-
<HintPath>..\..\packages\Microsoft.Extensions.FileProviders.Physical.9.0.4\lib\net462\Microsoft.Extensions.FileProviders.Physical.dll</HintPath>
78+
<Reference Include="Microsoft.Extensions.FileProviders.Physical, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
79+
<HintPath>..\..\packages\Microsoft.Extensions.FileProviders.Physical.9.0.6\lib\net462\Microsoft.Extensions.FileProviders.Physical.dll</HintPath>
8080
</Reference>
81-
<Reference Include="Microsoft.Extensions.FileSystemGlobbing, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
82-
<HintPath>..\..\packages\Microsoft.Extensions.FileSystemGlobbing.9.0.4\lib\net462\Microsoft.Extensions.FileSystemGlobbing.dll</HintPath>
81+
<Reference Include="Microsoft.Extensions.FileSystemGlobbing, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
82+
<HintPath>..\..\packages\Microsoft.Extensions.FileSystemGlobbing.9.0.6\lib\net462\Microsoft.Extensions.FileSystemGlobbing.dll</HintPath>
8383
</Reference>
84-
<Reference Include="Microsoft.Extensions.Options, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
85-
<HintPath>..\..\packages\Microsoft.Extensions.Options.9.0.4\lib\net462\Microsoft.Extensions.Options.dll</HintPath>
84+
<Reference Include="Microsoft.Extensions.Options, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
85+
<HintPath>..\..\packages\Microsoft.Extensions.Options.9.0.6\lib\net462\Microsoft.Extensions.Options.dll</HintPath>
8686
</Reference>
87-
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
88-
<HintPath>..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.9.0.4\lib\net462\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
87+
<Reference Include="Microsoft.Extensions.Options.ConfigurationExtensions, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
88+
<HintPath>..\..\packages\Microsoft.Extensions.Options.ConfigurationExtensions.9.0.6\lib\net462\Microsoft.Extensions.Options.ConfigurationExtensions.dll</HintPath>
8989
</Reference>
90-
<Reference Include="Microsoft.Extensions.Primitives, Version=9.0.0.4, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
91-
<HintPath>..\..\packages\Microsoft.Extensions.Primitives.9.0.4\lib\net462\Microsoft.Extensions.Primitives.dll</HintPath>
90+
<Reference Include="Microsoft.Extensions.Primitives, Version=9.0.0.6, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
91+
<HintPath>..\..\packages\Microsoft.Extensions.Primitives.9.0.6\lib\net462\Microsoft.Extensions.Primitives.dll</HintPath>
9292
</Reference>
9393
<Reference Include="nunit.framework, Version=4.3.2.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
9494
<HintPath>..\..\packages\NUnit.4.3.2\lib\net462\nunit.framework.dll</HintPath>
@@ -102,8 +102,8 @@
102102
</Reference>
103103
<Reference Include="System.ComponentModel.DataAnnotations" />
104104
<Reference Include="System.Core" />
105-
<Reference Include="System.IO.Pipelines, Version=9.0.0.4, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
106-
<HintPath>..\..\packages\System.IO.Pipelines.9.0.4\lib\net462\System.IO.Pipelines.dll</HintPath>
105+
<Reference Include="System.IO.Pipelines, Version=9.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
106+
<HintPath>..\..\packages\System.IO.Pipelines.9.0.6\lib\net462\System.IO.Pipelines.dll</HintPath>
107107
</Reference>
108108
<Reference Include="System.Memory, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
109109
<HintPath>..\..\packages\System.Memory.4.6.3\lib\net462\System.Memory.dll</HintPath>
@@ -115,11 +115,11 @@
115115
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
116116
<HintPath>..\..\packages\System.Runtime.CompilerServices.Unsafe.6.1.2\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
117117
</Reference>
118-
<Reference Include="System.Text.Encodings.Web, Version=9.0.0.4, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
119-
<HintPath>..\..\packages\System.Text.Encodings.Web.9.0.4\lib\net462\System.Text.Encodings.Web.dll</HintPath>
118+
<Reference Include="System.Text.Encodings.Web, Version=9.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
119+
<HintPath>..\..\packages\System.Text.Encodings.Web.9.0.6\lib\net462\System.Text.Encodings.Web.dll</HintPath>
120120
</Reference>
121-
<Reference Include="System.Text.Json, Version=9.0.0.4, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
122-
<HintPath>..\..\packages\System.Text.Json.9.0.4\lib\net462\System.Text.Json.dll</HintPath>
121+
<Reference Include="System.Text.Json, Version=9.0.0.6, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
122+
<HintPath>..\..\packages\System.Text.Json.9.0.6\lib\net462\System.Text.Json.dll</HintPath>
123123
</Reference>
124124
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
125125
<HintPath>..\..\packages\System.Threading.Tasks.Extensions.4.6.3\lib\net462\System.Threading.Tasks.Extensions.dll</HintPath>

tests/ExpressValidator.Extensions.DependencyInjection.Tests/app.config

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@
2626
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
2727
<bindingRedirect oldVersion="0.0.0.0-4.1.6.0" newVersion="4.1.6.0" />
2828
</dependentAssembly>
29+
<dependentAssembly>
30+
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
31+
<bindingRedirect oldVersion="0.0.0.0-9.0.0.5" newVersion="9.0.0.5" />
32+
</dependentAssembly>
2933
</assemblyBinding>
3034
</runtime>
3135
</configuration>

0 commit comments

Comments
 (0)