-
-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
Adding Node V14 Formula #63410
Adding Node V14 Formula #63410
Conversation
Does it meet all requirements in https://docs.brew.sh/Versions? |
Yes. 14 is the next LTS version of node and meets all the version requirements. |
Co-authored-by: Jason Karns <jason.karns@gmail.com>
I was about to submit a handful of code suggestions regarding npm, but I'll just ask it here instead. Question for maintainers: If that is indeed the case, then this PR should be adjusted to remove the homebrew-specific npm installation and should use the node@12 formula as a guide. Separately, I'll add my (non-maintainer) 👍 to having v14 as a versioned formula, since v14 will be one of the LTS releases of node. It seems a helpful practice for brew to have the LTS releases available as versioned formula whenever the latest version of node is odd-numbered (ie, will not be supported longterm by nodejs). |
I'm no node expert; just a user. The main node formula switched to v15, and no one had started a v14 pull request yet, so I got one started. It's just the last v14 commit from master with the modifications I saw in the other LTS formulas. I'm hoping the maintainers from the main formula can chip in. I'm not really sure what their intention is with NPM version or the python build environment. The build takes quite a bit of time, so it would be a bit of a learning curve for me to figure it out. |
From our docs:
So basically all of your current Also, to answer the other question:
|
Thank you for working on this! I work on some projects that weren't ready for node 15 yet, so Homebrew's upgrade kind-of broke my local setup. Having a versioned formula for node 14 would be much appreciated. |
Making the post_install look like the rest of the versioned node formula
I've made that change. Thanks. |
Matching the other versioned node installs even more.
I've tested your formula locally and tried to link it instead of the
3808 seemed like an unreasonable high number of files to me. The
|
The install is only 3 lines long and is pretty much identical to the node 12 formula? Any idea what needs to change? |
Interesting. The node@10 formula returns 4787.
|
I don't really know how |
@diogoazevedos It looks like you have quite a bit of experience maintaining the node@12 formula, do you happen to know the reason for the high number of linked files? Is it normal for node? |
v14.15.0 will be the first LTS - v14.14.0 is not. Probably worth switching to/waiting for that: nodejs/node#35746 (will be later today) |
The problem with waiting for v14.15.0 is that the master branch already moved to v15. Myself and I'm sure plenty of other people locked themselves into v14 since that was the next LTS branch and are now stuck with a broken build for a month or two. What's the harm/risk in setting up a node@14 formula now? The node@14 formula will be updated to v14.15.0 whenever that comes out. I will personally guarantee you I will submit the 2 line pull request to upgrade to v14.15.0 whenever it comes out. tl;dr. There is no risk/harm in setting up a v14 formula now (there is no dispute that v14 is the next LTS release and will be supported until 2023-04-30), but there is risk/harm in waiting for those that rely on homebrew for their node installs. |
I've no idea why so many files are linked, but this is normal. |
If that is indeed in the next couple of days, let's do this: let's update this PR to 14.15.0 when it comes out, and we'll merge then.
I don't see where “a month or two” comes from. |
It was just my pessimistic guess as to when the next minor release of the node would come out. Yes, I realize it was a bit hyperbolic and I'm sorry about that, but I'd like to switch back to v14 from v15 in my local setup as soon as possible. If it is later today, then yes; it wouldn't be much of a burden to wait. |
Co-authored-by: Diogo Azevedo <diogoazevedos@gmail.com>
Brew really isn't trying to provide versions of everything so if you need a specific version a tool like Docker might be a better fit. |
I get that, and I use docker for my local infrastructure for this specific reason. Believe me, I don't like installing libraries directly on my machine. I feel Node is a bit different and past precedent (a formula for node@10 and node@12) indicate that generally, the homebrew community has agreed. Is the plan to remove node@10 and node@12 then? |
Node 10 will be EOL in April 2021, so it would be deprecated then, and removed at some later point |
The point was more "if your environment breaks on updates, you might want to avoid a rolling release package manager". LTS releases could be in brew for longer, but the focus for brew is really on the latest releases of all packages. |
Using |
|
Cool. I didn't know that existed. Thank you. Side note though is the plan still to add merge this change in after v14.15.0 is released? or is the plan to stop adding node LTS versions and deprecate the existing ones as they reach end of life? |
This versioned formula meets our requirements, so:
|
It is now out :) |
Finally! /sarcasm @billinghamj Now I feel silly. My bad. |
Thanks @eveenendaal for your pull request! |
brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingbrew install <formula>
)?