This repository was archived by the owner on Feb 26, 2024. It is now read-only.

Description
We have been dealing with issues with trying to get Bluebird to be our global promise library and still use Zone.js in our upgraded app. Basically, when following the instructions in the documentation for adding Bluebird.js to the ZoneAwarePromise, Bluebird gets overridden as the window.Promise library with the default Promise Library. This causes the browser patch to not work since it doesn't have the setScheduler function.
To fix this, you downgrade to 0.8.17 and everything works again. The code that breaks this is here v0.8.17...v0.8.18#diff-c87353777ac53dcde41fac9008e56425, but I can see that is needed to allow for 3rd party libraries using the corejs/es6/promise shim. I am not sure the exact way to fix this, but I would be open to working on it if someone can point me to accommodate both options.
To see this in action, see the below jsBins:
Working: https://jsbin.com/zovapulofa/1/edit?html,console
Broken: https://jsbin.com/zarefecaha/edit?html,console
The only difference is the version of zone.js. You can type window.Promise into the console to see the current type of the global promise.