when v3.0.0 Release Notes

    • ๐Ÿ†• New internal architecture with significant performance improvements and memory efficiency
    • ๐Ÿ†• New APIs
      • [when.try](docs/api.md#whentry), [when.lift](docs/api.md#whenlift), [when.reduceRight](docs/api.md#whenreduceRight), [when.iterate](docs/api.md#wheniterate), [when.unfold](docs/api.md#whenunfold), [when.race](docs/api.md#whenrace)
      • [promise.with](docs/api.md#promisewith), [promise.else](docs/api.md#promiseelse), [promise.delay](docs/api.md#promisedelay), [promise.timeout](docs/api.md#promisetimeout), [promise.progress](docs/api.md#promiseprogress)
    • ๐Ÿ†• New liftAll variants for lifting all of an object's functions in one shot, eg. var promisedFs = node.liftAll(require('fs'))
      • [fn.liftAll](docs/api.md#fnliftall), [node.liftAll](docs/api.md#nodeliftall), [callbacks.liftAll](docs/api.md#callbacksliftall)
    • when.Promise public, inheritance-friendly, Promise constructor
    • ๐Ÿ†• New [ES6 Promise shim](docs/es6-promise-shim.md)
    • โฌ†๏ธ Check out the [tips for upgrading to 3.0 from 2.x](docs/api.md#upgrading-to-30-from-2x)