New release 0.9.3 of Q, and musings on future releases

83 views
Skip to first unread message

Domenic Denicola

unread,
Apr 14, 2013, 9:27:39 PM4/14/13
to q-con...@googlegroups.com
I pushed out a 0.9.3 release of Q with a few bug fixes that I thought were fairly critical, among other minor changes:

- Add the ability to give `Q.timeout`'s errors a custom error message. #270 @jgrenon

- Fix Q's call-stack busting behavior in Node.js 0.10, by switching from `process.nextTick` to `setImmediate`. #254 #259

- Fix Q's behavior when used with the Mocha test runner in the browser, since Mocha introduces a fake `process` global without a `nextTick` property. #267

- Fix some, but not all, cases wherein Q would give false positives in its unhandled rejection detection (#252). A fix for other cases (#238) is hopefully coming soon, and any help with that is appreciated---I couldn't figure out a fix for it myself.

- Made `Q.promise` throw early if given a non-function.

---

Other things we are looking forward to fixing soon, presumably in 0.9.4, can be found at

https://github.com/kriskowal/q/issues?labels=&milestone=9&page=1&state=open

As you can see, most of them center around unhandled-rejection tracking. Since introducing console output of unhandled rejections in 0.9.0, some bugs in our tracking code have become more prominent, and we're scrambling to both fix them and to give more control over the process in general. The API is being sketched in https://github.com/kriskowal/q/issues/265 and will probably look something like:

Q.getUnhandledReasons();
Q.resetUnhandledTracking();
Q.stopUnhandledTracking();

---

Other things we are actively working on include compliance with the almost-finished Promises/A+ 1.1 spec, which codifies many edge-cases related to the process of assimilating non-Q "thenables," and also better long stack-trace support, which you can see a demo of at https://gist.github.com/domenic/5325002

Reply all
Reply to author
Forward
0 new messages