I understand your point. A working package is of course not a priority to update, but I remember, when I started web development 6 years ago, a lot of my understanding came from opening package, wether meteor’s or not, and read it, read it read it. It might be good to keep our codebase up-to-date in this regard too.
In addition to that, I disagree with you about everything being transpiled to ES5 : since Meteor 1.8
evergreen version, two bundles are now transpiled, the modern one is able to take advantage of a more modern and structured code.
mutables, I’m thinking in particular of the
alanning:role package, where function parameters are being reassigned in all direction. That’s not much because it works, but in bigger packages, ensuring a better code quality in regards of more modern and battle tested paradigms like FP is, imho, a good things to do while we’re going to update, re-maintain and modernize those packages we love, in addition to making the code more robust and easier to test.
lodash are heavy, slow and completely and very easily replacable by native ES6+ functions (Object.assign, keys, entries, values, Array.prototype.map, forEach, some, includes, reduce, filter, etc). Even pipelines and composed functions are so easy to rewritte without needing a dependency of dozens of
kb. In addition, many package and modules uses either one or the other of those big libraries resulting in the absolute stupidity of having 2 or more of them in our bundles.
@captainn Actually, for I don’t know what reason, when adding
alanning:roles in your project, it loads, if I remember well, the 1.2.0 version instead of the 2.0 by default. And the underscore removal has never been merged, I also rewrotte the package locally but still, that’s not a long-term valid solution for the community imho.