Awesome
Introduction
This is a drop-in replacement for Q version 1.x that delegates to bluebird 3.4.6. Enjoy better stack traces, performance and memory usage without changing your existing legacy code.
Installation:
npm install bluebird-q
Usage:
var Q = require("bluebird-q");
API
Additionaly to Q APIs following methods are availible on Q object:
- Q.getBluebirdPromise(): Returns native bluebird Promise
Testing
Clone this repository and then run npm install && npm test
in the cloned directory root.
Caveats
dispatch
,progress
andQ.makePromise
are unimplemented- Currently relies on
Object.defineProperty
so cannot be used in browsers that don't support ES5 - Performance of Q-specific methods is not yet optimized e.g.
nfapply
nfcall
nfbind
npost
nsend
ninvoke
nbind
nmcall
fapply
fcall
fbind
denodeify
nmapply
mapply
post
send
mcall
invoke
- ....
- However bluebird-specific methods that don't collide with Q names are still available e.g.
Q.promisifyAll
- A few original tests had to be modified in spec/q-spec.js, you can find these tests by searching for "Test modified"