Skip to content

Releases: toss/es-toolkit

v1.42.0

17 Nov 03:59

Choose a tag to compare

Released on November 17th, 2025.

  • Added new async utilities: filterAsync, flatMapAsync, forEachAsync, mapAsync, reduceAsync, and limitAsync for handling asynchronous operations.
  • Exported ThrottleOptions and DebounceOptions interfaces for better type support.
  • Fixed isFinite to implement type predicate to narrow type to number.
  • Fixed isSafeInteger to implement type predicate to narrow type to number.
  • Fixed omit to prevent adding index properties to array-like objects.
  • Fixed mergeWith to remove unnecessary nullish coalescing for 100% branch coverage.
  • Fixed compat/updateWith to remove unreachable code and add prototype pollution test.
  • Updated documentation headings for consistency.
  • Improved test coverage for compat/mergeWith, compat/unset, get, toMerged, mergeWith, and compat/intersectionBy with additional edge cases and security tests.

We sincerely thank @Debbl, @wo-o29, @raon0211, @Yeom-JinHo, @sukvvon, and @D-Sketon for their contributions. We appreciate your great efforts!

v1.41.0

24 Oct 08:02

Choose a tag to compare

Released on October 24th, 2025.

  • Enhanced throttle to preserve this context when called as a method.
  • Added type guard support for partition function.
  • Fixed omit to support runtime-determined key arrays with proper overloads.
  • Fixed defaults in compatibility layer to properly handle undefined and null sources.
  • Fixed toSnakeCaseKeys and toCamelCaseKeys to correctly return types for non-plain objects.
  • Fixed toMerged and mergeWith to properly handle shared objects in merge logic.
  • Fixed compat/union to support array-like objects.
  • Fixed compat/updateWith to use get for value retrieval in updater function.
  • Fixed circular import between isMatch and isMatchWith.
  • Fixed find and findLast by simplifying logic and removing unnecessary checks.
  • Fixed takeRight by improving test coverage and removing redundant checks.
  • Fixed curry and curryRight by removing unnecessary type assertions.
  • Fixed isEqualWith and mapKeys by removing unnecessary type assertions.
  • Improved performance for meanBy by removing intermediate array creation.
  • Updated build system to use UMD format instead of IIFE for browser builds.
  • Fixed numerous documentation examples across compat modules.
  • Improved test coverage with additional test cases for edge cases and compatibility.

We sincerely thank @the5thbeatle, @wo-o29, @hwibaski, @manudeli, @raon0211, @dayongkr, @D-Sketon, @yoouungyoung, @Dohun-choi, @sukvvon, @zoulou00, and @sen2y for their contributions. We appreciate your great efforts!

v1.40.0

08 Oct 11:46

Choose a tag to compare

Released on October 8th, 2025.

  • Enhanced sumBy to pass the element index to the getValue callback function.
  • Improved performance for uniq function.
  • Fixed cloneDeepWith to handle runtime errors in environments without Blob support and correctly clone Boolean, Number, and String objects.
  • Fixed omit to avoid unnecessary deep cloning, improving performance.
  • Fixed toCamelCaseKeys to properly handle PascalCase type conversion.
  • Fixed toPath to correctly handle arrays and non-string inputs.
  • Fixed repeat to validate and handle invalid repeat counts.
  • Fixed sortedIndexBy to properly handle default iteratee.
  • Fixed some predicate check to correctly handle null and undefined cases.
  • Fixed compatibility issue in compat/unset with nonexistent paths.
  • Fixed several JSDoc issues across multiple functions including return types, parameter descriptions, and method names.
  • Improved documentation clarity and consistency across multiple functions.
  • Enhanced test coverage with additional test cases for compat functions and edge cases.
  • Updated build configuration and CI workflows.

We sincerely thank @wo-o29, @D-Sketon, @HidenLee, @yoouung, @manudeli, @dayongkr, @Li13, @nicklemmon, @sen2y, @miinhho, @raon0211, @joshkel, @jgjgill, @mlnwns, @Dohun-choi, @PinkChampagne17, @sukvvon, @YOUNGHO8762, @caseBread, @Jeongeun-Choi, @artechventure and hoyyChoi for their contributions. We appreciate your great efforts!

v1.39.10

17 Aug 08:36

Choose a tag to compare

Released on August 17th, 2025.

  • Fixed defaultsDeep to properly handle deep merging of objects in arrays
  • Fixed several documentation issues and examples across multiple functions

We sincerely thank @wo-o29, @thwlckd, @kilimandzharov, and @dayongkr for their contributions. We appreciate your great efforts!

v1.39.9

10 Aug 13:39

Choose a tag to compare

Released on August 10th, 2025.

  • Fixed mergeWith to properly handle null values returned from customizer function.
  • Fixed cloneDeepWith to properly handle customizer returning null values.
  • Fixed some of the documentation issues.

We sincerely thank @raon0211, @joshkel, and @Najeong-Kim for their contributions. We appreciate your great efforts!

v1.39.8

25 Jul 01:55

Choose a tag to compare

Released on July 25th, 2025.

  • Aligned the types of fill, pullAll, pullAllBy, pullAllWith, pullAt, remove, and reverse in our compatibility library with the latest Lodash types (@types/lodash v4.17.20).

v1.39.7

08 Jul 15:18

Choose a tag to compare

Released on July 9th, 2025.

  • Fixed a compatibility issue with Lodash's debounce and throttle functions.
  • Remove useless source map for reduce bundle size.
  • Fix some of the documentation issues.

We sincerely thank @dayongkr, @cobocho, @raon0211, and @D-Sketon for their contributions. We appreciate your great efforts!

v1.39.6

02 Jul 14:12

Choose a tag to compare

Released on July 2th, 2025.

  • Fixed handling of null/undefined values in values function.
  • Fixed type safety in compat/get by adding GetFieldType utility type.

We sincerely thank @raon0211, @dayongkr, @yhb-flydream, @ssi02014, @JeongHwan-dev, and @guesung for their contributions. We appreciate your great efforts!

v1.39.5

24 Jun 10:36

Choose a tag to compare

Released on June 24th, 2025.

  • Fixed type compatibility issues between es-toolkit/compat and @types/lodash.
  • Improved documentation.

We thank @raon0211, @dayongkr, @sukvvon, and @yhb-flydream for their contributions.

v1.39.4

21 Jun 06:53

Choose a tag to compare

Released on June 21st, 2025.

  • Fixed prototype pollution issue in es-toolkit to enhance security.
  • Enhanced build system to provide compat/* functions in CommonJS format by default.

We thank @raon0211, and @dayongkr for their contributions.