Cuemon.Core.Package 4.2.2017.2270

Cuemon .NET Core Package

This is all the assemblies of the Cuemon .NET Core family.

Install-Package Cuemon.Core.Package -Version 4.2.2017.2270
dotnet add package Cuemon.Core.Package --version 4.2.2017.2270
paket add Cuemon.Core.Package --version 4.2.2017.2270
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

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
* FIXED - XmlStreamConverter class in the Cuemon.Xml namespace had the FromException method fixed to traverse inner exceptions correctly
* FIXED - XmlFormatter class in the Cuemon.Serialization.Xml.Formatters namespace had the Deserialize method fixed to use XmlReaderSettings instead of XmlWriterSettings
* CHANGED - FormatterOptions class in the Cuemon.Serialization.Formatters namespace received ways to support Reader- and Writer- settings
* CHANGED - XmlFormatterOptions class in the Cuemon.Serialization.Xml.Formatters namespace was refactored to support XmlReaderSettings and XmlWriterSettings
* ADDED - XmlFormatterOptions class in the Cuemon.Serialization.Xml.Formatters namespace received support for Exception serialization
* CHANGED - DynamicXmlConverter class in the Cuemon.Serialization.Xml namespace was refactored to support XmlReaderSettings and XmlWriterSettings
* 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 - ChecksumBuilder class in the Cuemon.Integrity namespace that provides a way to fluently represent checksum values of arbitrary data
* ADDED - ChecksumBuilderOptions class in the Cuemon.Integrity namespace that specifies options that is related to ChecksumBuilder operations
* CHANGED - Refactored the CacheValidator class in the Cuemon.Integrity namespace to inherit from the new ChecksumBuilder class
* 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
* ADDED - XmlFormatter class in the Cuemon.Serialization.Xml.Formatters namespace received an additional constructor that takes a JsonFormatterOptions
* PATCH - ObjectConverter class in the Cuemon namespace was patched with failover to TypeDescriptor

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.411
* FIXED - Same spelling error (embarrassing) on the HttpManager class in the Cuemon.Net.Http namespace (HttPatch --> HttpPatch)

