- Fixes #21, regarding the absence of call to
AsyncGenerator.return()inasyncGeneratorMapwhen iteration is interrupted.
- Fixes #19
-
Major re-design of the API. This re-design was made with the following goals:
- Avoiding function naming conflict with popular libraries (notably lodash)
- Simplifying the API by removing duplicate functions
- Proposing safer default parameters regarding concurrency handling
See the migration guide to know how to migrate to version 2.X.
-
Added
reflectAsyncStatus()function.
- Fixed typescript declarations.
- Fixed Typescript definitions for
reduce()andreduceRight(). - Minor adjustments to the documentation.
- Fixed issue where the typescript definition file was not exported to npm
- Changed most of the functions that took
Iterableas argument to make them also take anAsyncIterable. - Changed most of the functions that used a
concurrencyargument to allow them to take aQueueinstead. - Added
orderedargument tofind,findIndex,findLimitandfindIndexLimit. - Added new functions
filterGenerator,mapGenerator,asyncIterableWrap,queueMicrotask, andtoArray. - Fixed
delayanddelayCancellableinconsistencies due tosetTimeoutusage. Now they use corejs'setTimeoutimplementation. - Added Typescript declarations.
- Fixed bug in
forEachLimit
- Performance improvements. Notably the
Queueclass will now avoid calling thedelay()function and will immediately trigger any pending task as soon as a task is finished. This change indirectly impacts most functions in this library as they internally useQueue. This change can produce minor behavior changes but is not considered a breaking change. - Improved tests.
- Altered UMD deployment to only support browsers that support async/await language feature. The reason is that bundling both regenerator-runtime and all the necessary shims is too complex. For older browsers it is easier to just process the lib with Babel then add regenerator-runtime and core-js.
- Fixed map, filter and forEach behavior in case of exception. Pending tasks were not cancelled in case of exception and the behavior in that case was not documented as opposed to other functions.
First version.