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
Upgrading Node.js #5124
Comments
Fibers' tests fail when run in Node 4.0, at least on my computer. I'm also running El Capitan, so there could be another issue going on. EDIT: Did some additional testing and created an issue laverdet/node-fibers#242 |
Getting on the LTS builds of Node looks like a really good idea for Meteor. (18 months of patches and then a 12 month security and critical bug fix period for a total of 30 months support.) Its worth mentioning the huge speed and memory gains of Node v4 over 0.10, achieved by a mix of V8 4.5 and improvements to the Node/io.js code base over the last year. |
I have the same problem. What the highest version of NodeJS we can use with Meteor? I guess |
+1 this is very much needed and the longer it takes the more hurt it will be |
+1, in meteor world, we can not really benefit the Progress of nodejs :( |
+1 |
1 similar comment
+1 |
I'm also really excited about this, but I'm curious if there are any particular new features that people are more excited about than others. Specific compelling motivations will really help us prioritize this work against other projects! In my mind the biggest hurdles are getting Fibers to work (unknown difficulty) and getting NPM packages with binary dependencies to update to the latest V8 native embedding API. |
I'm particularly interested in the ES2015 features of Node 4, so I can develop ES2015 code without Babel.js and etc. Right now there seem not to have a good way of doing ES2015 + Meteor.js. Thanks, @benjamn ! |
Using ES2015 does not seems to be a good reason, because on when coding on the client, or isomorphic, you're still stuck to babel. The better reason I see is compatibility with NPM modules. If you look at that, you also have to consider possible incompatibilities, so I guess is a kind of trade-off. Since node is changing very fast, though, I'd suggest to not lag too much. |
@benjamn The real deal here is not and should not really be about features. Node is finally seeing proper updates to its core and is at long last catching up and staying up to date with v8 releases. No matter what those releases bring in features, if we want to follow good modern development and deployment/ops practices and also be a good citizen of the Node community there is no reason to stay behind. We all upgrade all the software that we use regularly, for many good reasons, and now is the time to start moving to Node 4.x and develop plans and systems to make Node upgrades easier and more seamless in the future. |
@benjamn There are a lot of performance improvements and if we move to Node 4.x faster, it will allow for us to use the native functions rather than relying on a transpiler for certain functionality. Also, if Meteor gets upgraded to Node 4x, it should gain more adoption because you can write a blog post about it ;) And if people are wanting to use the latest node and look for a platform or framework to use and they see Meteor is still at 0.10.x, it can make them stray away from it. |
@benjamn I was able to confirm that Fibers 1.0.7 still works in Node 4.1.0. |
(I'm concerned about fibers blocking node upgrading, might be a good idea to start thinking about Maybe call 1.2 "2.0" and get it over with (the missing jquery+tracker is breaking things anyways, following semver) |
ʕつ ͡◔ ᴥ ͡◔ʔつ |
Just to prevent further speculation, fibers work perfectly well with Node 4.0 and will not be a barrier to upgrading. |
Would love to see Meteor operating on top of Node.js 4+. It's a bit of a shame that the most advanced JS framework still depends on version of node outdated years ago. |
@evenfrost Just to clarify -- Node 0.10.x was not an outdated version of Node. It is still the version that most production deployments of Node run on and it has been and still is fully supported. Node 0.12.x took years to develop (or rather finish up because momentum of contributions and excitement about it had dried up) and its adoption has also been going slowly, from what I can tell, one reason certainly being that it still did not ship with an up to date version of v8. |
Another document to add on to look at. @benjamn keep these changes in mind between v0.10 and v4: |
👍 |
3 similar comments
+1 |
+1 |
+1 |
+1 Node v4.2.0 LTS is released https://nodejs.org/en/blog/release/v4.2.0/ |
+1 security, security, security. performance. |
+1 |
1 similar comment
+1 |
Yes, note that those PRs were posted between the previous two comments! |
With 3 PRs, does that mean Meteor is getting support for each version of Node? Or is it whichever gets finished first gets support? |
I guess, commits which apply to all node versions is pushed to repo immediately, and for now we have 3 version to choice? |
It happened, Node 6 is out! |
What a long issue! Should we close this and open another one? |
Guys, relax. The difference between Node version 4, 5 and 6 are relatively minor, and so if Meteor can support one, it can and will support all others. Ben created PRs for every currently active and supported Node version, but the fundamental part of the work is about making Meteor work with any (recent, non-legacy) Node version, and from there basically everyone should be able to freely select whichever one fits their goals and intentions best (i.e. 4.x if you don't care for bleeding edge Node, 6.x if you do; 5.x is not going to stick around for very long as it's not an LTS version). So come and check out and help with the PRs if you're interested and you can, but if not, just rest assured this is being worked on and prioritized appropriately and I'm pretty sure Ben (and/or others working on this) will keep everyone posted on any meaningful progress. |
http://node.green/ <-- there are certainly some serious improvements as versions evolve... but the big one is moving from |
jsdom (https://github.com/tmpvar/jsdom) requires Node >= 4 and this has been a requirement as far back as 4.x. Eagerly awaiting this bump. No jsdom = no enzyme (https://github.com/airbnb/enzyme) for testing React components. |
|
+1 |
1 similar comment
+1 |
The next release of Meteor (1.4) will include Node 4. Please follow the latest developments here. |
This has been released. Meteor 1.4 and newer has node.js 4 (TLS). |
_45 Upvotes_ So, Node.js now has a fully merged codebase between itself and io.js and they released 4.0 which is meant to be LTS.
Since that will be the continuing track for the future, it would probably be a good idea to upgrade to node v4. But, it will be a large task since there are a lot of changes between
10.40.0
and4.0.0
.To me, it makes sense to upgrade especially since there are built-in ES2015 features and Meteor 1.2+ is all about ES2015
EDIT:
Breaking changes between
0.12
and4.0
can be found hereBreaking changes between
0.10
and4.0
can be found hereThe text was updated successfully, but these errors were encountered: