v5.0.0.7637 [RzR] 24-04-2026
- BREAKING: Repository reorganized into 11 stable namespace buckets (
Async,Collections,Cryptography,Data,Diagnostics,Internal,IO,Linq,Models,Primitives,Reflection,Text,Validation). Class names and method signatures are unchanged; only the namespaces moved. See namespace-migration-v5.md for the full mapping. - Backward-compat shim layer (
_Legacy/folder):[Obsolete]static methods preserve the v4 namespaces so existing user code still compiles. Each call site lights up with the new v5 location. - New file extensions in
IO:SafeWriteAllText,SafeWriteAllBytes(atomic write via temp + replace),Sha256HexFromFile. - New byte / string checksum helpers in
Primitives/Text:byte[].ToHexString,byte[].Sha256Hex,string.Sha256Hex. - New
stringextensions inText:ToBase64Url,FromBase64Url,ToSlug,Mask.
v4.6.0.8232 [RzR] 20-03-2026
- [5503224] (RzR) -> Auto commit uncommited files
- [e9aa417] (RzR) -> Add small improvements
- [3982b59] (RzR) -> Add async lazy load
AsyncLazy<T>andAsyncExpiringLazy<T>. - [ded7012] (RzR) -> Add improvements to the documentation of
TupleResult - [879e778] (RzR) -> Add new string extension methods:
IsMissingOrAny,IfIsMissingOrAny. - [b1a924b] (RzR) -> Add
TupleResultdeconstruct data.
v4.5.0.7408 [RzR] 11-02-2026
- [a4fd120] (RzR) -> Auto commit uncommited files
- [bae196d] (RzR) -> Add enumerable method
SelectWithIsLastandWithObservable
v4.4.0.8476 [RzR] 19-01-2026
- [0b54e4a] (RzR) -> Add
Textension methods:GetPropertyValue,GetPropertyStringValue,GetPropertyValue,ChangePropertyValue. - [ee95f35] (RzR) -> Add
stringextension methods:RemoveStartChars,RemoveEndChars. - [e4334fe] (RzR) -> Add
Enumextension method:ToInt. - [4bd5005] (RzR) -> Add multiple
Charextension methods:IsMissing,IsPresent,IsDigit,IsAscii,IsAsciiLetter,IsAsciiUpper,IsAsciiLower,IsNewLine,IsQuote,IsBracket,IsOperator,IsMathSign,IsWhiteSpaceFast,IsSymbolOrPunctuation,IsBinaryDigit,IsOctalDigit,IsHexDigit,ToHexValue,ToggleCase,IsPrintable,Next,Previous,IsEmoji,HasValue,DefaultIfNull,IsNullOrWhiteSpace,SpaceIfNull. - [801e815] (RzR) -> Add multiple
TimeSpanextension methods:IsMissing,HasValidValue,IsZero,IsPositive,IsNegative,IsBetween,DefaultIfNull,ZeroIfNull,RoundUp,RoundDown,Clamp,TotalSecondsInt,TotalMinutesInt,TotalMillisecondsLong,ToClockFormat,ToHumanReadable,ThrowIfMissing,ThrowIfNegative,IsShorterThan,IsLongerThan,AddSafe. - [d3fa3b4] (RzR) -> Add
Guidextension method:IsMissing. - [46ae823] (RzR) -> Add multiple
RandomHelpermethods:Long,Double,Decimal,Letter,Letters,LowerLetter,UpperLetter,AlphaNumeric,Digits,Guid,Token,DateTime,TimeSpan,Pick,Shuffle,Enum.
v4.3.0.6204 [RzR] 11-01-2026
- [09a89f2] (RzR) -> Add a type of indexed enumerable.
v4.2.1.4986 [RzR] 04-12-2025
- [51d2aa9] (RzR) -> Auto commit uncommited files
- [9c27a62] (RzR) -> Upgrade deprecated package version.
v4.2.0.8401 [RzR] 03-12-2025
- [e0cfbed] (RzR) -> Auto commit uncommited files
- [17cf91a] (RzR) -> Add type extension method:
IsAssignableFromPortable. - [1b4d01c] (RzR) -> Add ConcurrentDictionary extension method:
AddOrUpdate. - [e9ff67e] (RzR) -> Add long extension method:
AsReadableFileSize.
v4.1.0.8241 [RzR] 11-11-2025
- [0c9f8d8] (RzR) -> Auto commit uncommited files
- [75871a1] (RzR) -> Add INI file reader helper.
- [4eb45c6] (RzR) -> Add new Dictionary extension methods:
AddOrUpdate,AddOrUpdateValue,AddOrUpdateValues,AddOrUpdateValues. - [3bee806] (RzR) -> Add
TaskRunnerHelperthat allow to use asTask.Run. - [b723c9b] (RzR) -> Add new enumerable extension method:
IsNotNullOrEmptyEnumerable. - [8971980] (RzR) -> Add new string extension methods:
IsWebUrl. - [fac9dce] (RzR) -> Adjust changelog version order
- [c2f8fa2] (RzR) -> Add new string extension methods:
IsAllUpperCase,IsAllLowerCase,IsAllLetters,CleanTextToLettersNumbersAndSpace. - [173ded1] (RzR) -> Add new string extension methods:
AddPeriod,RemovePeriod,AddPeriodValue,RemovePeriodValue. - [771d45a] (RzR) -> Adjust code execution and add new tests.
- [6bf5de1] (RzR) -> Add new Type extension methods:
IsNonAbstractClass,GetBaseTypes,IsInNamespaceAlternative,IsInExactNamespace,HasAttribute. - [c92aec2] (RzR) -> Add new string extension:
NotAllowedEmpty. - [daad073] (RzR) -> Add new enum extension:
IsDefined. - [9126c55] (RzR) -> Add new T extension methods:
NotAllowNull. - [a0edaf4] (RzR) -> Add new Random method:
Bool. - [2c8da5e] (RzR) -> Add new enumerable ext:
ToHashSet,HasAny.
v4.0.1.8519 [RzR] 27-10-2025
- [2726a87] (RzR) -> Auto commit uncommited files
- [1282898] (RzR) -> Fix IEnumerable extension method:
Chunked.
v4.0.0.5323 [RzR] 14-10-2025
- [c464d6d] (RzR) -> Add
TEAextensionsTEAEncrypt,TEADecrypt. - [ea248b6] (RzR) -> Implement
TEAhelper. - [21b0972] (RzR) -> Rename and relocate the
DisposablesCollectionHelpertoDisposableStackCollection - [5d30576] (RzR) -> Rename and relocate the
InsensitiveCaseHashtableHelpertoInsensitiveCaseHashtable. - [af81be2] (RzR) -> Add new enumerable extnesions:
ForEach,ForEachAsync. - [eeba6d9] (RzR) -> Adjust location of the
JsonObjectSerializerclass. - [5e2128f] (RzR) -> Add
DirectoryInfoextensions:GetMatchingFiles,Empty,GetParentOf,Where,HasDirectories,HasFiles,IsEmpty. - [8eb8728] (RzR) -> Add
ConcurrentDictionaryextensions:Remove,RemoveWhere,TryRemove,RemoveAll,GetValueOrDefault. - [9e39505] (RzR) -> Add
ConcurrentQueueextensions:Purge,Prune,DequeueAll,DequeueBatch,EnqueueRange,Enqueue,EnqueueRange,DequeueAndProcessBatches. - [7fbff8d] (RzR) -> Add new DateTime extnesions:
ToEpoch,FromEpoch,IsDifferentDay,IsDifferentLocalDay. - [d95d4fe] (RzR) -> Add new dictionary extnesions:
TryGetValue,GetValueOrDefault,ContainsAllKeys,ContainsAnyKeys. - [6e7d3f9] (RzR) -> Add new enumerable extnesions:
ConvertToQuerystring,Convert. - [08681a4] (RzR) -> Add new byte extnesion:
IsEntirelyNull.
v3.4.0.7452 [RzR] 07-10-2025
- [c160a83] (RzR) -> Auto commit uncommited files
- [b417765] (RzR) -> Add new enumeration extnesion:
AdddIfNotExist. - [ab7bedc] (RzR) -> Add new dictionary extnesion:
IsNullOrEmpty. - [1f20f4a] (RzR) -> Add new dictionary extnesion:
AdddIfNotExist. - [0a7846f] (RzR) -> Add new array extnesion:
AppendIfNotExist.
v3.3.0.5249 [RzR] 29-09-2025
- [325ff42] (RzR) -> Auto commit uncommited files
- [7385809] (RzR) -> Add new Guid extension methods:
NullIfEmpty,EmptyIfNull,IsMissing,HasValidValue. - [a37096b] (RzR) -> Add new DateTime extension methods:
IsOnlyDate,ForceMillisecondsToZero. - [d0f9816] (RzR) -> Commented some tests, but it's fully covered.
- [a01da4d] (RzR) -> Add new string extension
TruncateFromStart.
v3.2.0.4113 [RzR] 13-08-2025
- [b16c919] (RzR) -> Auto commit uncommited files
- [b9538c3] (RzR) -> Add missign BASE32 methods:
Base32Encode,Base32Decode. Adjust existingIsBase32String.
v3.1.0.3090 [RzR] 13-08-2025
- [bc2ef6d] (RzR) -> Auto commit uncommited files
- [90ce1ef] (RzR) -> Add and adjust test methods.
- [e8fafdc] (RzR) -> Add DateTime method:
Epoch. - [8bb8672] (RzR) -> Add byte method:
Base32BytesToString. - [896be11] (RzR) -> Add string methods
IsBase32String,Base32ToBytesand adjustTrimAndReduceSpace,TrimAndReplaceSpecialCharacters.
v3.0.0.3007 [RzR] 07-08-2025
- [9e7a5e9] (RzR) -> Auto commit uncommited files.
- [ddc61a0] (RzR) -> Add new reflection extension methods (available from net45 and up);
GetTypes,GetSetMethod,GetGetMethod,GetGenericArguments,GetMethod,GetMembers,GetInterfaces,IsGenericType,IsValueType,IsAbstract,IsAssignableFrom,ContainsGenericParameters,BaseType,IsGenericTypeDefinition,IsPrimitive,IsNestedPublic,IsPublic,IsSealed,GetGenericParameterConstraints,IsClass,IsInterface,IsGenericParameter,GetGenericParameterAttributes,GetAssembly,GetConstructors,GetConstructor,IsInNamespace. - [379d971] (RzR) -> Add
NotNull(safe) array extension. Add array/enumerable tests. - [efb7a14] (RzR) -> Small code adjustments and improvements
- [c4ec2f8] (RzR) -> Add tests for
DomainEnsuremethods - [780f3f5] (RzR) -> Adjust code to use
Ensure. Adjust namespace. - [716c5a4] (RzR) -> [BreakingChanges] Relocate extension classes
ReflectionExtensions,TypeBuilderExtensionsandTypeExtensions. - [ad66c6d] (RzR) -> Adjust code to use defined extensions. Adjust namespace.
- [6e57990] (RzR) -> Add collection extension method
With(accept array). - [5db737c] (RzR) -> Add
Ensuremethods and refactor code.
v2.3.0.7698 [RzR] 15-07-2025
- [f300bd2] (RzR) -> Auto commit uncommited files
- [067dd42] (RzR) -> Add alternative extension method for
WithIndex - [4839a72] (RzR) -> Add string extension methods
IfStartsWithandIfNotStartsWith. - [572b664] (RzR) -> Add string extension methods
IfContainsandIfNotContains - [872a4f6] (RzR) -> Add generic equality compare object
IfEqualsandIfNotEquals - [50c5dcc] (RzR) -> Add func extensions sync/async
IsTrue,IsFalse.
v2.2.0.8487 [RzR] 27-06-2025
- [9b9d498] (RzR) -> Auto commit uncommited files
- [e72cb92] (RzR) -> Adjust path to test projects in scripts
- [141087f] (RzR) -> Add changelog and version scripts
- [11e19df] (RzR) -> Add DataTable extensions
ToJsonand refactor anonimous class factory - [17989a2] (RzR) -> Add new Enum extensions
AreEquals. - [3e56754] (RzR) -> Add new enumerable extensions
Chunked
-> Add new string extension: FormatWith;
-> Add new Guid/Guid? extension: IsEmpty;
-> Relocate several string extensions: IsGuid, ToGuid, FromDoubleQuotesWithBackSlashesToGuid;
-> Add new string extensions: ToStringArray, ArrayToString;
-> Add new array extensions: AppendItem, AppendIfNotExists, RemoveItem, RemoveAtIdx;
-> Add new enumerable extensions: GetDuplicates, ForEach, ForEachAndReturn;
-> Add passcode/password generation util;
-> Remove unused package Microsoft.CodeAnalysis.Common;
-> Fix test for CalculateAge;
-> Add DateTime extension method AsNotNull;
-> Add new tests for AsNotNull methods;
-> Add EnumerateUtils enumerable utils some tests;
-> Adjust AES encryption(AesEncryptString, AesDecryptString) and expose iv as input;
-> Adjust dynamic property/ies select avoid System.Linq.Dynamic.Core;
-> Fix test for CalculateAge;
-> Add new string extensions: IsValidJson, IsValidJsonObject, IsValidJsonArray;
-> Add/adjust input validations in the DataTypeExtensions foler with extensions;
-> Add new string extensions: IfNullThenEmpty.
-> Add new string extensions: AsRedacted, TrimPrefix, TrimSuffix.
-> Adjust and clean up code execution.
-> Reorganize typeparam extensions.
-> Add new typeparam extensions: IfIsNull, IfIsNotNull, IfIsNullOrFuncIsTrue, IfIsNullAndFuncIsTrue, IfFuncIsTrue, IfFuncIsFalse, IfFunc, IfNull, IfNotNull.
-> Remove unused packages.
-> Downgrade some package versions to cover target frameworks.
-> Fix some warnings and disposable objects.
-> Fix tests.
-> Fix some enums extensions.
-> Add new methods (AppendTo, GetPropertiesInfoFromSource) in TExtensions.
-> Add excel column name generator GetExcelColumnName.
-> Adjust method modifier for GetDuplicates.
-> Add IDataReader extensions to convert object in specific type.
-> Fix wrong modification.
-> Update lib version. Add option to sign the new version of the files.
-> Small code refactor.
-> Added object extensions ThrowIfArgNull, ThrowArgIfNull.
-> Added bool extensions IsTrue, IsFalse.
-> Added null check extensions IsNotNull, IsDbNull.
-> Added string extensions ThrowArgIfNull, ThrowArgIfNullOrEmpty, ThrowIfArgNull, ThrowIfArgNullOrEmpty.
-> Adjust validation for input params at some methods.
-> Small code refactor.
-> Added string extension GetHashSha512String, FromSpaceSeparatedString, IsMissing, IsNullOrEmpty, AddQueryString, AddHashFragment, GetOrigin, Obfuscate.
-> Added Enumerable extension ToSpaceSeparatedString, HasDuplicates, GetDuplicates.
-> Add in directory helper new methods: FileCount x3, DirectoryFileCount.
-> Update vulnerable library version.
-> Added string extension ParseToInt, ParseNullableInt, TryParseInt.
-> Added list extension ActionForEach.
-> Added string extension Contains.
-> Added int/long extension IsLessZero.
-> Was added new Type extension: GetStringPropertyNames, GetStringPropertyInfos, GetPropertyInfos.
-> Added support for net framework.
-> Was added new object extension: SerializeToString .
-> Was added new string extension: DeserializeToObject .
-> Was added new T extension: SerializeToXmlDoc .
-> Was renamed Utils to GeneralUtils.
-> Was added new EnumerateUtils with methods: FromTo<int>, FromTo<DateTime> and PowersOf.
-> Was added new DirectoryHelper with methods: CreateDirectory, CopyDirectory and DeleteDirectory.
-> Was added new DisposablesCollectionHelper with methods: Dispose, Add.
-> Was added new InsensitiveCaseHashtableHelper with methods: ContainsKey, Add, Remove.
-> Was added new byte extension: CompareTo, GZipCompress.
-> Was added new datetime extension: ToEpochTime, ToExcelTime.
-> Was added new DecimalExtensions with methods: IsNullOrZero, IsZero, IsLessOrEqualZero, IsGreaterThanOrEqualZero, IsGreaterThanZero.
-> Was cleaned IntExtension and removed unrelated type extension (moved to specific type class).
-> Was added new LongExtensions with methods: IsNullOrZero, IsZero, IsLessOrEqualZero, IsGreaterThanOrEqualZero, IsGreaterThanZero, SetFlag, IsFlagSet.
-> Was added new object extension: In, ToDictionary, ThrowIfNull, ToString, To.
-> Was added new string extension: ToLines, Chunked, ThrowIfNullOrEmpty, ThrowIfNull, ThrowIfEmpty, IsEmpty, XmlEncode, XmlDecode.
-> Was added new TimeSpanExtension with methods: Absolute.
-> Was added new LongExtensions with methods: IsNullOrZero, IsZero, IsGreaterThanZero.
-> Was added new type extension: GetPropertyPath, IsAsType.
-> Was added new number extension: IsBetween (double, int), GetNumberSuffix.
-> Was added new memory stream extension: WriteAll .
-> Was added new exception extension: WithData .
-> Was added new QueueExtensions with methods: DequeueOrDefault.
-> Was added new ListExtensions with methods: ToDataSet, RemoveFirst, RemoveLast.
-> Was added new HashExtensions with methods: AddRange.
-> Was added new EnumerableExtensions with methods: Replace, Join, IsLast, IsFirst, GetDifferences, ContainsAny, AnyStartWith (input: IEnumerable, string), ToObservableCollection, Randomize, Transpose, ToCollection, Combinations, ToDataTable, ToDataTableDynamic, IsNullOrEmptyEnumerable, WithIndex, ListToString, CloneCollection, NotNull.
-> Was added new ArrayExtensions with methods: IndexOf.
-> Was added new string extension: IfNullOrWhiteSpace, IfNullOrEmpty.
-> Was added new TExtensions extension: IfNotNull.
-> Was added new DateTime extension: StartOfWeek, EndOfWeek, StartOfMonth, EndOfMonth, StartOfPreviousMonth, EndOfPreviousMonth, StartOfYear, EndOfYear, DaysInMonth, DaysInYear, GetIso8601WeekOfYear.
-> Was added new string extension: ReplaceExact.
-> Was added new Exception extension: GetFullError.
-> Was added new ExpandoObject extension: AddProperty, UpdateValue, GetValue.
-> Was added new byte extension: ToStringFromByteUnicode, ToHexByte.
-> Was added new string extension: ToBytesUnicode.
-> Was fixed tests and was added validator for input source.
-> Was added ToEnum<T> from the string.
-> Was added check methods IsTypeOfNullableInt, IsTypeOfFloatingPoint, IsTypeOfNullableFloatingPoint from property type.