Cuemon.Core 5.0.2018.256

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Cuemon.Core --version 5.0.2018.256
NuGet\Install-Package Cuemon.Core -Version 5.0.2018.256
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="Cuemon.Core" Version="5.0.2018.256" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cuemon.Core --version 5.0.2018.256
#r "nuget: Cuemon.Core, 5.0.2018.256"
#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 Cuemon.Core as a Cake Addin
#addin nuget:?package=Cuemon.Core&version=5.0.2018.256

// Install Cuemon.Core as a Cake Tool
#tool nuget:?package=Cuemon.Core&version=5.0.2018.256

The Cuemon.Core assembly is the patriarch of the Cuemon .NET Standard family and provides fundamental-, utility- and base-classes that define commonly-used value and reference data types, events and event handlers, interfaces, attribute, and feature rich delegates to greatly support functional programming.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  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 was computed.  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 netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.4 is compatible.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 was computed.  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 tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 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 (25)

Showing the top 5 NuGet packages that depend on Cuemon.Core:

Package Downloads
Cuemon.IO The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

The Cuemon.IO namespace contains types primarily focusing on configuration options for IO related operations. The namespace is an addition to the System.IO namespace.

Cuemon.Threading The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

The Cuemon.Threading namespace contains types related to working with long-running concurrent loops and regions that utilizes both synchronous and asynchronous delegates. The namespace is an addition to the System.Threading namespace.

Cuemon.AspNetCore The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

The Cuemon.AspNetCore namespace contains types focusing on providing means for easier plumber coding in the ASP.NET Core pipeline while serving some nice of the shell concrete implementation as well. The namespace is an addition to the Microsoft.AspNetCore namespace.

Cuemon.Diagnostics The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

The Cuemon.Diagnostics namespace contains types that provide ways for developers to describe exceptions including evidence to why an operation faulted. Also includes a flexible, generic and lambda friendly way to perform both synchronous and asynchronous time measuring operations. The namespace is an addition to the System.Diagnostics namespace.

Cuemon.Security.Cryptography The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

The Cuemon.Security.Cryptography namespace contains types related to cryptographic hashing (both keyed and non-keyed) and a ready-to-use implementation of the Advanced Encryption Standard (AES) symmetric algorithm. The namespace is an addition to the System.Security.Cryptography namespace.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.2.0 2,598 3/3/2024
8.1.0 3,965 2/10/2024
8.1.0-rc1 2,466 2/8/2024
8.1.0-preview.52 132 2/5/2024
8.1.0-preview.20 339 1/22/2024
8.1.0-preview 3,573 1/16/2024
8.0.1 4,685 1/11/2024
8.0.0 8,037 11/14/2023
8.0.0-rc2 4,282 11/13/2023
8.0.0-rc1 4,478 11/7/2023
8.0.0-preview.183 122 11/13/2023
8.0.0-preview.176 100 11/12/2023
8.0.0-preview.158 47 11/9/2023
7.1.0 20,321 12/11/2022
7.0.0 21,653 11/9/2022
7.0.0-rc.2 109 11/3/2022
7.0.0-rc.1 107 10/26/2022
7.0.0-alpha.2 124 10/16/2022
7.0.0-alpha.1 212 9/23/2022
7.0.0-alpha 8,589 7/12/2022
6.4.1 29,380 5/8/2022
6.4.0 23,247 1/24/2022
6.4.0-rc 8,678 1/23/2022
6.3.0 14,038 11/28/2021
6.2.0 24,703 5/30/2021
6.1.0 13,191 5/16/2021
6.0.1 13,507 5/3/2021
6.0.1-rc 9,339 5/3/2021
6.0.0 15,250 4/18/2021
6.0.0-rc.23 164 4/18/2021
6.0.0-rc.21 130 4/12/2021
6.0.0-rc.20 157 4/1/2021
6.0.0-rc.18 247 3/22/2021
6.0.0-rc.17 142 3/14/2021
6.0.0-rc.16 183 3/7/2021
6.0.0-rc.15 166 3/4/2021
6.0.0-rc.14 181 3/4/2021
6.0.0-rc.12 191 3/3/2021
6.0.0-rc.6 170 2/28/2021
6.0.0-rc.2 186 2/28/2021
5.0.2019.40 12,048 2/10/2019
5.0.2019.30 3,165 1/28/2019
5.0.2019.20 1,837 1/20/2019
5.0.2018.310 4,763 11/6/2018
5.0.2018.256 1,978 10/29/2018
5.0.2018.253 4,158 9/18/2018
5.0.2018.251 7,379 9/10/2018
5.0.2018.250 5,983 9/9/2018
4.3.2018.2200 6,563 8/8/2018
4.3.2018.2070 5,783 7/27/2018
4.2.2018.840 7,443 2/9/2018

