Skip to content

v3.1.3

Choose a tag to compare

@elusivecodes elusivecodes released this 05 Sep 12:52

Patch release focused on utility bug fixes, simpler implementations, and clearer documentation and tests. No utility functions were added or removed.

Fixed

  • Fixed decimal ranges omitting aligned endpoints, such as range(1, 1.4, 0.1) missing 1.4.
  • Recognized plain objects from other JavaScript contexts so deep merges preserve nested fields and copy those objects.
  • Preserved trailing empty slots in nested sparse arrays during deep merges.
  • Handled empty property names consistently in getDot(), hasDot(), setDot(), and forgetDot(), including paths generated by flatten().
  • Kept uppercase words and acronyms together during case conversion, so camelCase('HELLO WORLD') returns helloWorld.
  • Fixed randomInt() rounding up to the excluded upper bound when adding a random offset to a large lower bound.

Changed

  • Simplified range generation, deep merging, partial application, and type checks.
  • Updated the README to reflect current utility behavior and added JSDoc for top-level internal helpers.
  • Consolidated repetitive tests into data-driven cases and made random and timer checks deterministic.
  • Rebuilt the distribution bundles and source maps.