版本发布 8
Released on March 4th, 2026. - Reverted the return type of `sample` to not include `undefined`. - Fixed Deno install command to include `jsr:` prefix. (\[\#1627\]) We sincerely thank @mwln for their contributions. We appreciate your great efforts\!
Released on January 16th, 2026. - Added `shouldRetry` option to `retry` function. (\[\#1585\]) - Added `isEmptyObject` predicate function. (\[\#1584\]) - Added `isNumber` predicate function. - Enhanced error cloning to support `AggregateError`. (\[\#1563\]) - Implemented collection methods for Maps and Sets. - Added bundle size analysis and visualization components to docs. (\[\#1564\]) - Fixed `flattenObject` to retain empty objects and arrays. - Enhanced type safety for `clone` function. - Fixed `clone` error when cloning object with null prototype. (\[\#1570\]) - Fixed array function callbacks to include index and array parameters. (\[\#1561\]) - Fixed `compat/cloneDeep` and `cloneDeepWith` to clone null-prototype objects as regular objects. (\[\#1562\]) - Fixed `compat/clamp` to ensure consistency with lodash. (\[\#1555\]) - Simplified `intersection` filter callback for consistency. (\[\#1582\]) - Fixed incorrect function names and output in `cloneDeep` JSDoc examples. (\[\#1583\]) We sincerely thank @raon0211, @dayongkr, @eunwoo-levi, @matt-oakes, @T3sT3ro, and @D-Sketon for their contributions. We appreciate your great efforts\!
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\!
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\!
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\!
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.
Released on May 5th, 2025. - Added compatibility functions for [bindAll](https://es-toolkit.slash.page/reference/compat/util/bindAll.html), [setWith](https://es-toolkit.slash.page/reference/compat/object/setWith.html), [memoize](https://es-toolkit.slash.page/reference/function/memoize.html), [isNative](https://es-toolkit.slash.page/reference/compat/predicate/isNative.html), [invokeMap](https://es-toolkit.slash.page/reference/compat/array/invokeMap.html), [clone](https://es-toolkit.slash.page/reference/object/clone.html), [cloneWith](https://es-toolkit.slash.page/reference/compat/object/cloneWith.html), and [sortedLastIndexOf](https://es-toolkit.slash.page/reference/compat/array/sortedLastIndexOf.html). - Enhanced [invariant](https://es-toolkit.slash.page/reference/util/invariant.html) function to accept Error instances and added [assert](https://es-toolkit.slash.page/reference/util/assert.html) alias. - Fixed type definitions and empty array handling in [maxBy](https://es-toolkit.slash.page/reference/array/maxBy.html) and [minBy](https://es-toolkit.slash.page/reference/array/minBy.html). - Fixed typo 'Partail' to 'Partial' in [findKey](https://es-toolkit.slash.page/reference/object/findKey.html) type annotation. - Enhanced [max](https://es-toolkit.slash.page/reference/math/max.html) and [min](https://es-toolkit.slash.page/reference/math/min.html) functions to skip NaN, symbol, and null values, and return undefined when all values are skipped. - Fixed sparse array handling in compat functions to match Lodash's behavior. - Improved test coverage and documentation for various functions. - Fixed various documentation issues and typos. We sincerely thank @myungjuice, @scato3, @uniqueeest, @YEONDG, @shren207, @hyesungoh, @kms0219kms, @minjongbaek, @kristian240, @D-Sketon, @Seung-wan, @jiji-hoon96, @raon0211, and @dayongkr for their contributions. We appreciate your great efforts\!
Released on May 4th, 2025. - Fixed an issue in `es-toolkit/compat`'s `throttle` function to match Lodash's behavior by immediately invoking the throttled function when wait time is zero.