5.0.2018.256
* ADDED - New extensions for ICollection{T}: AddRange
* ADDED - New extensions for IList{T}: Remove

5.0.2018.253
* ADDED - EncodingConverter class in the Cuemon.Text namespace that is designed to make Encoding conversions easier to work with
* ADDED - New extensions for Encoding: ToEncodedString
* ADDED - FallbackEncodingOptions class in the Cuemon.Text namespace that specifies options that is related to Encoding operations

5.0.2018.251
* FIXED - The extension method for IEnumerable{T}: Shuffle{T} was fixed so it no longer skips one item

5.0.2018.250
* PRELUDE - This is a major release with breaking changes through out the assembly family
* CHANGED - Refactored and moved ExceptionDescriptor class from Cuemon namespace to Cuemon.Diagnostics
* CHANGED - Refactored and moved ExceptionDescriptorAttribute class from Cuemon namespace to Cuemon.Diagnostics
* ADDED - IMessageLocalizer interface in the Cuemon.Globalization namespace that provides a generic way to support localized messages on attribute decorated methods
* ADDED - Support for localization of fault messages on ExceptionDescriptorAttribute class
* ADDED - ExceptionDescriptorOptions class in the Cuemon.Diagnostics namespace that specifies options that is related to ExceptionDescriptor
* CHANGED - Wrapper class in the Cuemon namespace received a simplified constructor
* ADDED - New extensions for {T}: UseWrapper (Wrap and extend an existing object of {T} with additional data)
* ADDED - Two new validation methods on Validator class in the Cuemon namespace; ThrowIfDistinctDifference and ThrowIfNotDistinctDifference
* CHANGED - ContainsInterface on the TypeUtility class in the Cuemon namespace to include self (should self be an interface)
* ADDED - IConfigurable interface in the Cuemon.Configuration namespace that provides a generic way to support the options pattern on a class level
* ADDED - Configurable abstract class in the Cuemon.Configuration namespace that provides a generic base class to support the options pattern on a class level
* FIXED - TryParse on EncodingUtility class in the Cuemon.Text namespace no longer throws exception when byte array is less than fourn in length
* ADDED - ICorrelation interface in the Cuemon.Messaging namespace that provides a Correlation ID (also known as a Request ID) that is a unique identifier which is attached to requests and messages that allow reference to a particular transaction or event chain
* ADDED - DynamicCorrelation class in the Cuemon.Messaging namespace that provides a factory based way to create and wrap an ICorrelation implementation
* ADDED - ChecksumResult class in the Cuemon.Integrity namespace that represents the result of a computed checksum operation
* CHANGED - TimeMeasureOptions class in the Cuemon.Diagnostics namespace is no longer sealed

4.3.2018.2200
* ADDED - AsyncOptions class in the Cuemon.Threading namespace that specifies options that is related to asynchronous operations

4.3.2018.2070
* CHANGED - Assembly version 4.2.2017.0 --> 4.3.2018.205
* CHANGED - Renamed Remove --> RemoveAll on the StringUtility and StringUtilityExtensions class in the Cuemon namespace (breaking)
* ADDED - New extensions for Task: ContinueWithCapturedContext, ContinueWithSuppressedContext
* ADDED - New extensions for Task{TResult}: ContinueWithCapturedContext, ContinueWithSuppressedContext
* CHANGED - HashUtility and HashUtilityExtensions class in the Cuemon.Security.Cryptography namespace was refactored to support the options pattern
* CHANGED - HmacUtility and HmacUtilityExtensions class in the Cuemon.Security.Cryptography namespace was refactored to support the options pattern
* ADDED - HashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to HashAlgorithm operations
* ADDED - KeyedHashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to KeyedHashAlgorithm operations
* ADDED - StreamHashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to HashAlgorithm operations
* ADDED - StreamKeyedHashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to KeyedHashAlgorithm operations
* ADDED - StringHashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to HashAlgorithm operations
* ADDED - StringKeyedHashOptions class in the Cuemon.Security.Cryptography namespace that specifies options that is related to KeyedHashAlgorithm operations

