All Versions
70
Latest Version
Avg Release Cycle
150 days
Latest Release
3406 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v1.1.0 Changes
November 10, 2014- Adds support for enabling long stack traces in node.js by setting
environment variable
Q_DEBUG=1
. - Introduces the
tap
method to promises, which will see a value pass through without alteration. - Use instanceof to recognize own promise instances as opposed to thenables.
- Construct timeout errors with
code === ETIMEDOUT
(Kornel Lesiลski) - More descriminant CommonJS module environment detection.
- Dropped continuous integration for Node.js 0.6 and 0.8 because of
changes to npm that preclude the use of new
^
version predicate operator in any transitive dependency. - Users can now override
Q.nextTick
.
- Adds support for enabling long stack traces in node.js by setting
environment variable
-
v1.0.1 Changes
- Adds support for
Q.Promise
, which implements common usage of the ES6Promise
constructor and its methods.Promise
does not have a valid promise constructor and a proper implementation awaits version 2 of Q. - Removes the console stopgap for a promise inspector. This no longer works with any degree of reliability.
- Fixes support for content security policies that forbid eval. Now
using the
StopIteration
global to distinguish SpiderMonkey generators from ES6 generators, assuming that they will never coexist.
- Adds support for
-
v1.0.0 Changes
๐ :cake: This is all but a re-release of version 0.9, which has settled ๐ง into a gentle maintenance mode and rightly deserves an official 1.0. ๐ An ambitious 2.0 release is already around the corner, but 0.9/1.0 ๐ have been distributed far and wide and demand long term support.
- Q will now attempt to post a debug message in browsers regardless of whether window.Touch is defined. Chrome at least now has this property regardless of whether touch is supported by the underlying hardware.
- Remove deprecation warning from
promise.valueOf
. The function is called by the browser in various ways so there is no way to distinguish usage that should be migrated from usage that cannot be altered.
-
v0.9.7 Changes
- :warning:
q.min.js
is no longer checked-in. It is however still created by Grunt and NPM. - Fixes a bug that inhibited
Q.async
with implementations of the new ES6 generators. - Fixes a bug with
nextTick
affecting Safari 6.0.5 the first time a page loads when aniframe
is involved. - Introduces
passByCopy
,join
, andrace
. - Shows stack traces or error messages on the console, instead of
Error
objects. - Elimintates wrapper methods for improved performance.
Q.all
now propagates progress notifications of the form you might expect of ES6 iterations,{value, index}
where thevalue
is the progress notification from the promise atindex
.
- :warning:
-
v0.9.6 Changes
- Fixes a bug in recognizing the difference between compatible Q promises, and Q promises from before the implementation of "inspect". The latter are now coerced.
- Fixes an infinite asynchronous coercion cycle introduced by former solution, in two independently sufficient ways. 1.) All promises returned by makePromise now implement "inspect", albeit a default that reports that the promise has an "unknown" state. 2.) The implementation of "then/when" is now in "then" instead of "when", so that the responsibility to "coerce" the given promise rests solely in the "when" method and the "then" method may assume that "this" is a promise of the right type.
- Refactors
nextTick
to use an unrolled microtask within Q regardless of how new ticks a requested. #316 @rkatic
-
v0.9.5 Changes
- Introduces
inspect
for getting the state of a promise as{state: "fulfilled" | "rejected" | "pending", value | reason}
. - Introduces
allSettled
which produces an array of promises states for the input promises once they have all "settled". This is in accordance with a discussion on Promises/A+ that "settled" refers to a promise that is "fulfilled" or "rejected". "resolved" refers to a deferred promise that has been "resolved" to another promise, "sealing its fate" to the fate of the successor promise. - Long stack traces are now off by default. Set
Q.longStackSupport
to true to enable long stack traces. - Long stack traces can now follow the entire asynchronous history of a promise, not just a single jump.
- Introduces
spawn
for an immediately invoked asychronous generator. @jlongster - Support for experimental synonyms
mapply
,mcall
,nmapply
,nmcall
for method invocation.
- Introduces
-
v0.9.4 Changes
isPromise
andisPromiseAlike
now always returns a boolean (even for falsy values). #284 @lfac-pt- Support for ES6 Generators in
async
#288 @andywingo - Clear duplicate promise rejections from dispatch methods #238 @SLaks
- Unhandled rejection API #296 @domenic
stopUnhandledRejectionTracking
,getUnhandledReasons
,resetUnhandledRejections
.
-
v0.9.3 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
tosetImmediate
. #254 #259 - Fix Q's behavior when used with the Mocha test runner in the browser, since
Mocha introduces a fake
process
global without anextTick
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.
- Made
Q.promise
throw early if given a non-function.
- Add the ability to give
-
v0.9.2 Changes
- Pass through progress notifications when using
timeout
. #229 @omares - Pass through progress notifications when using
delay
. - Fix
nbind
to actually bind thethisArg
. #232 @davidpadbury
- Pass through progress notifications when using
-
v0.9.1 Changes
- Made the AMD detection compatible with the RequireJS optimizer's
namespace
option. #225 @terinjokes - Fix side effects from
valueOf
, and thus fromisFulfilled
,isRejected
, andisPending
. #226 @benjamn
- Made the AMD detection compatible with the RequireJS optimizer's