Qowaiv 7.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Qowaiv --version 7.1.0                
NuGet\Install-Package Qowaiv -Version 7.1.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Qowaiv" Version="7.1.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Qowaiv --version 7.1.0                
#r "nuget: Qowaiv, 7.1.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Qowaiv as a Cake Addin
#addin nuget:?package=Qowaiv&version=7.1.0

// Install Qowaiv as a Cake Tool
#tool nuget:?package=Qowaiv&version=7.1.0                

Qowaiv

Domain-driven design bottom up

Qowaiv is a (Single) Value Object library. It aims to model reusable, immutable, (Single) Value Objects that can be used in a wide variety of modeling scenarios, both inside and outside a Domain-driven context.

Package

This package contains multiple Single Value Objects, including but not limited to:

  • Date (comparable to DateOnly, but also available for older .NET versions)
  • Percentage
  • EmailAddress
  • Generic ID
  • Generic SVO

Further reading

More info can be found at https://github.com/Qowaiv/Qowaiv.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (11)

Showing the top 5 NuGet packages that depend on Qowaiv:

Package Downloads
Qowaiv.Validation.DataAnnotations

Qowaiv Validation supports a generic interface for (domain) model validation.

Qowaiv.Validation.Fluent

Qowaiv Validation supports a generic interface for (domain) model validation.

Qowaiv.Validation.TestTools

Qowaiv Validation supports a generic interface for (domain) model validation.

Qowaiv.TestTools

Qowaiv is a (Single) Value Object library. It aims to model reusable (Single) Value Objects that can be used in a wide variety of modeling scenarios, both inside and outside a Domain-driven context.

Qowaiv.ComponentModel

Qowaiv implements common, universal domain objects. These types form the base of your domain model.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
7.2.1 507 12/19/2024
7.2.0 6,096 11/15/2024
7.1.3 4,977 10/28/2024
7.1.2 6,564 10/10/2024
7.1.1 599 10/9/2024
7.1.0 113 10/9/2024
7.0.5 4,795 9/25/2024
7.0.4 7,134 8/12/2024
7.0.3 830 8/10/2024
7.0.2 320 8/9/2024
7.0.1 5,542 7/2/2024
7.0.0 10,467 6/28/2024 7.0.0 is deprecated because it has critical bugs.
7.0.0-rc.1 82 6/27/2024 7.0.0-rc.1 is deprecated because it has critical bugs.
6.6.2 10,612 4/19/2024
6.6.1 18,362 1/29/2024
6.6.0 6,916 1/15/2024
6.5.4 7,162 11/8/2023
6.5.3 17,495 10/24/2023
6.5.2 474 10/23/2023
6.5.1 7,839 9/11/2023
6.5.0 769 8/30/2023
6.4.4 2,972 8/8/2023
6.4.3 5,123 7/31/2023
6.4.2 3,993 7/17/2023 6.4.2 is deprecated.
6.4.1 24,191 2/17/2023
6.4.0 14,383 1/13/2023
6.3.1 15,701 11/13/2022
6.3.0 8,669 10/11/2022
6.2.2 5,976 9/14/2022
6.2.1 1,834 8/30/2022
6.2.0 849 8/19/2022
6.1.2 13,074 6/15/2022
6.1.1 687 6/6/2022
6.1.0 757 5/31/2022
6.0.2 6,218 5/13/2022
6.0.1 18,289 2/14/2022
6.0.0 67,921 12/30/2021
6.0.0-r1 1,308 11/11/2021
5.1.5 1,459 12/22/2021
5.1.4 11,117 10/26/2021
5.1.3 414 10/19/2021
5.1.2 1,969 9/30/2021
5.1.1 30,674 4/9/2020
5.1.0 7,095 4/8/2020 5.1.0 is deprecated because it has critical bugs.
5.0.1 862 2/18/2020
5.0.0 2,311 12/11/2019
4.1.0 2,130 11/3/2019
4.0.6 4,544 10/2/2019
4.0.5 2,071 9/6/2019
4.0.4 787 9/4/2019
4.0.3 997 8/26/2019
4.0.2 1,717 7/28/2019
4.0.1 1,113 7/26/2019
4.0.0 5,211 7/9/2019
3.2.5 1,652 5/20/2019
3.2.4 1,248 4/5/2019
3.2.3 886 4/3/2019
3.2.1 6,527 10/12/2018
3.2.0 2,865 8/8/2018
3.1.3 5,022 4/17/2018
3.1.2 4,535 12/12/2017
3.1.1 2,059 11/21/2017
3.1.0 2,099 11/7/2017
3.0.0.223 1,708 11/30/2016
2.0.2.186 1,857 4/15/2016
2.0.2.185 1,430 4/14/2016
2.0.1.179 2,115 2/29/2016
2.0.0.164 1,744 12/4/2015
2.0.0.159 2,144 12/3/2015
2.0.0.150 2,972 11/30/2015
1.0.0.139 2,491 10/13/2015