4.2.2018.840
* PRELUDE - Microsoft has now proven that .NET Standard is the way to go why per assembly download is re-introduced again

4.2.2017.2270
* CHANGED - Renamed FromChars --> ToEnumerable on the StringConverter class in the Cuemon namespace
* ADDED - StringConverter class in the Cuemon namespace received one new method; FromChars
* ADDED - New extensions for IEnumerable{Char}: FromChars
* ADDED - StringUtility class in the Cuemon namespace received three new methods; two overloaded HasConsecutiveCharacters and one ParseDistinctDifference

4.2.2017.2250
* ADDED - New extensions for IDictionary{TKey,TValue}: TryGetValue, GetValueOrDefault
* ADDED - ConditionalCollection{T} class in the Cuemon.Collections.Generic namespace that provides an abstract base class for a generic, conditional collection
* ADDED - Initializer class in the Cuemon namespace that provides a generic way to wrap and initialize a class for countless scenarios
* ADDED - InitializerBuilder{T} class in the Cuemon namespace that supports the Initializer class for building custom initializers

4.2.2017.900
* FIXED - All async/await methods now uses ConfigureAwait(false)
* ADDED - ActionFactory class in the Cuemon namespace received a Task based method; ExecuteMethodAsync (TAP)
* ADDED - FuncFactory class in the Cuemon namespace received a Task{TResult} based method; ExecuteMethodAsync (TAP)
* ADDED - TaskActionFactory class in the Cuemon namespace that provides access to factory methods for creating instances that encapsulate a Task based function delegate with a variable amount of generic arguments (TAP)
* ADDED - TaskFuncFactory class in the Cuemon namespace that provides access to factory methods for creating instances that encapsulate a Task{TResult} based function delegate with a variable amount of generic arguments (TAP)
* ADDED - TransientOperation class in the Cuemon namespace received several Task based overloaded methods; WithFuncAsync and WithActionAsync (TAP)
* FIXED - TransientOperationOptions class in the Cuemon namespace now have a default value of 5 minutes on the MaximumAllowedLatency property
* ADDED - ExceptionDescriptorAttribute class in the Cuemon namespace that provides information about an Exception, in a developer friendly way, optimized for open- and otherwise public application programming interfaces (API)
* ADDED - ExceptionDescriptor class in the Cuemon namespace received two new overloaded methods; PostInitializeWith
* CHANGED - MethodDescriptor class in the Cuemon.Reflection namespace was refactored to use property Caller:Type instead of property ClassName:string, which in return should add higher flexibility
* ADDED - MethodWrappedException class in the Cuemon namespace that wraps an exception that was refined with meta information from the ExceptionUtility class
* ADDED - ExceptionUtility class in the Cuemon namespace received a new method; Unwrap
* CHANGED - ExceptionUtility class in the Cuemon namespace received refactoring of Refine methods; instead of returning a generic {T of Exception}, they now return a MethodWrappedException
* FIXED - Renamed extensions for Exception: RefineException --> Refine
* ADDED - New extensions for MethodWrappedException: Unwrap
* FIXED - StringConverter class in the Cuemon namespace now writes punctuations delimiters again on the FromType method
* ADDED - Validator class in the Cuemon namespace received four new overloaded methods; ThrowIfUri, ThrowIfNotUri, ThrowIfContainsType and ThrowIfNotContainsType
* ADDED - TimeMeasure class in the Cuemon.Diagnostics namespace received several Task based overloaded methods; WithActionAsync and WithFuncAsync (TAP)
* ADDED - TesterDoer class in the Cuemon namespace that provides a set of methods that can assist with the tester-doer pattern

4.1.2017.500
* CHANGED - DataPair class in the Cuemon namespace can now be inherited from
* CHANGED - FromPascalCasing method on the StringConverter class in the Cuemon namespace to be more flexible on conversion

4.1.2017.400
* ADDED - DayPart class in the Cuemon namespace that represents a part of a day.
* ADDED - DayParts class in the Cuemon namespace that provides a roughly way to determine if a given part of a day is either; Night, Morning, Forenoon, Afternoon og Evening
* FIXED - World class in the Cuemon.Globalization namespace now tries to load cultures by reflection; if unsuccessful, it reverts to an embedded resource where CultureNotFoundException are swallowed
* ADDED - New extensions for DateTime: IsWithinRange, IsTimeOfDayNight, IsTimeOfDayMorning, IsTimeOfDayForenoon, IsTimeOfDayAfternoon, IsTimeOfDayEvening
* ADDED - New extensions for String: SubstringBefore

