All Versions
79
Latest Version
Avg Release Cycle
89 days
Latest Release
2622 days ago

Changelog History
Page 6

  • v1.7.1 Changes

    • โœ‚ Removed leftover internal usages of deferred.then.
    • ๐Ÿ”ง when/debug allows configuring the set of "fatal" error types that will be rethrown to the host env.
  • v1.7.0 Changes

    • ๐Ÿ—„ DEPRECATED: deferred.then [is deprecated](docs/api.md#deferred) and will be removed in an upcoming release. Use deferred.promise.then instead.
    • ๐Ÿ“„ [promise.yield](docs/api.md#yield)(promiseOrValue) convenience API for substituting a new value into a promise chain.
    • [promise.spread](docs/api.md#spread)(variadicFunction) convenience API for spreading an array onto a fulfill handler that accepts variadic arguments. Mmmm, buttery
    • Doc improvements:
      • [when()](docs/api.md#when) and [promise.then()](docs/api.md#main-promise-api) have more info about callbacks and chaining behavior.
      • More info and clarifications about the roles of [Deferred](docs/api.md#deferred) and [Resolver](docs/api.md#resolver)
      • Several minor clarifications for various APIs
    • Internal improvements to assimilation and interoperability with other promise implementations.
  • v1.6.1 Changes

    • ๐Ÿ›  Fix for accidental coercion of non-promises. See #62.
  • v1.6.0 Changes

    • ๐Ÿ†• New [when.join](docs/api.md#whenjoin) - Joins 2 or more promises together into a single promise.
    • ๐Ÿ“„ [when.some](docs/api.md#whensome) and [when.any](docs/api.md#whenany) now act like competitive races, and have generally more useful behavior. Read the discussion in #60.
    • Experimental progress event propagation. Progress events will propagate through promise chains. [Read the details here](docs/api.md#progress-events).
    • Temporarily removed calls to Object.freeze. Promises are no longer frozen due to a horrendous v8 performance penalty. Read discussion here.
      • IMPORTANT: Continue to treat promises as if they are frozen, since freeze() will be reintroduced once v8 performance improves.
    • when/debug now allows setting global a debugging callback for rejected promises.
  • v1.5.2 Changes

  • v1.5.1 Changes

    • ๐ŸŽ Performance optimization for [when.defer](docs/api.md#whendefer), up to 1.5x in some cases.
    • ๐ŸŒฒ [when/debug](docs/api.md#whendebug) can now log exceptions and rejections in deeper promise chains, in some cases, even when the promises involved aren't when.js promises.
  • v1.5.0 Changes

    • ๐Ÿ†• New task execution and concurrency management: [when/sequence](docs/api.md#whensequence), [when/pipeline](docs/api.md#whenpipeline), and [when/parallel](docs/api.md#whenparallel).
    • ๐ŸŽ Performance optimizations for [when.all](docs/api.md#whenall) and [when.map](docs/api.md#whenmap), up to 2x in some cases.
    • ๐ŸŽ Options for disabling [paranoid mode](docs/api.md#paranoid-mode) that provides a significant performance gain in v8 (e.g. Node and Chrome). See this v8 performance problem with Object.freeze for more info.
    • Important: deferred and deferred.resolver no longer throw when resolved/rejected multiple times. They will return silently as if the they had succeeded. This prevents parties to whom only the resolver has been given from using try/catch to determine the state of the associated promise.
      • For debugging, you can use the when/debug module, which will still throw when a deferred is resolved/rejected multiple times.
  • v1.4.4 Changes

    • ๐Ÿ”„ Change UMD boilerplate to check for exports to avoid a problem with QUnit. See #54 for more info.
  • v1.4.3 Changes

    • ๐Ÿ›  Fix for infinite promise coercion between when.js and Q (See #50). Thanks @kriskowal and @domenic
  • v1.4.2 Changes

    • ๐Ÿ›  Fix for IE8 infinite recursion (See #49)