Omnifactotum: the .NET library intended to help .NET developers avoid writing the same helper types, methods and extension methods for different projects.

Install-Package Omnifactotum -Version
dotnet add package Omnifactotum --version

Release Notes

--- Changes in (since ---
* Omnifactotum: Removed NuGet dependency to MSBuildTasks package since it is only used for development
--- Changes in (since ---
* Omnifactotum: Factotum and Factotum.For{TObject}: Improved annotations
--- Changes in (since ---
* OmnifactotumAssemblyExtensions: Improvements
* BREAKING CHANGE: OmnifactotumDisposableExtensions: DisposeSafely now works only for reference and nullable types (2 overloads)
* BREAKING CHANGE: OmnifactotumCollectionExtensions: DisposeCollectionItemsSafely now works only for reference and nullable types (2 overloads)
* BREAKING CHANGE: Factotum: DisposeAndNull now works also for nullable types (besides reference types)
* Introduced the AsyncFactotum class with the overloaded methods ComputeAsync and ExecuteAsync
* Fix in MemberConstraintBase.CastTo{T} (and hence in TypedMemberConstraintBase) for nullable types
* Improved annotations in Object Validator and related classes
* Minor improvements
--- Changes in (since ---
* KeyedEqualityComparer{T,TKey}: Fixes and improvements
* KeyedEqualityComparer static helper class has been introduced
* Factotum: CreateEmptyCompletedTask and CreateEmptyFaultedTask methods have been introduced
* OmnifactotumGenericObjectExtensions: EnsureNotNull (for nullable) has been introduced
* IValueContainer{T} has been introduced for ValueContainer{T} and SyncValueContainer{T}
* ValueContainer and SyncValueContainer helper static classes have been introduced
* Improvements and fixes in OmnifactotumMethodBaseExtensions and OmnifactotumTypeExtensions
* OmnifactotumStringExtensions: TrimSafely, TrimStartSafely, TrimEndSafely and Shorten methods now never return null
--- Changes in (since ---
* [BREAKING CHANGE] OmnifactotumCustomAttributeProviderExtensions: GetCustomAttributes has been renamed to GetCustomAttributeArray (for compatibility with FW 4.5+)
--- Changes in (since ---
* [BREAKING CHANGE] OmnifactotumDictionaryExtensions: The method GetValueOrCreate has been renamed to GetOrCreateValue for readablity and in order to avoid confusion with GetValueOrDefault
* OmnifactotumDictionaryExtensions: Improved annotations
* ValueContainer and SyncValueContainer:
   [1] Support for equality comparison
   [2] Added DebuggerDisplay attribute and ToString() method
* OmnifactotumMathExtensions class has been introduced:
   [1] Sqr (square)
   [2] Sqrt (square root)
   [3] Abs (absolute value)
--- Changes in (since ---
* FixedSizeDictionary: Improved annotations
* FixedSizeDictionary: Implemented version verification in the enumerator
--- Changes in (since ---
* FixedSizeDictionary: Removed index verification in the internal determinant since this verification highly affected performance
--- Changes in (since ---
* EnumFixedSizeDictionary: Fix in determining the size
--- Changes in (since ---
* FixedSizeDictionary and EnumFixedSizeDictionary have been introduced.
* Applied Omnifactotum Annotations to the Factotum and OmnifactotumGenericObjectExtensions classes.
--- Changes in (since ---
* [BREAKING CHANGE] Object Validation: Redesign and support of IEnumerable.
* [BREAKING CHANGE] Renamed EnumHelper to EnumFactotum.
* [BREAKING CHANGE] OmnifactotumExpressionExtensions is now in the namespace System.Linq.Expressions (instead of System).


This package has no dependencies.

Version History

Version Downloads Last updated (current version) 415 7/7/2015 118 7/7/2015 138 3/23/2015 155 12/10/2014 140 10/19/2014 141 8/4/2014 139 6/24/2014 139 6/4/2014 136 6/3/2014 135 6/3/2014 136 5/16/2014 143 4/1/2014 129 3/31/2014 129 3/29/2014 129 3/28/2014