v7.1.0
- Diagnostics contracts compiled internals.
- Wildcard patterns with trailing chars at the end. #417 (fix)
v7.0.5
- Extensions to calculate the sum and average for multiple percentges. #415
- Add ZeroIfNull() on INumberBase<TSelf>. #416
v7.0.4
- Percentage.TryParse should first change the scale, before checking the boundaries. (fix)
v7.0.3
- DecimalMath.ChangeScale() should have a value between [0.28]. #405 (fix)
v7.0.2
- Introduction of Year-Month. #295
- Email address parsing performance improvements.
- Add check for percentage.MaxValue and percentage.MinValue when creating a percentage. (fix)
- Use DecimalMath.Pow10() to convert decimal values to percentages.
- DateTimeOffset.ToLocal() wrongly converted DateTime before creation LocalDateTime. #404 (fix)
v7.0.1
- ISpanFormattable INumbers should be able to provide formatting (.NET 8.0 only). #393 (fix)
v7.0.0
- Drop support for .NET 5 and .NET 7 STS's. #359 (breaking)
- Drop email address collection. #382 (breaking)
- Drop Gender. #361  (breaking)
- Drop public static IsValid(string) methods. #361 (breaking)
- Align Parse and TryParse provider naming with IParsable. #360 (breaking)
- Seal all JSON converters. #361 (breaking)
- Move Qowaiv.Diagnostics.Contracs to a separate package. (breaking)
- Clock.Now returns DateTimeOffset. (breaking)
- Clock.NowWithOffset is dropped. (breaking)
- Implement IMinMaxValue<TSelf> for SVO's with a min and max value. #362 (breaking)
- Extension methods on DateTimeOffset.
- Implement INumber<Percentage>. #367
- Implement INumber<Amount>. #370
- Introduction of the IEmpty<TSelf> interface. #364
- Improve ToString of UUID's. #365
- Improve parsing of UUID's. #365
- Introduction of the IUnknown<TSelf> interface. #366
- Provide Clock as TimeProvider (.NET 8.0 only). #371
- Deserializing ID's from JSON numeric nodes takes constrains into account. #374
v6.6.2
- JSON-deserialization from decimal.MaxValue (as double) should not fail. #386 (fix)
v6.6.1
- Add missing IParsable interface for Id. #372
v6.6.0
- Add former countries. #357
- Update display names countries (EN, DE, NL). #356
- Fix parsing (former) countries. #356
- Add HumanReadable() and MachineReadable() methods to IBAN. #354
- Support IBAN prefix while parsing. #353
- Rewrite of IBAN parsing/validation. #351
- Added the Central African Republic, Russia, and Sudan's IBAN patterns. #349
- Increase regex time-out to 50 ms. #346
- Decorate bool Equals(object) with [NotNullWhen(true)]. #345
- TryApplyCustomFormatter should return false if the provider returns null. #341
- Add Amount.Min() and Amount.Max(). #342
- Extend API with overloads for DateOnly. #339
- Detailed information on failing parsing. #336
v6.5.4
- SVO's can be used as keys when applying JSON serialization. #334
v6.5.3
- ToCShaprString() supports nested types with generic type definitions. #333
v6.5.2
- ToCSharpString() supports nested types with generics. #332
v6.5.1
- Make JSON ID converters thread-safe. #330
v6.5.0
- Introduction of HasValue and IsKnown for non-continuous SVO's. #327
v6.4.4
- Introduction of EnergyLabel. #324
v6.4.3
- Analyzers should not be included in NuGet packages. #321 (fix)
V6.4.2
- Svo<SvoBehavior> and Id<IdBehavior> decorated with IEqualityOperators. #315
v6.4.1
- Clock.SetTimeForCurrentContext supports async. #304
- Fix issue with not closed comment in parsing email adresses. #298
- Decorate string arguments representing regexes with [StringSyntax(StringSyntaxAttribute.Regex)]. #301
- Decorate methods that always throw with [DoesNotReturn] attribute. #300
- Mark all static IsValid(string) methods obsolete. #297
v6.4.0
- Support .NET 7.0. #261
- Added DateSpan to a date (time) providing DateSpanSettings. #291
- Add IsIn(Year) and IsIn(Month) for date (time) types. #290
- Regular expressions are culture invariant. #285
- Extended operators on MonthSpan. #270
- Added static contracts. #269, #275
v6.3.1
- Extend allowed durations on regular expression. #263
v6.3.0
- JSON serialization via System.Text.Json no longer requires a custom converter. #259
v6.2.2
- Introduction of CasRegistryNumber. #258
v6.2.1
- Prevent implicit casting by introducing obsolete operator overloads. #257 (fix)
v6.2.0
-  Introduction of Svo<SvoBehavior> as a generic for string based SVO's. #248
v6.1.2
- Sums on empty collections should not throw. #251
v6.1.1
- Limit match durations on Regular Expressions. #246
v6.1.0
- All SVO's are read-only. #243
v6.0.2
- Extend Open API support for ID<T>. #239
v6.0.1
- Int64 based id serializes to a JSON string #236
- Percentage.MaxValue representable as a string #235
v6.0.0
- Added .NET 6.0 version to the package. #216
- Sex as replacement Gender (ISO 5218). #214
- YesNo converter support from and to boolean. #208
- Introduction of (string based) secret. #200
- Decorate nullable types. #228
- Cryptographic seed stripped from SVO contract. #215 (breaking)
- TryParse(string) returns nullable SVO. #206 (breaking)
- Drop cast from and to string. #212 (breaking)
- Drop obsolete code. #201 (breaking)
- Re-order extension methods. #209 (breaking)
- Non-predictable hash codes. #205 (breaking)
v5.1.5
- Percentage can not be initialized on environments lacking French or Iranian culture. #226
v5.1.4
- ConvertFrom(object) should not use fallback when TryCreate() fails. #194
v5.1.3
- ConvertFrom(object) should use Behavior.TryCreate(). #189
v5.1.2
- Extend Open API documentation with explicit example. #188