Upgrade Node.js to the latest version on Mac OS - macos

Currently I am using Node.js v0.6.16 on Mac OS X 10.7.4. Now I want to upgrade it to the latest Node.js v0.8.1. But after downloading and installing the latest package file from nodejs.org, I found that system is still using v0.6.16 instead of v0.8.1 when I typed "node -v" in a terminal. Is there any step that I have missed? Or, should I thoroughly uninstall the old version before installing the latest one?
BTW, I know that nvm can help to manage the nodejs package
https://github.com/creationix/nvm/
Is there any way to upgrade the Node.js without using it?
I have googled this problem, but it seems to me that there is no very clear answer to this question for the latest Node.js.

Here's how I successfully upgraded from v0.8.18 to v0.10.20 without any other requirements like brew etc, (type these commands in the terminal):
sudo npm cache clean -f (force) clear you npm cache
sudo npm install -g n install n (this might take a while)
sudo n stable upgrade to the current stable version
Note that sudo might prompt your password.
Additional note regarding step 3: stable can be exchanged for latest, lts (long term support) or any specific version number such as 0.10.20.
If the version number doesn't show up when typing node -v, you might have to reboot.
These instructions are found here as well: davidwalsh.name/upgrade-nodejs
More info about the n package found here: npmjs.com/package/n
More info about Node.js' release schedule: github.com/nodejs/Release

If you initially installed Node.js with Homebrew, run:
brew update
brew upgrade node
npm install -g npm
Or as a one-liner:
brew update && brew upgrade node && npm install -g npm
A convenient way to change versions is to use n:
brew install n
To install the latest version of Node.js with n:
n latest
Or, to install the latest LTS version with n:
n lts
Alternatively, you could use nvm instead of n:
brew install nvm
To install the latest version of Node.js with nvm:
nvm install node
If you installed via a package, then download the latest version from nodejs.org.
See Installing Node.js and updating npm.

Because this seems to be at the top of Google when searching for how to upgrade nodejs on mac I will offer my tip for anyone coming along in the future despite its age.
Upgrading via NPM
You can use the method described by #Mathias above or choose the following simpler method via the terminal.
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
After which you may opt to confirm the upgrade
node -v
Your nodejs should have upgraded to the latest version. If you wish to upgrade to a specific one say v0.8.19 then instead of
sudo n stable
use
sudo n 0.8.19
EDIT
Avoid using sudo unless you need to. Refer to comment by Steve in the comments

Go to http://nodejs.org and download and run the installer.
It works now - for me at least.

You could install nvm and have multiple versions of Node.js installed.
curl https://raw.github.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh
and then run:
nvm install 0.8.22 #(or whatever version of Node.js you want)
you can see what versions you have installed with :
nvm list
and you can change between versions with:
nvm use 0.8.22
The great thing about using NVM is that you can test different versions alongside one another. If different apps require different versions of Node.js, you can run them both.

I use Node version manager (called n) for it.
npm install -g n
then
n latest
OR
n stable

Simply go to node JS Website and install the latest version.
Do install latest version instead of the recommended stable version. It will give you freedom to use latest ES6 Features on node.
Can be Found here Node JS.
also to update npm, you will have to use this command.
sudo npm i -g npm#latest
All your projects will work fine.
Update: 2020 another good option is to use nvm for node which can then support multiple versions.
use nvm install --lts to always be able to update to latest node version use nvm ls-remote command to to check new versions of node.
Other option for mac :: brew update && brew install node && npm -g npm

Upgrade the version of node without installing any package, not even nvm itself:
sudo npx n stable
Explanations:
This approach is similar to Johan Dettmar's answer. The only difference is here the package n is not installed glabally in the local machine.

On macOS the homebrew recommended way is to run
brew install node
npm install -g npm#latest

I am able to upgrade the node using following command
nvm install node --reinstall-packages-from=node

There are five different ways (and counting?) to update Node.js on Mac:
Install the newer binary by downloading from nodejs.org
Update Node.js through Homebrew
Command: brew update && brew upgrade node
Update Node.js using Node Version Manager (NVM)
Command: nvm install {version} && nvm use {version}
Update Node.js using n package manager
Command: sudo n latest
Update Node.js through MacPorts
Command (same version update): sudo port selfupdate && sudo port upgrade {version}
If you are still using older MacOS version, it may be better to use lightweight, special-purpose package manager like n or nvm. You can refer to this sample use case for updating Node.js on old Mac (High Sierra).

Now this works for me:
sudo npm install -g n
sudo n latest
Happy code!

sadly, n doesn't worked for me. I use node version manager or nvm and it works like a charm. heres the link on how to install nvm: https://github.com/creationix/nvm#installation
nvm i 8.11.2 upgrade to latest LTS
nvm use 8.11.2 use it
node -v check your latest version

Go to the website nodejs.org and download the latest pkg then install.
it works for me
I used brew to upgrade my node. It has installed but it located in /usr/local/Cellar/node/5.5.0 and there is a default node in /usr/local/bin/node which bothers me. I don't want to make soft link because I don't really know how brew is organized.
So I download the pkg file, installed and I got this info:
Node.js was installed at
/usr/local/bin/node
npm was installed at
/usr/local/bin/npm
Make sure that /usr/local/bin is in your $PATH.
Now the upgrade is completed

Pretty Simple.
sudo npm i -g n
Then you can specify the version you want.
sudo n 12.8.0
Cheers!!

You can run but you can't hide... At the end you will be using NVM anyways.

You can just go to nodejs.org and download the newest package. It will update appropriately for you. NPM will be updated as well.

I think the simplest way to use the newest version of Node.js is to get the newest Node.js pkg file in the website https://nodejs.org/en/download/current/
if you want to use different version of Node.js you can use nvm or n to manage it.

sudo npm install -g n
and then
sudo n latest for linux/mac users
For Windows please reinstall node.

