Ouch, macaddress package are vulnerable to command injection

Scaffolding a new React app this morning and here is the npm audit security report I got:

Screenshot from 2018-05-20 06:18:50

This npm audit command is really helpful, and it’s available on npm@6. See the vulnerability report here.



Updating to Node v0.12

Today I just noticed that I’m still using the old version of Node, v0.10.36 to be precise. So, I head over to Node blog to see what is happening. It seems to be there is an update for the v0.10.x contained a fix for CVE-2015-0278. I can just update the Node installed on my laptop to v0.10.37 and at the same time I’m curious what if I move forward to Node v0.12.0. I don’t really get into the Node v0.12.0 stuff, so I decided to update it to those version. At this point I’m not quite sure what changes that brought to the Node v0.12.0. There is a few great a places to start digging what’s new in Node v0.12:

  1. API changes between v0.10 and v0.12
  2. What’s New in Node v0.12

Cara tercepat mengetahui versi generator yang digunakan

Hi, ini catatan singkat cara tercepat untuk mengetahui versi generator-angular-fullstack yang digunakan untuk menghasilkan sumber kode aplikasi.

Untuk mengetahui versi generator yang digunakan untuk menghasilkan sumber kodenya, bisa dilakukan dengan mengikuti langkah umum berikut:

  1. Gunakan fitur pencari di editor untuk mencari berkas Gruntfile.js
  2. Lihat baris paling atas, akan terdapat komentar singkat yang menginformasikan kapan berkas tersebut dihasilkan dan versi generator-angular-fullstack yang digunakan
diff: Gruntfile.js antara kode yang lama dan yang baru

diff: Gruntfile.js antara kode yang lama dan yang baru

Cara terbaik untuk memperbarui sumber kode aplikasi yang lama

Semalam saya ragu bagaimana memperbarui sumber kode aplikasi yang lama. Singkat cerita, aplikasi ini adalah aplikasi web yang dihasilkan melalui generator-angular-fullstack. Saya sudah cukup lama menggunakan generator tersebut untuk membangun struktur aplikasi yang berbasis MEAN stack. Semalam merupakan titik dimana saya harus memperbaharui sumber kode aplikasi dengan versi generator yang baru (v2.x). Penyempurnaan yang dilakukan oleh kontributor generator tersebut cukup signifikan, terutama pada struktur aplikasi yang lebih modular. Jadi, alasannya cukup masuk akal, apalagi aplikasi yang sedang saya kerjakan akan memuat beberapa fitur baru.

Untuk memperbaharui ada beberapa cara yang sebelumnya sudah saya pikirkan sekaligus ditanyakan kepada kontributor. Berdasarkan issue (pertanyaan) yang saya buat tadi malam, berikut cara terbaik memperbaharui sumber kode yang dihasilkan melalui generator-angular-fullstack:

  • Jika sumber kode yang dihasilkan melalui generator v1.x, maka proses pembaharuan harus dilakukan secara manual dengan copy paste sebagian kode yang penting ke sumber kode aplikasi baru yang dihasilkan melalui generator v2.x. Konsekuensi penerapan cara ini mengharuskan saya untuk teliti dan menggunakan waktu yang relatif lebih banyak.
  • Jika sumber kode yang dihasilkan melalui generator v2.x, maka proses pembaharuan cukup mengulang proses pembuatan dengan mengeksekusi yo angular-fullstack pada direktori sumber kode aplikasi

Semoga teman-teman yang kebetulan juga menggunakan generator ini mendapatkan manfaat dari catatan saya ini.

Giliran TJ Fontaine memimpin Node.js project

Setelah berganti kepemimpinan sebanyak 1 kali, dari Ryan Dahl kepada Isaac Z. Schlueter, saat ini Node.js project kembali berganti pemimpin:

Over the last year, TJ Fontaine has become absolutely essential to the Node.js project. He’s been building releases, managing the test bots, fixing nasty bugs and making decisions for the project with constant focus on the needs of our users. He was responsible for an update to MDB to support running ::findjsobjects on Linux core dumps, and is working on a shim layer that will provide a stable C interface for Node binary addons. In partnership with Joyent and The Node Firm, he’s helped to create a path forward for scalable issue triaging. He’s become the primary point of contact keeping us all driving the project forward together.

Anyone who’s been close to the core project knows that he’s been effectively leading the project for a while now, so we’re making it official. Effective immediately, TJ Fontaine is the Node.js project lead. I will remain a Node core committer, and expect to continue to contribute to the project in that role. My primary focus, however, will be npm.

Dikutip dari blog resmi Node.js, The Next Phase of Node.js.

Selamat kepada TJ Fontaine!

How to enable the npm completion

How to Enable it

I believe every developers needs to work productively when using npm by enable the tab-completion so that we can use the npm without too much typing to complete the commands we want to use . Here are the command I used to enable the npm completion on my Ubuntu box:

npm completion >> ~/.bashrc

The above command will write some shell scripts into my .bashrc file.


  1. https://npmjs.org/doc/completion.html
  2. http://tobyho.com/2012/02/09/tour-of-npm/

The Future of Programming in Node.js by Isaac Schlueter

There’s been a lot of debates, theories, and requests about Node’s
core API patterns on this list lately. I’d like to clarify the actual
plans of the project on these points.

Callbacks will remain the de facto way to implement asynchrony.
Generators and Promises are interesting and will remain a userland

There will be no changes to the module system. None. It’s finished.
It’s been finished for over a year. Any proposed changes must come
with a clear reproducible bug that cannot be worked around or
addressed with documentation.

We are done making breaking changes at the Node.js layer. If your
program runs today, we’re doing everything we can to make sure that it
will run next year, albeit faster and more reliably.

This is not a democracy. However, there’s plenty of room for
everyone’s opinion. If you want to make exciting dramatic breaking
changes to node-core, and you can’t find satisfaction by writing
userland npm modules, then please fork joyent/node, give it a new name
and logo, and go as completely crazy as you want.

Complete posts can be found on The Future of Programming in Node.js thread.