- Fixes #21, regarding the absence of call to
AsyncGenerator.return()
inasyncGeneratorMap
when 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
Iterable
as argument to make them also take anAsyncIterable
. - Changed most of the functions that used a
concurrency
argument to allow them to take aQueue
instead. - Added
ordered
argument tofind
,findIndex
,findLimit
andfindIndexLimit
. - Added new functions
filterGenerator
,mapGenerator
,asyncIterableWrap
,queueMicrotask
, andtoArray
. - Fixed
delay
anddelayCancellable
inconsistencies due tosetTimeout
usage. Now they use corejs'setTimeout
implementation. - Added Typescript declarations.
- Fixed bug in
forEachLimit
- Performance improvements. Notably the
Queue
class 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.