Skip to content

v2.5 Windows/Linux/MacOS (.NET Core 10)

Choose a tag to compare

@Gyroscopic-why Gyroscopic-why released this 03 Feb 14:15
· 28 commits to main since this release
e88ec24

Original release date - 03.02.2026

All functionality:

  • SecureRandom (alternative to C# Cryptography.RandomNumberGenerator)
    • Does not rely on any dependencies, uses only hardware randomness => cant be compromised
    • (Wildcard) Funcs for generating: (S)Byte, (U)Int16, (U)Int32, (U)Int64
    • (Standard) Funcs for generating: UInt64, Int32, Byte[], double
    • Supports reseeding, autoReseeding, and SecureNext for reseeding before generating
    • Accepts minValue and maxValue for generating limits
    • Is based on ChaCha20 algorithm
    • slower than standard C# implementation
  • FastRandom (alternative to C# standard Random class)
    • Does not rely on any dependencies, uses only hardware randomness => cant be compromised
    • (Wildcard) Funcs for generating: (S)Byte, (U)Int16, (U)Int32, (U)Int64
    • (Standard) Funcs for generating: UInt64, Byte[], double
    • Accepts minValue and maxValue for generating limits
    • Uses Xoshiro256++ algorithm
    • a bit slower than standard C# Random
  • Numsys (short for numeric systems) - for Conversions of numbers from one numeric system to another, supports:
    • Auto (uses Fast versions if possible)
    • Funcs supporting custom digits for conversions
    • Support for binary variants of conversions with wildcard type output, example: List<T (any integer type)>
    • Fast conversions (only) for bases 2, 8, 10, 16
    • Support for direct number conversions
    • extending output to a minimal length
    • low base conversions (for bases less or equal to 10)
  • Utils, for:
    • Reverse methods for string, integer-types, Lists, arrays, and some other collection
      (Replacement of the inconsistent standart C# Linq implemetation)
    • Flag for checking if the number is prime
    • Getting Intervals for strings, arrays and list (startId, endId)
    • XOR operations on Arrays, Lists & integers
  • ToBinary, for:
    • Converting Lists of 16, 32 and 64 bit numbers (supports BigEndian, LittleEndian)
    • Converting 16, 32 and 64 bit numbers (supports BigEndian, LittleEndian)
    • Converting text (strings) to binary (bytes), supports: ASCII, UTF-8, UTF-16, BigEndian UTF-16, UTF-32
  • FromBinary, for:
    • Converting Byte arrays to any integer type, supports: BigEndian, LittleEndian
    • Converting Byte arrays into List, supports BigEndian, LittleEndian
    • Converting text from binary (bytes) to strings, supports: ASCII, UTF-8, UTF-16, BigEndian UTF-16, UTF-32
  • Conversions, for:
    • Conversions of Lists of different sized integers
    • Input: wildcard Type ( (S)Byte, (U)Int16, (U)Int32, (U)Int64 )
    • Output: (S)Byte, (U)Int16, (U)Int32, (U)Int64
    • Supports BigEndian, LittleEndian
  • Split (& Combine), for:
    • Splitting integers into lists of smaller chunks
      (and combining them back together)
    • Input: wildcard Type ( (S)Byte, (U)Int16, (U)Int32, (U)Int64 )
    • Output: (S)Byte, (U)Int16, (U)Int32, (U)Int64

v2.5 Changes:

Fully revamped Numsys with:

  • Wildcard type for output
  • Proper binary encoding & decoding
  • Fixed AsList being inaccessible in any scenario in .Auto()
  • Optimised lambda functions
  • Optimised converters working with custom digits

Utils:
+Reverse() for wildcard Integer types

Random (Fast & Secure):

  • Wildcard type for output
  • QoL parameters renaming

Split:
+Added duplicate variants for unsigned counter-parts

+Combine:
LE integers lists
BE integers lists
(Wildcard type for input)