Skip to content

Latest commit

 

History

History
271 lines (228 loc) · 18 KB

File metadata and controls

271 lines (228 loc) · 18 KB

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 string extensions in Text: 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> and AsyncExpiringLazy<T>.
  • [ded7012] (RzR) -> Add improvements to the documentation of TupleResult
  • [879e778] (RzR) -> Add new string extension methods: IsMissingOrAny, IfIsMissingOrAny.
  • [b1a924b] (RzR) -> Add TupleResult deconstruct data.

v4.5.0.7408 [RzR] 11-02-2026

  • [a4fd120] (RzR) -> Auto commit uncommited files
  • [bae196d] (RzR) -> Add enumerable method SelectWithIsLast and WithObservable

v4.4.0.8476 [RzR] 19-01-2026

  • [0b54e4a] (RzR) -> Add T extension methods: GetPropertyValue, GetPropertyStringValue, GetPropertyValue, ChangePropertyValue.
  • [ee95f35] (RzR) -> Add string extension methods: RemoveStartChars, RemoveEndChars.
  • [e4334fe] (RzR) -> Add Enum extension method: ToInt.
  • [4bd5005] (RzR) -> Add multiple Char extension 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 TimeSpan extension 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 Guid extension method: IsMissing.
  • [46ae823] (RzR) -> Add multiple RandomHelper methods: 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 TaskRunnerHelper that allow to use as Task.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 TEA extensions TEAEncrypt, TEADecrypt.
  • [ea248b6] (RzR) -> Implement TEA helper.
  • [21b0972] (RzR) -> Rename and relocate the DisposablesCollectionHelper to DisposableStackCollection
  • [5d30576] (RzR) -> Rename and relocate the InsensitiveCaseHashtableHelper to InsensitiveCaseHashtable.
  • [af81be2] (RzR) -> Add new enumerable extnesions: ForEach, ForEachAsync.
  • [eeba6d9] (RzR) -> Adjust location of the JsonObjectSerializer class.
  • [5e2128f] (RzR) -> Add DirectoryInfo extensions: GetMatchingFiles, Empty, GetParentOf, Where, HasDirectories, HasFiles, IsEmpty.
  • [8eb8728] (RzR) -> Add ConcurrentDictionary extensions: Remove, RemoveWhere, TryRemove, RemoveAll, GetValueOrDefault.
  • [9e39505] (RzR) -> Add ConcurrentQueue extensions: 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 existing IsBase32String.

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, Base32ToBytes and adjust TrimAndReduceSpace, 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 DomainEnsure methods
  • [780f3f5] (RzR) -> Adjust code to use Ensure. Adjust namespace.
  • [716c5a4] (RzR) -> [BreakingChanges] Relocate extension classes ReflectionExtensions, TypeBuilderExtensions and TypeExtensions.
  • [ad66c6d] (RzR) -> Adjust code to use defined extensions. Adjust namespace.
  • [6e57990] (RzR) -> Add collection extension method With (accept array).
  • [5db737c] (RzR) -> Add Ensure methods 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 IfStartsWith and IfNotStartsWith.
  • [572b664] (RzR) -> Add string extension methods IfContains and IfNotContains
  • [872a4f6] (RzR) -> Add generic equality compare object IfEquals and IfNotEquals
  • [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 ToJson and refactor anonimous class factory
  • [17989a2] (RzR) -> Add new Enum extensions AreEquals.
  • [3e56754] (RzR) -> Add new enumerable extensions Chunked

v2.1.1.6403

-> Add new string extension: FormatWith;
-> Add new Guid/Guid? extension: IsEmpty;
-> Relocate several string extensions: IsGuid, ToGuid, FromDoubleQuotesWithBackSlashesToGuid;

v2.1.0.0

-> 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;

v2.0.1.8588

-> Remove unused package Microsoft.CodeAnalysis.Common;

v2.0.0.0

-> 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;

v1.3.0.0

-> Fix test for CalculateAge;
-> Add new string extensions: IsValidJson, IsValidJsonObject, IsValidJsonArray;

v1.2.0.0

-> Add/adjust input validations in the DataTypeExtensions foler with extensions;
-> Add new string extensions: IfNullThenEmpty.

v1.1.2.3434

-> Add new string extensions: AsRedacted, TrimPrefix, TrimSuffix.

v1.1.1.7310

-> Adjust and clean up code execution.
-> Reorganize typeparam extensions.
-> Add new typeparam extensions: IfIsNull, IfIsNotNull, IfIsNullOrFuncIsTrue, IfIsNullAndFuncIsTrue, IfFuncIsTrue, IfFuncIsFalse, IfFunc, IfNull, IfNotNull.

v1.1.0.0

-> Remove unused packages.
-> Downgrade some package versions to cover target frameworks.
-> Fix some warnings and disposable objects.
-> Fix tests.

v1.0.14.6517

-> Fix some enums extensions.
-> Add new methods (AppendTo, GetPropertiesInfoFromSource) in TExtensions.

v1.0.13.8399

-> Add excel column name generator GetExcelColumnName.
-> Adjust method modifier for GetDuplicates.

v1.0.12.1447

-> Add IDataReader extensions to convert object in specific type.

v1.0.11.1319

-> Fix wrong modification.

v1.0.10.2315

-> Update lib version. Add option to sign the new version of the files.
-> Small code refactor.

v1.0.9.2108

-> 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.

v1.0.8.0638

-> Added string extension GetHashSha512String, FromSpaceSeparatedString, IsMissing, IsNullOrEmpty, AddQueryString, AddHashFragment, GetOrigin, Obfuscate.
-> Added Enumerable extension ToSpaceSeparatedString, HasDuplicates, GetDuplicates.

v1.0.7.0535

-> Add in directory helper new methods: FileCount x3, DirectoryFileCount.

v1.0.6.1341

-> Update vulnerable library version.

v1.0.5.2131

-> Added string extension ParseToInt, ParseNullableInt, TryParseInt.
-> Added list extension ActionForEach.

v1.0.5.1849

-> Added string extension Contains.
-> Added int/long extension IsLessZero.
-> Was added new Type extension: GetStringPropertyNames, GetStringPropertyInfos, GetPropertyInfos.

v1.0.4.1925

-> Added support for net framework.

v1.0.3.1101

-> Was added new object extension: SerializeToString .
-> Was added new string extension: DeserializeToObject .
-> Was added new T extension: SerializeToXmlDoc .

v1.0.3.0

-> 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.

v1.0.2.1457

-> Was added new string extension: IfNullOrWhiteSpace, IfNullOrEmpty.
-> Was added new TExtensions extension: IfNotNull.

v1.0.2.1107

-> 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.

v1.0.1.1842

-> Was added new byte extension: ToStringFromByteUnicode, ToHexByte.
-> Was added new string extension: ToBytesUnicode.

v1.0.1.0823

-> 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.