These 2 methods I tried are not working:
Use npm
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
Manual install node from official website (https://nodejs.org/en/)
After trying, node -v still shows the old version of node.
Below method works for me:
Step 1: Install nvm (for more details: https://github.com/creationix/nvm#installation)
Open terminal and type this command:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Close terminal and reopen it.
Type this command to check if nvm is installed:
command -v nvm
Step 2: To download, compile, and install the latest release of node, type this:
nvm install node ("node" is an alias for the latest version)
To check if node gets the latest version (v10.11.0).
Installing the latest node also installs the latest npm.
Check if npm gets the latest version (6.4.1).

Easy nad Safe Steps
Step 1: Install NVM
brew install nvm
Step 2: Create a directory for NVM
mkdir ~/.nvm/
Step 3: Configure your environmental variables
nano ~/.bash_profile
PASTE BELOW CODE
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
source ~/.bash_profile
Step 4: Double check your work
nvm ls
Step 5: Install Node
nvm install 9.x.x
Step6: Upgrade
nvm ls-remote
v10.16.2 (LTS: Dubnium)
v10.16.3 (Latest LTS: Dubnium) ..........
nvm install v10.16.3
Troubleshooting
Error Example #1
rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh
https://www.chrisjmendez.com/2018/02/07/install/

Nvm
Nvm is a script-based node version manager. You can install it easily with a curl and bash one-liner as described in the documentation. It's also available on Homebrew.
Assuming you have successfully installed nvm. The following will install the latest version of node.
nvm install node --reinstall-packages-from=node
The last option installs all global npm packages over to your new version. This way packages like mocha and node-inspector keep working.
N
N is an npm-based node version manager. You can install it by installing first some version of node and then running npm install -g n.
Assuming you have successfully installed n. The following will install the latest version of node.
sudo n latest
Homebrew
Homebrew is one of the two popular package managers for Mac. Assuming you have previously installed node with brew install node. You can get up-to-date with formulae and upgrade to the latest Node.js version with the following.
1 brew update
2 brew upgrade node
MacPorts
MacPorts is the another package manager for Mac. The following will update the local ports tree to get access to updated versions. Then it will install the latest version of Node.js. This works even if you have previous version of the package installed.
1 sudo port selfupdate
2 sudo port install nodejs-devel

for latest release:
nvm install node
specific version:
nvm install 6.14.4
https://github.com/creationix/nvm

Use nvm to upgrade node as per the project requirement..
install nvm through homebrew..
brew update
brew install nvm
mkdir ~/.nvm
nano ~/.bash_profile
In your .bash_profile file (you may be using an other file, according to your shell), add the following :
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
source ~/.bash_profile
echo $NVM_DIR

You can directly use curl to upgrade node to the latest version. Run the following command:
curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"
Reference: https://nodejs.org/en/download/package-manager/#macos

First install nvm with this command:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
credirts to #Saviah Kao
Then install node:
nvm install node --reinstall-packages-from=node
credits to #Elad

I had the same problem. This is what worked for me because I downloaded and installed node.js globally from the node.js website.
What I did was Give NVM (Node Version Manager) a try. Please do the commands in the following order in your terminal
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
command -v nvm
nvm install node
node -v (to confirm the update)

This is just to add some info for people who didn't have Node installed with Homebrew but getting that very error when trying to install packages with npm on Mac OS X.
I found this good article explaining how to completely remove Node whichever the way you originally installed it.
After node, npm and n were completely removed from my machine, I just reinstalled Node.js using the official .pckg installer from Node website and everything just went back to normal.
Hope this helps out someone.

An easy way is go straight to the website
https://nodejs.org/en/download/
Click download the latest version and install pkg file.
After that you will get the latest node and npm version

I'm using a Mac Mini M1. I just removed my very old packages of node.js and npm and decided to install them using homebrew. I found out that now brew install node also installs npm. FYI

Related

Command not found: corepack when installing Yarn on Node v17.0.1

I'm following the Yarn installation instructions on Yarn's website (https://yarnpkg.com/getting-started/install). Those instructions say that on Node version 16.10.0 and higher you can install Yarn by enabling corepack with the following command:
corepack enable
However, running that command returns:
zsh: command not found: corepack
I installed Node via Homebrew and node -v returns v17.0.1. I'm on an M1 Mac running Big Sur.
Because I had installed node via nvm (and I had installed nvm using Homebrew), the corepack command wasn't available. The fix that worked for me was to install corepack via homebrew by running:
brew install corepack
After installing corepack via homebrew, I was able to run the corepack enable command from the terminal and the yarn command became available as well.
Was facing a similar issue with node installed using asdf. Also using zsh and zsh asdf plugin.
Node version: 16.13.1
Ran corepack enable - and got
zsh: command not found: yarn
What solved for me:
asdf reshim nodejs
Also try to run
corepack prepare yarn#3.1.1 --activate
before reshim
I solved it like this:
From the https://github.com/nodejs/corepack docs
npm uninstall -g yarn pnpm
npm install -g corepack
Use with 'sudo' if you're using OSX

Install Ionic Cordova Error

I am trying to install Ionic 2 on a OSx machine. I did install Node.js. When I run the following:
$ npm install -g ionic cordova
I get this error:
If anyone can assist, I would appreciate it.
UPDATE:
Downgraded Node to v6.9.1 and still get the same error:
UPDATE
As suggested below, I tried:
npm cache clean
But still get the same error:
UPDATE
If I try install a specific version, I get the following error:
sudo npm install -g ionic#2.0.0-beta.20 cordova
to install ionic in mac
you have to install nodejs .
to install ionic as per the official doc if you are using linux or mac you should use sudo command
try
sudo npm install -g ionic cordova
note
your npm version should be greater then 3.x
that version of node its the current so maybe its nos stable at all. I recommend to instal NVM (node version manager) from here this is like a "sand-box" where you have all node version you want and can switch between them.
You only need to run nvm install 5.11.0 and nvm will download that node version for you. Then to use a specific node version you need to run nvm use 5.11.0 and thats all.
I recommend to install 5.11.0 for example, its the node version that im using atm and its working fine with ionic2 RC3.
After downgrading your node.js clean npm cache.
npm cache clean
and try the installation again

PhoneGap Mac CLI local install failed because of Node version

So I want to debug my Phonegap webapp locally in Xcode.
I follow the step here and here, and launch in MAC CLI
$ sudo npm install -g phonegap
BUT install failed and CLI result get lots of errors with the first one is :
engine phonegap#2.9.0rc1-0.12.0: wanted: {"node":">=0.10.0"} (current: {"node":"v0.8.8","npm":"1.1.59"})
I understand my node version is too old : 0.8.8
node --version
I try to update but I am stuck with those 2 methods here and both in errors for me :
BREW
Tried Homebrew but did not work :
$ brew upgrade node
Error: node-0.8.8 already installed
NPM
As I found here
Upgrading Node.js to latest version
How do I update Node.js?
$ sudo npm install -g n
$ sudo n stable
sudo: n: command not found
In fact my bash_profile was missing the path to the n module as I found here:
cannot install npm? problems generating application
Edit your ~/.bash_profile. Add this export somewhere.
export PATH=/usr/local/bin:$PATH:/usr/local/share/npm/bin
I had the same issue and fixed it by upgrading node with brew, I just run
brew install --upgrade node

How to update node.js and CoffeeScript version via terminal on mac?

My system node.js version is v0.6.1 but the current stable version is v0.6.7.
My system CoffeeScript version is v1.1.2 but the current stable version is v1.2.0
How could I update the node.js and CoffeeScript via terminal on mac( using mac )? I am pretty good with command line but I do need some help get started to update those applications. Thank you very much for helps.
I'm a fan of Homebrew. Once you have it installed, you can just do
brew install node
then install npm with
curl http://npmjs.org/install.sh | sh
then use it to install CoffeeScript with
npm install -g coffee-script
If you don't have Homebrew or don't want to bother with it, replace the first step with going to http://nodejs.org/, clicking "Download," and running the latest installer for OS X. No command line wizardry required.
Update: Since this answer was posted, several things have changed. One is that Homebrew includes npm, so you don't need to install it separately (and if you do, you need to use https://). Another is that I would recommend using nvm to install Node rather than Homebrew, since you'll likely want to use different Node versions for different projects at some point and swapping out brew versions is no fun.
To update only coffee-script:
sudo npm update coffee-script -g
The easiest way to upgrade your Node.js version is to use a version manager such as NVM. It will also keep your old version if you'd like, along with stuff you've installed for it.
Once you upgrade you Node version, you can install CoffeeScript via NPM.

How to install latest version of Node using Brew

The latest version of NodeJs right now is 0.4.1
The command brew install node right now, installs 0.2.6 - which is not ideal. I would like 0.4.1
I've looked at this list of commands for brew and tried brew install --HEAD node
But that installs node 0.5-pre.
Why isn't brew installing the right version and how can I force it to get the right one?
At this stage, it looks like it would actually be easier just to download the src and install it manually. But I would like to know what's going on with Brew.
Run commands below, in this order:
brew update
brew doctor
brew upgrade node
Now you have installed updated version of node, and it's probably not linked. If it's not, then just type: brew link node or brew link --overwrite node
After installation/upgrading node via brew I ran into this issue exactly: the node command worked but not the npm command.
I used these commands to fix it.
brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) /usr/local
brew link --overwrite node
brew postinstall node
I pieced together this solution after trial and error using...
a github thread: https://github.com/npm/npm/issues/3125
this site: http://developpeers.com/blogs/fix-for-homebrew-permission-denied-issues
Have you run brew update first? If you don't do that, Homebrew can't update its formulas, and if it doesn't update its formulas it doesn't know how to install the latest versions of software.
Sometimes brew update fails on me because one package doesn't download properly. So you can just upgrade a specific library like this:
brew upgrade node
https://gist.github.com/3005832
Also, try to deactivate the current node version after installing a new node version. It helps me.
nvm deactivate
This is removed /Users/user_name/.nvm/*/bin from $PATH
And after that node was updated
node --version
v10.9.0
If you have installed current node via Homebrew, just use these commands.
brew update
brew upgrade node
Check node version by
node -v
node -v will show you the current version.
npm -v will show you the current version.
brew link --overwrite --dry-run node will force the link and overwrite all conflicting files.
brew install node do a fresh installation.
brew update
brew upgrade node
brew link --overwrite node
or
brew link node
Node Upgrade Procedure are below
I had to do brew link --overwrite node after brew install node to update from 0.4 to 0.8.18
Try to use "n" the Node extremely simple package manager.
> npm install -g n
Once you have "n" installed. You can pull the latest node by doing the following:
> n latest
I've used it successfully on Ubuntu 16.0x and MacOS 10.12 (Sierra)
Reference: https://github.com/tj/n
Just used this solution with Homebrew 0.9.5 and it seemed like a quick solution to upgrade to the latest stable version of node.
brew update
This will install the latest version
brew install node
Unlink your current version of node use, node -v, to find this
brew unlink node012
This will change to the most up to date version of node.
brew link node
Note: This solution worked as a result of me getting this error:
Error: No such keg: /usr/local/Cellar/node
I did this on Mac OSX Sierra. I had Node 6.1 installed but Puppetter required Node 6.4. This is what I did:
brew upgrade node
brew unlink node
brew link --overwrite node#8
echo 'export PATH="/usr/local/opt/node#8/bin:$PATH"' >> ~/.bash_profile
And then open a new terminal window and run:
node -v
v8.11.2
The --overwrite is necessary to override conflicting files between node6 and node8
I tried everything here, but apparently, I had used nvm to install node. So I just ran
nvm deactivate
And then
brew install node
node -v
You can use nodebrew. It can switch node versions too.
if the node is not installed then
brew install node
If you have an older version of the node installed then remove it and re-install freshly that's the only suitable way.
Make sure to add the path in the environment file.
If you're willing to remove the brew dependency, I would recommend nvm - I can't really recommend it over any other versioning solution because I haven't needed to try anything else. Having the ability to switch instantly between versions depending on which project you're working on is pretty valuable.
Just go old skool - https://nodejs.org/en/download/current/
From there you can get the current or LTS versions
sudo n latest
OR
brew update
brew upgrade node
Reference:
https://bytearcher.com/articles/ways-to-get-the-latest-node.js-version-on-a-mac/

Resources