NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3887 most downloaded on npm
A Promise-compatible abstraction that defers resolving/rejecting promises to another closure.
Last release 6 months ago
24 Mar 2026
Ships unpredictably
gaps range from 2 weeks to 2.5 years
Nearly every release is documented
notes for 10 of 10 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
10 releases · first in 2022
One column per quarter.
migrate to esm, update dependencies (#11) (21dfbc504dbfbd205f87605b21a089697f328ac0) @kettanaito
support esm (#9) (b30f1b683311030e92fcdd08d2bd6574d652b77f) @kettanaito
improve Promise compatibility (#6) (fcd0feeed2221a84cb0354d9a57c42bc32e7ca4c), @jonaskuske
Deprecated: Removes DeferredPromise.result. Access the result by awaiting the promise instead.
Deferred promises are now implemented via the deferred executor function. There are no changes to the existing public API.
createDeferredExecutor to use this library with any Promise.const p = new DeferredPromise<number>()
.then(() => 'hello')
// The input must be "number".
p.resolve(5)
// the output is "string"
// (the result of the "then" chain)
await p // "hello"
DeferredPromise.result. Access the result by
awaiting the promise instead.resolved promise state is replaced by
fulfilled, which is the correct promise state representation per
specification.## v1.3.0 (2022-10-20) ### Features - do not throw on illegal state
IllegalStateError: set custom name for instanceof matching
throw IllegalStateError upon illegal state
improve methods chaining compatibility
## v1.1.0 (2022-09-26) ### Features - support ".finally()"
add initial DeferredPromise implementation
DeferredPromise implementation (512313d55168022b831a5cdba95dc03cf087c1eb)This is a 1.0 release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →