-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove bluebird from dependencies #5
Comments
ES6 promises suck. And even though this is highly subjective, it's used in both dependencies of this project, as well this project for iterating over promises. On a more serious note - they are slower and have no utilities what so ever. Because I'm biased, bluebird implementation is way better and it is also used in every other project that depends on this - it's used here.
|
My suggestion was to make the library consumer provide the Promise polyfill of their liking. Bluebird is giant compared to other polyfills, 18x bigger (170kb vs 9kb before minification) than the one I currently use. |
Gzip helps with the size + prod build is even smaller. I suggest creating 2 bundles - vendor and app code. Then vendor is loaded and cached once for a year and you dont have to sacrifice functionality for a little smaller bundle. Also cdn can serve it all. As for polyfilling it - I havent found a good solution to overload base babel promise polyfill. Maybe you can help me here? It has to work on both server side and client side, do not export default babel polyfill (should be library of choice). If you can help with that - then I will add it to readme and remove bluebird as there would be a working solution for bundling it in another way
|
About polyfilling check the end of this page https://github.com/babel/babel-loader |
I'm also interested in this, i notice the final size increased a lot due to bluebird being included as an dependency. |
Please take a look at #10 |
closed via 2bc1c45 |
ES6 includes a Promise implementation and even though bluebird one is nice, this library doesn't really need it at all.
The text was updated successfully, but these errors were encountered: