Changelog
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
radashi@12.6.2 - 2025-08-20
Details
Fixed
- (range) Ensure
end
parameter works when 0 in 9c8ffa0
radashi@12.6.1 - 2025-08-09
Details
Fixed
- (group) Use
Object.create(null)
for the returned object in 5db8c37
radashi@12.6.0 - 2025-06-26
Details
Added
- Add
assert
function in c318129 - Add
escapeHTML
function in 9ad9c0b - Add
queueByKey
function in fb30703 - Add
Semaphore
class in 5f733db - Add
parseDuration
andparseQuantity
functions in 95e1336 - Add
promiseChain
function in f64fa07
Changed
- (group) Pass array index to callback in 6d66395
Fixed
- (selectFirst) Filter out null from return type when no condition is given in 73cb995
- (isIntString) Prevent incorrect type narrowing in fafd68a
radashi@12.5.1 - 2025-05-23
Details
Fixed
- (set) Avoid mutating nested objects without first cloning them in fc3c7c9
- (set) Prevent prototype pollution in 8147abc
radashi@12.5.0 - 2025-05-15
Details
Added
Changed
- (cluster) Use tuple types for common size constants in ca2abdd
Fixed
- (mapify) Pass the actual array index to callbacks in a83a72d
- (cluster) Avoid infinite loop when size is
0
in 214ce5d
Types
- Handle object types in CompatibleProperty in 7f72da3
radashi@12.4.0 - 2025-03-16
Details
Added
- Add
isBigInt
function in 05ae69a - Add
remove
function in e29c59e - Add
isAsyncIterable
function in d3c69d7 - Add
memoLastCall
function in 5848451 - Add
toResult
function in 66299bd
Types
reduce
accumulator type when no initial value is given in 7a14bf6
radashi@12.3.4 - 2025-01-26
Details
Fixed
- (reduce) Align with native reduce behavior + perf improvements in 1bc47b7
radashi@12.3.3 - 2025-01-11
Details
Types
- Let
map
callback return aPromiseLike
object in 1c679b3
radashi@12.3.2 - 2025-01-10
Details
Fixed
- (shuffle) Correction to Fisher-Yates implementation in 5df2dc8
radashi@12.3.1 - 2025-01-07
Details
Fixed
- (parallel) Avoid range error with empty array in f16445d
radashi@12.3.0 - 2024-12-01
Details
Security
- Pin cspell version in a33e5a4
Added
- Add
signal
option toretry
andparallel
in 73a4e90 - Add
isClass
function in 2d1b3b2 - Add
isNullish
function in 7470f9d - Add
cartesianProduct
function in 84dd509 - Add
isUndefined
function in d527d98 - Add
timeout
function in 6a0ba7e - Add
dedent
function in 14132e5
Changed
- (parallel) Clamp the limit between 1 and array length in b4854f6
radashi@12.2.3 - 2024-11-12
Details
Fixed
- (all) Be more lenient, reduce memory usage in e6accd8
radashi@12.2.2 - 2024-11-10
Details
Types
- Export
PromiseWithResolvers
type in a2a5da1 - Improve
isEmpty
signature in b95cb73 - Narrow return type of
first
andlast
in 665ba72 - Improve
draw
signature for non-empty arrays in fee290a
radashi@12.2.1 - 2024-11-09
Details
Types
- Improve signature of
shake
in 8fe71d8 mapValues
index signature handling in 2ade9be- Let
zipToObject
receive readonly arrays in 2c68597
radashi@12.2.0 - 2024-11-01
Details
Added
- Add
isIntString
function in fa500d3 - Add
isPlainObject
type guard in ddae618 - Add
round
function in eadf5d0 - Add
mapify
function in b82b292 - Add
unzip
function in dc0a546 - Add
flip
function in 66a71b0 - Add
once
function in 3401240 - Add
lerp
function in 072778f - Add
isMap
function in 4f2e48c - Add
isRegExp
function in 58e7d96 - Add
isSet
function in 73e70c1 - Add
isWeakSet
function in aacd5be - Add
isWeakMap
function in f32cfd5 - Add
traverse
function in 2231c0e - Add
cloneDeep
function in 46ee7c7 - Add
castMapping
function in 27382bb - Add
clamp
function in 7f4a449 - Add
castArray
andcastArrayIfExists
in 8758ed7 - Add
castComparator
function in ddc114c - Add reverse argument to
castComparator
in 1d7937e - Add
isBoolean
function in adc419d - Add
noop
andalways
functions in eb77c8f - Add
similarity
function in dac01cc - (throttle) Add
trailing
option in 0480a16 - (throttle) Add
trigger
method to ThrottleFunction in ac3f6d9 - Add
withResolvers
ponyfill in 79f1ac7 - (debounce) Add
leading
option in 942057e - Add isResult, isResultOk, and isResultErr functions in 08d4329
- Add
isError
function in c772099
Changed
- (intersects) Let
identity
callback return any value in 49a0dc4 - (unique) Let
toKey
return any kind of value in 3fd8446 - (select) Let
condition
be undefined in dc74ace - Replace
matchKeys
withfilterKey
in 3652c3e - (filterKey) Accept null/undefined filter in b10ad10
- Add selectFirst in f792633
- (pick) Accept a callback for advanced picking in b9dc648
- (mapify) Provide an index argument to the callbacks in f010ad4
- Use native AggregateError if available in 5668b85
Fixed
- (retry) Stop using
range()
in 5d60893 - (assign) Remove inefficiencies in loop in 99274cc
- (set) Avoid false positive of array index in path in ff0c3cf
- (shake) Stop using
Omit
on return type and givefilter
parameter a safer type in e6f75aa - (series) Allow
items
param to be a readonly array in 5114eb2 - Copy
is-plain-obj
implementation in 08a18e2 - Avoid
isObject
for internal use in 3b6a67c - (isArray) Work with
readonly T[]
types in 88c12b6 - (keys) Improve perf by avoiding excessive array allocations in f0e06ba
- Ensure
mapValues
andgroup
work together in 630f9ef - Use typeof in
isFunction
in 6ad96f4 toInt
andtoFloat
should not throw on symbols in cafc7fc- (toggle) Handle falsy input as expected in 547c6f3
- (assign) Fix overriding a nested object with null in 30c42e9
- (crush) Fix handling of period-containing property names in a5e5180
- (toggle) Use -1 as index for
toKey()
with toggleditem
in 10ee12d - (pascal) Handle camel-cased strings correctly in a1c8822
Performance
- Avoid excessive array allocation in
fork
in 88807cc - Make
template
faster in 8e4eb5e - (series) Avoid object spread in loop in d3b6331
- (cluster) Avoid an array allocation in 978789d
- (replace) Avoid creating 2 intermediate arrays in 20daf2a
- (merge) Avoid arrow function in loop and avoid calling user-provided key generator more than once per item in 1437d19
- (replaceOrAppend) Avoid creating 2 intermediate arrays in 26ecbc7
- (shuffle) Use the Fisher-Yates algorithm in 27b1710
- (merge) Improved handling of large arrays in d8f7281
Types
- Let
filterKey
acceptkey: keyof any
in 73ac8bb - Add
TryitResult<T>
type in f044364 - Add
MemoOptions<T>
type in 877a1e4 - Export
UppercaseKeys
andLowercaseKeys
types in 96b28b9 - Let
zip
accept readonly arrays in f7d93cc - Improve the
isArray
return type forunknown
input type in ef14440 select
return type when no condition is defined in ab76d65- Add
FilteredKeys
type in 6a6f899 - Improve the return type of
filterKey
in bc298c6 - Handle tuples in
isArray
return type in 9257535 - Make
select
more option-friendly in c9cfcd0 - Let
shift
accept a readonly array type in 5e19d66 - Remove type constraint for mapped array passed to
sum
in dea0f50 - Make
assign
return type more accurate + addAssign
type in f1e4957 - Add Ok/Err/Result/ResultPromise types in f5db070
- Align
isPromise
return type with its logic in d6e0dff - Publicize the
Falsy
type in 736d334 - Avoid inferring
memo
return type fromkey
option in 7b4656e - Allow readonly array in
omit
function in a88fa1b