4.1.2017.350
* ADDED - New extensions for Int16: Min, Max
* ADDED - New extensions for Int32: Min, Max
* ADDED - New extensions for Int64: Min, Max
* ADDED - New extensions for RegionInfo: GetCultures
* ADDED - CasingMethod enum in the Cuemon namespace that specifies ways that a string must be converted in terms of casing
* CHANGED - Renamed FromConvertible --> FromConvertibles on the ByteConverter class in the Cuemon namespace
* ADDED - World class in the Cuemon.Globalization namespace that is designed to make System.Globalization related operations easier to work with

4.1.2017.280
* FIXED - EncodingOptions class in the Cuemon.Text namespace now uses the static default values
* FIXED - The extension method for String: ToByteArray was re-implemented using the old way of method overloading due to conflict with the generic variant of this method

4.1.2017.200
* CHANGED - Assembly version 4.0.2016.0 --> 4.1.2017.0
* CHANGED - All extension methods, that uses the options pattern, now has an optional setup delegate
* ADDED - Validator class in the Cuemon namespace received several new overloaded methods; ThrowIfEmpty, ThrowIfWhiteSpace, ThrowIfNullOrEmpty, ThrowIfNullOrWhitespace
* ADDED - Condition class in the Cuemon namespace received a new method; IsWhiteSpace

4.1.2016.3580
* ADDED - LatencyException class in the Cuemon namespace that provides the exception that is thrown when a latency related operation was taking to long to complete
* CHANGED - Parse and Flatten methods on the static ExceptionUtility class in the Cuemon namespace was tweaked to be more versatile
* CHANGED - ByteConverter class in the Cuemon namespace was simplified internally
* CHANGED - CharConverter class in the Cuemon namespace was simplified internally and tweaked with a try to detect encoding on relevant methods
* CHANGED - StringConverter class in the Cuemon namespace was simplified internally and tweaked with a try to detect encoding on relevant methods
* CHANGED - Renamed extensions for Stream: ToString --> ToEncodedString
* CHANGED - Renamed extensions for Exception: ToString --> ToEncodedString
* CHANGED - Renamed extensions for Byte[]: ToString --> ToEncodedString
* ADDED - TransientFaultEvidence class in the Cuemon namespace that provides evidence about a faulted TransientOperation
* CHANGED - TransientFaultException class in the Cuemon namespace was changed to include TransientFaultEvidence
* CHANGED - TransientOperation class in the Cuemon namespace was extended to support a FaultCallback delegate, calculate latency and include TransientFaultEvidence
* CHANGED - TransientOperationOptions class in the Cuemon namespace was extended to support MaximumAllowedLatency
* CHANGED - TimeMeasure class in the Cuemon.Diagnostics namespace was changed in terms of TimeMeasureCompletedCallback delegate being renamed to CompletedCallback

4.1.2016.3500
* ADDED - ExceptionDescriptor class in the Cuemon namespace that provides information about an Exception, in a developer friendly way, optimized for open- and otherwise public application programming interfaces (API)
* ADDED - ObjectHierarchyOptions class in the Cuemon.Reflection namespace that specifies options that is related to ReflectionUtility.GetObjectHierarchy operations
* REMOVED - Callback suffix from various delegates throughout the assembly package
* ADDED - New extensions for TOptions: ConfigureOptions
* ADDED - New extensions for IHierarchy<DataPair>: UseTimeSpanFormatter, UseUriFormatter, UseDateTimeFormatter, UseConvertibleFormatter, UseGuidFormatter, UseStringFormatter, UseDecimalFormatter, UseCollection, UseDictionary
* REMOVED - Redundant extension methods that collisioned with the .NET Standard Library
* CHANGED - Hierarchy{T} class in the Cuemon namespace was made more simple and flexible
* ADDED - New extensions for IHierarchy{T}: FindFirstInstance, FindSingleInstance, FindInstance, FindFirst, FindSingle, Find, Replace, ReplaceAll
* CHANGED - IHierarchy{T} interface in the Cuemon namespace received two new members; Replace and GetPath
* CHANGED - DataPair class in the Cuemon namespace was made more simple and flexible
* ADDED - TimeRange class in the Cuemon namespace that represents a period of time between two DateTime values
* CHANGED - IsComplex method on the TypeUtility class in the Cuemon namespace to be more precise
* ADDED - New extensions for IDictionary{TKey,TValue}: AddIfNotContainsKey, AddOrUpdate
* ADDED - New extensions for DateTime: ToString
* REMOVED - Uri support from the ObjectConverter.FromString method in the Cuemon namespace

