caolan/async

async package should distribute both cjs and esm

Open

#1,879 opened on Nov 15, 2022

View on GitHub
 (1 comment) (7 reactions) (0 assignees)JavaScript (2,398 forks)batch import
help wanted

Repository metrics

Stars
 (28,067 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

There is no real need for async-es package. It ends up complicating async usage downstream especially for projects which emit both cjs and esm. And to complicate things, async-es has a main entry which points to esm (without indicating type: 'module'), so it can't be used for cjs scenarios.

Recommended:

Update the async package.json with:

  1. main pointing to commonjs. (this is only for backwards compatibility.)
  2. module pointing to esm. (this is only for backwards compatibility.)
  3. exports map explicitly listing the valid imports and the cjs/esm/d.ts files to resolve to.

Contributor guide