Releases: HarinezumiSama/Omnifactotum
Releases · HarinezumiSama/Omnifactotum
v0.4.0 (2021-05-25 UTC)
Omnifactotum v0.4.0 (2021-05-25 02:46:45 UTC]
https://www.nuget.org/packages/Omnifactotum/0.4.0
Changes in 0.4.0 (since 0.3.0.119)
Major Updates
Omnifactotum
is now the multi-target package for:- .NET Framework 4.0, 4.6.1, and 4.7.2
- .NET Standard 2.0 and 2.1
- .NET 5.0
- Addressed multi-target compatibility issues in:
ColoredConsoleTraceListener
OmnifactotumAssemblyExtensions
OmnifactotumCollectionExtensions
OmnifactotumDictionaryExtensions
OmnifactotumOperationContextExtensions
KeyValuePair
(static helper)- Omnifactotum's
ReadOnlyDictionary<TKey, TValue>
WinEventLog
- Added
OmnifactotumKeyValuePair
static helper for facilitating migration from .NET Framework to .NET Standard/Core
Breaking Changes
Factotum
: Removed the methodsToPropertyString
andAreEqualByContents
in favor of methodsToPropertyString
andIsEqualByContentsTo
inOmnifactotumGenericObjectExtensions
OmnifactotumArrayExtensions
: The methodAsReadOnly()
moved toOmnifactotumCollectionExtensions
OmnifactotumCustomAttributeProviderExtensions
: Removed the obsolete methodGetCustomAttributes
OmnifactotumGenericObjectExtensions
: Removed the methodsAffirm
andComputePredicate
OmnifactotumMathExtensions
: Removed the methodsSqr(decimal)
,SqrChecked(float)
,SqrChecked(double)
since their expected behavior cannot be achieved
New features
OmnifactotumCollectionExtensions
: AddedToUIString
implementation for collections of strings and collections of nullable value type instancesOmnifactotumGenericObjectExtensions
: ImplementedMorph()
overloads for nullable value types (to complement already existing method for the reference types)OmnifactotumNullableBooleanExtensions
: Added an overload ofToString
accepting value provider delegates- Added
ReadOnlyItemCollection<T>
(read-only wrapper forICollection<T>
) - Added partial support of Nullable Reference Types:
OmnifactotumGenericObjectExtensions.EnsureNotNull
- Exposed the class
OmnifactotumRepresentationConstants
(formerlyOmnifactotumConstants
) - Applied
PureAttribute
,InstantHandleAttribute
, andNoEnumerationAttribute
annotations in certain appropriate cases
Fixes and improvements
- Improved documentation
KeyedEqualityComparer<T, TKey>
:IEqualityComparer.Equals
andIEqualityComparer.GetHashCode
now don't throw an exception f an argument is not compatible with the typeT
OmnifactotumAssemblyExtensions
OmnifactotumCollectionHashCodeHelper
(as per the fix inOmnifactotumHashCodeHelper
)OmnifactotumDateTimeOffsetExtensions
OmnifactotumEnumExtensions
:GetName
,GetQualifiedName
,GetFullName
,EnsureDefined
, andIsDefined
OmnifactotumGenericObjectExtensions
:ToUIString()
now uses the invariant culture if the value isIFormattable
- Fix in
IsEqualByContentsTo()
for the case of a type with no fields
OmnifactotumHashCodeHelper
: Fix in CombineHashCodeValues (for case when the next hash code is zero)OmnifactotumMethodBaseExtensions
OmnifactotumTypeExtensions
- Updated JetBrains Annotations in
Omnifactotum.Annotations