Skip to content

v3.0.5

Choose a tag to compare

@elusivecodes elusivecodes released this 15 Aug 06:43
· 19 commits to main since this release

Patch release focused on utility correctness, edge-case handling, and release safeguards. No exported APIs were added or removed.

Fixed

  • Updated intersect() to handle empty input and preserve first-array order while removing duplicates.
  • Updated merge() to support self-merges and very large arrays.
  • Improved range() floating-point endpoint handling and wrap() support for iterable values.
  • Preserved call-site context across function wrappers, corrected stale delayed calls, and hardened once() behavior for errors, re-entrancy, and promises.
  • Corrected randomInt() behavior for fractional and large bounds, and improved toStep() handling of scientific notation.
  • Hardened object merge and dot-path utilities against inherited properties and prototype-shaped keys, including wildcard and overwrite handling.
  • Updated escapeRegExp() for Unicode-mode compatibility and randomString() for complete Unicode code points and empty-character validation.
  • Expanded isPlainObject() support for null-prototype and shadowed-constructor objects.

Changed

  • Added --forbid-only to the test command.
  • Added CI validation that generated bundles remain current.
  • Updated source map output naming and added an npm release-age policy.
  • Updated @fr0st/eslint-config from 3.0.0 to 4.0.0.
  • Updated eslint from 10.1.0 to 10.8.1.
  • Updated mocha from 11.7.5 to 11.8.0.
  • Updated rollup from 4.60.0 to 4.62.4.
  • Updated terser from 5.46.1 to 5.50.0.