blog
npm v2.1.14で発生したObject.keys called on non-objectエラーの解消
この記事は書かれてから1年以上経過しており、内容が古い場合があります。
npmのエラー
$ npm update
しようとしたらなにやらnpm ERR! Object.keys called on non-object
というエラーが大量に吐かれてパッケージがアップデートできず。
npm ERR! Object.keys called on non-object
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <http://github.com/npm/npm/issues>
npm ERR! Darwin 14.0.0
npm ERR! argv "node" "/Users/nukos/.nodebrew/current/bin/npm" "update" "-g"
npm ERR! node v0.10.32
npm ERR! npm v2.1.14
解決方法
調べてみたところ、npmのissuesに同様の課題TypeError: Object.keys called on non-object, build.js:111:18 #3443が上がっていたので流し読みしてみたところ、npmの2.1.17にアップデートすることで解消できるらしい。
$ sudo npm install -g npm@next
/Users/nukos/.nodebrew/current/bin/npm -> /Users/nukos/.nodebrew/current/lib/node_modules/npm/bin/npm-cli.js
npm@2.1.17 /Users/nukos/.nodebrew/current/lib/node_modules/npm
理由まではよくわかっていないけれど無事アップデートできるようになった。
$ sudo npm update gulp-sketch --save-dev
gulp-sketch@0.0.6 node_modules/gulp-sketch
├── clean-sketch@1.0.1
├── temporary@0.0.8 (package@1.0.1)
└── through2@0.6.3 (xtend@4.0.0, readable-stream@1.0.33)