Skip to content

Releases: metarhia/common

Version 2.2.2

16 Jul 22:05
f8ba4d3
Compare
Choose a tag to compare
PR-URL: https://github.com/metarhia/common/pull/376

Version 2.2.1

09 May 23:02
3d2bae9
Compare
Choose a tag to compare
PR-URL: https://github.com/metarhia/common/pull/374

Version 2.2.0

10 Jul 13:01
6f1fade
Compare
Choose a tag to compare

Release summary:

Applied fixes and improvements to the API, added multiple utility methods to
the Iterator API and several utility functions, added table of contents to the
documentation.

Changelog:

Added

  • A way to limit the internal buffer size of MemoryWritable stream.
  • common.mkdirpPromise() function.
  • Iterator#apply() and Iterator#chainApply() to improve iterator
    interaction with chained calls.
  • captureMaxStack() utility to get maximum available stack trace.
  • Table of contents to documentation.
  • Get random element from array: sample(array).
  • ECMAScript Modules named exports support.
  • Iterator#min(), Iterator#max(), and Iterator#findCompare() to
    simplify consumption of iterator in common use-cases
    (finding minimum, maximum, or using a custom condition appropriately).
  • Iterator#partition() to allow splitting iterator values into
    multiple arrays.
  • Iterator.zip() - static method for zipping iterators.
  • Iterator#groupBy() to group iterator value into Map by
    specific keys.

Changed

  • cryptoPrefetcher() to throw when bufSize is not a multiple of
    valueSize.
  • MemoryWritable internal buffer size is now limited to 8 MB by default.
  • Signature of callerFilepath() to allow passing RegExp as depth to be used
    for filtering of stack frames.
  • Return value of cryptoPrefetcher() now implements the Iterable interface.

Fixed

  • common.subst() behavior for @.value@ variables.
  • common.callerFilepath() working incorrectly on paths with colon in them.

Version 2.0.0

26 Apr 12:20
5d763c0
Compare
Choose a tag to compare

Release summary:

Dropped support for Node.js 6, removed a bunch of deprecated and outdated methods, replaced remaining ES5-style classes with ES6 classes, and added changelog and utility methods for Iterator.

Changelog:

Added

  • CHANGELOG.md file.
  • Iterator#collectWith() now returns the provided object.
  • Iterator#toObject() to collect iterable into an Object similar to
    Object.fromEntries().
  • common.iterEntries(), common.iterKeys(), common.iterValues() utility
    methods.

Changed

  • Expose AuthenticationStrength's compliance number property instead of
    strength string.
  • Replaced ES5-style classes and inheritance with ES6 classes for Cache and
    EnhancedEmitter.
  • Signature of merger() in mergeObjects() to also contain the merging key.

Removed

  • Dropped support for Node.js 6.
  • Outdated inherits() method (in favor of util.inherits() available in
    Node.js).
  • Multiple deprecated functions:
    • common.ip2int() - replace with common.ipToInt()
    • common.cb() - replace with common.once()
    • common.extractCallback() - replace with common.unsafeCallback()
    • common.cbUnsafe() - replace with common.unsafeCallback()
    • common.cbExtract() - replace with common.safeCallback()
    • common.crcSID() - replace with common.crcToken()
    • common.generateSID() - replace with common.generateToken()
    • common.validateSID() - replace with common.validateToken()
  • Functions that can be replaced with util.deprecate() available in Node.js:
    • common.deprecate()
    • common.alias()

Fixed

  • Functions common.clone(), common.deleteByPath(), and
    common.mergeObjects() throwing when used on objects without prototype.