Home

Awesome

p-series

Run promise-returning & async functions in series

Note: You can just use await in a for-loop to get the same behavior. This package was useful before async/await existed.

If you're doing the same work in each function, use p-each-series instead.

See p-all for a concurrent counterpart.

Install

$ npm install p-series

Usage

import pSeries from 'p-series';
import got from 'got';

const tasks = [
	() => got('https://sindresorhus.com'),
	() => checkSomething(),
	() => doSomethingElse()
];

console.log(await pSeries(tasks));

API

pSeries(tasks)

Returns a Promise that is fulfilled when all promises returned from calling the functions in tasks are fulfilled, or rejects if any of the promises reject. The fulfilled value is an Array of the fulfilled values.

tasks

Type: Iterable<Function>

Functions are expected to return a value. If a Promise is returned, it's awaited before continuing with the next task.

Related