4.0.2016.3270
* PRELUDE - Because of the many paths given by Microsoft in the road of .NET Core, this is a major and breaking release where all assemblies have been refactored and put together again in a nifty package. So, just like Cuemon .NET Framework, this is the Core version. No more single assemblies for download. It seemed smart, but reality has proven otherwise. So all single assemblies has been deemed deprecated.
* REMOVED - Act delegates in the Cuemon namespace (leftover from Cuemon .NET Framework merge); all lamda expressions has been replaced with Action delegates
* REMOVED - Doer delegates in the Cuemon namespace (leftover from Cuemon .NET Framework merge); all lamda expressions has been replaced with Func delegates
* CHANGED - ActFactory class in the Cuemon namespace was renamed to ActionFactory
* CHANGED - DoerFactory class in the Cuemon namespace was renamed to FuncFactory
* CHANGED - TesterDoer delegates in the Cuemon namespace was renamed to TesterFunc delegates
* CHANGED - TesterDoerFactory class in the Cuemon namespace was renamed to TesterFuncFactory
* CHANGED - TesterDoerUtility class in the Cuemon namespace was renamed to TesterFuncUtility
* CHANGED - MethodSignature class in the Cuemon.Reflection namespace was renamed to MethodDescriptor
* CHANGED - TransientFaultUtility class in the Cuemon namespace was renamed to TransientOperation and refactored to support the options pattern
* ADDED - TransientOperationOptions class in the Cuemon namespace that specifies options that is related to TransientOperation handling
* ADDED - Profiler class in the Cuemon.Diagnostics namespace that represents a base class for profiler related operations
* ADDED - ProfilerOptions class in the Cuemon.Diagnostics namespace that specifies options that is related to Profiler operations
* ADDED - TimeMeasureOptions class in the Cuemon.Diagnostics namespace that specifies options that is related to TimeMeasureProfiler operations
* ADDED - TimeMeasureProfiler class in the Cuemon.Diagnostics namespace that represents a profiler that is optimized for time measuring operations
* ADDED - TimeMeasureProfiler<TResult> class in the Cuemon.Diagnostics namespace that represents a profiler that is optimized for time measuring operations that provides a return value
* ADDED - Tweaker class in the Cuemon namespace that provides a way to change any instance of the same generic type
* ADDED - EncodingOptions class in the Cuemon.Text namespace that specifies options that is related to Encoding operations
* ADDED - One new method, IsAnonymousMethod, was added to the TypeUtility class in the Cuemon namepspace
* ADDED - Two new method, SafeInvokeDisposable (overloaded) and ConfigureAction, was added to the DelegateUtility class in the Cuemon namepspace
* ADDED - New extensions for DateTime: ToUtcKind, ToLocalKind, ToDefaultKind
* ADDED - New extensions for T: Adjust
* ADDED - New extensions for TimeSpan: GetTotalNanoseconds, GetNanoseconds, GetTotalMicroseconds, GetMicroseconds

4.0.2016.1880
* ADDED - Two new methods, ToProtocolRelativeUri, was added to the StringConverter class in the Cuemon namepspace
* ADDED - UriConverter static class in the Cuemon namepspace that is designed to make Uri related conversions easier to work with
* ADDED - Two new methods, IsProtocolRelativeUri, was added to the UriUtility class in the Cuemon namepspace
* FIXED - The default function delegate for ByteConverter.TryFromBase64String and StringUtility.IsBase64 now evaluates a Base64 string correctly

4.0.2016.1380-rc2
* ADDED - Support for .NET Platform Standard 1.4 (netstandard1.4)
* CHANGED - Removed support for .NET Platform Standard 5.4 (dotnet5.4)

4.0.2016.1360-beta
* CHANGED - The StringConverter.FromException(Exception, ..) method in the Cuemon namespace now flatten and includes all inner exceptions
* FIXED - The ByteConverter.TryFromBase64String(string, ..) method in the Cuemon namespace now evaluates false if the predicate evaluates false
* FIXED - The TransientFaultUtility class in the Cuemon namespace does not include a dublet of the last exception thrown