4.1.2017.410
* FIXED - The extension method for Uri: HttPatch was renamed to HttpPatch due to the obvious spelling error

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
* ADDED - New extensions for Uri: HttPatch
* ADDED - New extensions for HttpMethod: ToHttpMethod
* ADDED - New extensions for HttpStatusCode: IsSuccessStatusCode
* CHANGED - CacheValidator class in the Cuemon.Integrity namespace was changed in terms of default assembly referencepoint as well as minor adjustment/improvals
* CHANGED - HttpManager class in the Cuemon.Net.Http namespace now supports the HttpPatch method
* CHANGED - HttpMethods enum was extended with one new value; Patch (128)

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 String: ToCasing, GetCacheValidator
* ADDED - New extensions for Assembly: GetCacheValidator
* ADDED - New extensions for FileVersionInfo: ToProductVersion, ToFileVersion
* 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
* ADDED - FileInfoConverter class in the Cuemon.IO namespace that is designed to make FileInfo related conversions easier to work with
* CHANGED - CacheValidator class in the Cuemon.Integrity namespace to support the options pattern and Checksum now return a HashResult object instead of a hexadecimal string
* ADDED - CacheValidatorOptions class in the Cuemon.Integrity namespace that specifies options that is related to CacheValidator operations
* CHANGED - ChecksumMethod enum was extended with one new value; Timestamp
* 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 - ReflectionUtility class in the Cuemon.Reflection namespace now identifies an auto-property correctly
* 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
* CHANGED - HttpManager class in the Cuemon.Net.Http namespace was refactored to support the options pattern an also received a bugfix
* ADDED - HttpManagerOptions class in the Cuemon.Net.Http namespace that specifies options that is related to the HttpManager class

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 - New extensions for XmlReader: Copy
* 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.3510
* CHANGED - XmlFormatter class in the Cuemon.Serialization.Xml.Formatters namespace was refactored to match recent changes in the Cuemon.Serialization.Formatters.Formatter class
* CHANGED - DynamicXmlConverter class in the Cuemon.Serialization.Xml namespace was changed to support non-generic factory methods
* CHANGED - XmlConvert class in the Cuemon.Serialization.Xml namespace was changed to support non-generic factory methods
* CHANGED - Formatter class in the Cuemon.Serialization.Formatters namespace was refactored for simplicity and support for non-generic deserialization

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
* CHANGED - Refactored the GetObjectHierarchy method to support the options pattern on the ReflectionUtility class in the Cuemon.Reflection namespace
* ADDED - The Cuemon.Serialization assembly is a new member of the Cuemon .NET Core family and provides generic base classes for serialization
* ADDED - Formatter class in the Cuemon.Serialization.Formatters namespace that serves as an abstract class that supports serialization and deserialization of an object, in a given format
* ADDED - FormatterOptions class in the Cuemon.Serialization.Formatters namespace that specifies options that is related to Formatter{TFormat} operations
* ADDED - New extensions for IHierarchy<DataPair>: UseTimeSpanFormatter, UseUriFormatter, UseDateTimeFormatter, UseConvertibleFormatter, UseGuidFormatter, UseStringFormatter, UseDecimalFormatter, UseCollection, UseDictionary
* ADDED - The Cuemon.Serialization.Xml assembly is a new member of the Cuemon .NET Core family and provides XML serialization
* ADDED - XmlFormatter class in the Cuemon.Serialization.Xml.Formatters namespace that serializes and deserializes an object, in XML format
* ADDED - XmlFormatterOptions class in the Cuemon.Serialization.Xml.Formatters namespace that specifies options that is related to XmlFormatter operations
* ADDED - DynamicXmlConverter class in the Cuemon.Serialization.Xml namespace that provides a factory based way to create and wrap an XmlConverter implementation
* ADDED - DynamicXmlSerializable class in the Cuemon.Serialization.Xml namespace that provides a factory based way to create and wrap an IXmlSerializable implementation
* ADDED - XmlConvert class in the Cuemon.Serialization.Xml namespace that provides methods to make XML serialization operations easier to work with
* ADDED - XmlConverter class in the Cuemon.Serialization.Xml namespace that provides a way to convert objects to and from XML
* ADDED - XmlConverterOptions class in the Cuemon.Serialization.Xml namespace that specifies options that is related to XmlConverter operations
* ADDED - New extensions for XmlReader: ToHierarchy, Chunk
* 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
* ADDED - New extensions for Stream: RemoveXmlNamespaceDeclarations
* ADDED - New extensions for String: EscapeXml, UnescapeXml, SanitizeElementName, SanitizeElementText
* REMOVED - Uri support from the ObjectConverter.FromString method in the Cuemon namespace
* REMOVED - XmlSerializationUtility class from the Cuemon.Xml.Serialization namespace
* ADDED - XmlCopyOptions class in the Cuemon.Xml namespace that specifies options that is related to XmlWriterUtility operations
* CHANGED - XmlReadertility class in the Cuemon.Xml namespace to support the options pattern
* CHANGED - XmlWriterUtility class in the Cuemon.Xml namespace to support the options pattern
* FIXED - A bug in the JsonWebToken class

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.
* MERGED - All method extensions from Cuemon.*.Extensions assemblies has been merged to there logical owner
* MERGED - JsonWebToken class in the Cuemon.Security.Web namespace was moved from the now obsolete Cuemon.Web.Security
* MERGED - JsonWebTokenHashAlgorithm class in the Cuemon.Security.Web namespace was moved from the now obsolete Cuemon.Web.Security
* MERGED - JsonWebTokenHashAlgorithmConverter class in the Cuemon.Security.Web namespace was moved from the now obsolete Cuemon.Web.Security
* MERGED - JsonWebTokenHeader class in the Cuemon.Security.Web namespace was moved from the now obsolete Cuemon.Web.Security
* MERGED - JsonWebTokenPayload class in the Cuemon.Security.Web namespace was moved from the now obsolete Cuemon.Web.Security
* 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 - StreamWriterUtility class in the Cuemon.IO namespace was refactored to support the options pattern
* CHANGED - StreamWriterSettings class in the Cuemon.IO namespace was renamed to StreamWriterOptions and refactored to support the options pattern
* 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
* ADDED - New extensions for IDataReader: ToRows, ToColumns

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)
* CHANGED - The CacheCollection.Memoize<TResult>(Doer<TResult>, ..) methods in the Cuemon.Runtime.Caching namespace was optimized in terms of retreiving the memoized value
* CHANGED - The DTO-related classes in the Cuemon.Data namespace was optimized to use a more ligthweight implementation with far less resource usage

4.0.2016.1360-beta
* CHANGED - The StringConverter.FromException(Exception, ..) method in the Cuemon namespace now flatten and includes all inner exceptions
* CHANGED - The XmlStreamConverter.FromException(Exception, ..) method in the Cuemon.Xml 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
* FIXED - The DataManager class in the Cuemon.Data namespace now clears the command paramters if called multiple times due to retry logic

Version History

Version Downloads Last updated
4.2.2017.2270 (current version) 65 8/16/2017
4.2.2017.2250 52 8/14/2017
4.2.2017.901 156 4/4/2017
4.2.2017.900 77 4/2/2017
4.1.2017.500 84 2/21/2017
4.1.2017.411 75 2/14/2017
4.1.2017.410 76 2/14/2017
4.1.2017.400 72 2/12/2017
4.1.2017.350 73 2/7/2017
4.1.2017.280 74 1/29/2017
4.1.2017.200 76 1/25/2017
4.1.2016.3580 93 12/25/2016
4.1.2016.3510 95 12/15/2016
4.1.2016.3500 99 12/13/2016
4.0.2016.3270 92 11/22/2016
4.0.2016.1880 162 7/7/2016
4.0.2016.1380-rc2 101 5/22/2016
4.0.2016.1360-beta 95 5/18/2016
4.0.2016.951-beta 100 4/9/2016
4.0.2016.950-beta 98 4/7/2016
4.0.2016.700-beta 105 3/10/2016
4.0.2016.605-beta 99 3/8/2016
4.0.2016.604-beta 97 3/6/2016
4.0.2016.601-beta 98 3/4/2016
4.0.2016.600-beta 97 3/3/2016