Instalasi dan versi

nvm, kebijakan LTS, serta pemeriksaan versi Node dan npm.

Daftar isi

Node.js didistribusikan dalam beberapa versi yang mengikuti jadwal rilis tetap. Topik ini membahas pemasangan Node.js melalui nvm, kebijakan LTS yang menentukan versi mana yang stabil untuk produksi, serta cara memeriksa versi Node dan npm yang terpasang. Setelah membaca topik ini, versi Node dan npm dapat diperiksa secara mandiri, dan perintah nvm dasar untuk mengelola beberapa versi dapat dikenali.

Apa itu nvm ?#

nvm (Node Version Manager) adalah skrip shell yang memasang Node.js tanpa memerlukan hak administrator dan memungkinkan beberapa versi Node.js terpasang bersamaan. nvm bekerja dengan mengunduh biner resmi dari nodejs.org ke dalam direktori pengguna, lalu memodifikasi PATH sesi shell agar versi yang dipilih menjadi versi aktif. Pendekatan ini berbeda dari pemasang sistem (misalnya apt atau Homebrew) yang menempatkan Node.js pada jalur sistem dan biasanya hanya menyediakan satu versi.

Kebijakan versi Node.js#

Node.js mengikuti jadwal rilis enam bulanan, dengan rilis baru tersedia pada bulan April dan Oktober setiap tahun. Versi bernomor genap (misalnya 22 dan 24) memperoleh status LTS, sedangkan versi bernomor ganjil (misalnya 23 dan 25) hanya didukung sebagai Current selama sekitar enam bulan sebelum mencapai End-of-Life (EOL). Versi ganjil cocok untuk mencoba fitur baru, tetapi tidak direkomendasikan untuk produksi.

Dukungan LTS berlangsung kira-kira tiga puluh bulan dan terbagi atas dua fase berturut-turut. Fase Active LTS membawa pembaruan fitur kompatibel-mundur dan perbaikan bug. Fase Maintenance LTS hanya membawa perbaikan keamanan dan bug kritis. Pemisahan ini memungkinkan rilis LTS tetap layak dipakai pada produksi yang tidak memerlukan fitur baru.

Status sebuah rilis dapat dilihat dari properti process.release.lts. Bila rilis tersebut berstatus LTS, properti ini berisi nama kode LTS. Bila tidak, properti ini bernilai undefined.

js
console.log(process.release.lts || "tidak LTS");

Keluaran pada Node.js 24 di sandbox:

text Keluaran
Krypton

Nama kode “Krypton” ditetapkan untuk seluruh rilis LTS Node.js 24. Nama kode bersifat tetap: rilis 24.x.y yang lebih baru tetap membawa nama yang sama, sedangkan rilis Current (yang tidak LTS) tidak memiliki nama kode.

Memeriksa versi Node dan npm#

Setelah pemasangan selesai, periksa versi Node dan npm yang terpasang. Kedua perintah berikut dijalankan dari shell.

bash
node --version
npm --version
text Keluaran
v24.22.2
11.19.1

Pastikan node dan npm muncul pada PATH sesi shell. Bila perintah node --version menghasilkan pesan seperti command not found, pemasangan belum selesai atau PATH belum dimuat ulang. Pemeriksaan versi npm sebaiknya dilakukan bersamaan karena banyak perintah npm bergantung pada versi tertentu agar dapat berjalan tanpa error.

Mengelola beberapa versi dengan nvm#

Perintah nvm yang paling sering dipakai terdiri atas pemasangan, pengaktifan, penetapan default, dan pencatatan versi. Karena nvm tidak tersedia di sandbox yang dipakai, perintah-perintah berikut hanya ditampilkan sebagai rujukan dan tidak dieksekusi oleh verifikator.

bash
# tidak-dijalankan
nvm install --lts
nvm use --lts
nvm alias default lts/*
nvm ls

Perintah nvm install --lts memasang rilis LTS terbaru. Perintah nvm use --lts mengaktifkan rilis LTS terbaru untuk sesi shell saat ini. Perintah nvm alias default lts/* menjadikan LTS terbaru sebagai versi default untuk sesi shell berikutnya, sehingga terminal baru otomatis memakai versi yang sama. Perintah nvm ls mencantumkan seluruh versi yang terpasang secara lokal beserta versi yang sedang aktif.

Pola yang lazim pada proyek yang memerlukan versi tertentu adalah menulis berkas .nvmrc di akar proyek. Berkas ini berisi satu baris nomor versi, misalnya 24.22.2, sehingga anggota tim cukup menjalankan nvm use tanpa argumen untuk memilih versi yang sama.

Kesalahan umum#

Memasang Node.js lewat pemasang sistem (apt, yum, atau Homebrew) sering menyebabkan konflik versi pada proyek yang memerlukan versi berbeda. Pemasang sistem mengikat Node.js ke jalur sistem seperti /usr/bin/node atau /usr/local/bin/node, sehingga penggantian versi memerlukan hak administrator. nvm menghindari masalah ini dengan menempatkan setiap versi pada direktori pengguna dan mengganti PATH sesi shell saat nvm use dipanggil.

Menganggap rilis Current cocok untuk produksi karena nomornya lebih besar. Rilis Current berisi fitur terbaru, tetapi hanya didukung selama sekitar enam bulan dan dapat menerima perubahan yang merusak (breaking change) tanpa peringatan. Untuk lingkungan produksi, pilih rilis LTS terbaru yang masih berada dalam fase Active LTS atau Maintenance LTS.

Lupa memuat ulang shell setelah memasang nvm. nvm bekerja sebagai fungsi shell, bukan biner pada PATH, sehingga profil shell seperti ~/.bashrc atau ~/.zshrc harus dimuat ulang agar perintah nvm dapat dipanggil. Bila terminal baru tidak mengenali nvm, jalankan source ~/.bashrc atau buka terminal baru setelah pemasangan selesai.

Ringkasan#

  • nvm adalah skrip shell yang memasang Node.js tanpa hak administrator dan memungkinkan beberapa versi terpasang bersamaan dengan mengubah PATH sesi shell.
  • Versi Node.js mengikuti jadwal enam bulanan: versi genap memperoleh status LTS dengan dukungan kira-kira tiga puluh bulan (Active LTS lalu Maintenance LTS), sedangkan versi ganjil hanya Current selama sekitar enam bulan.
  • Versi Node dan npm diperiksa dengan node --version dan npm --version, sedangkan status LTS dapat dikonfirmasi lewat process.release.lts yang mengembalikan nama kode LTS bila rilis tersebut LTS.

Referensi#