概要
npm@5.7.[01]
で npm pack
や npm publish
して作成されるtgzの中のファイルのタイムスタンプがおかしいのでご注意ください
npm@5.7.1
npm@5.7.0
も同様です。
% npm -v
5.7.1
% npm pack
nroonga-0.3.1.tgz
% tar -ztvf nroonga-0.3.1.tgz
-rw-r--r-- 0/0 1035 1970-01-01 09:00 package/package.json
-rw-r--r-- 0/0 561 1970-01-01 09:00 package/binding.gyp
-rw-r--r-- 0/0 60927 1970-01-01 09:00 package/npm-shrinkwrap.json
-rw-r--r-- 0/0 2380 1970-01-01 09:00 package/README.md
-rw-r--r-- 0/0 488 1970-01-01 09:00 package/examples/prompt.coffee
-rw-r--r-- 0/0 283 1970-01-01 09:00 package/examples/test.js
-rw-r--r-- 0/0 80 1970-01-01 09:00 package/lib/nroonga.js
-rw-r--r-- 0/0 26530 1970-01-01 09:00 package/license/lgpl-2.1.txt
-rw-r--r-- 0/0 7935 1970-01-01 09:00 package/src/nroonga.cc
-rw-r--r-- 0/0 1394 1970-01-01 09:00 package/src/nroonga.h
-rw-r--r-- 0/0 6954 1970-01-01 09:00 package/test/database.test.js
npm@5.6.0
% npm -v
5.6.0
% npm pack
nroonga-0.3.1.tgz
% tar -ztvf nroonga-0.3.1.tgz
-rw-r--r-- 0/0 1035 2018-03-20 10:31 package/package.json
-rw-r--r-- 0/0 561 2017-09-22 14:51 package/binding.gyp
-rw-r--r-- 0/0 60927 2018-03-20 10:31 package/npm-shrinkwrap.json
-rw-r--r-- 0/0 2380 2017-10-04 09:48 package/README.md
-rw-r--r-- 0/0 488 2017-08-14 11:03 package/examples/prompt.coffee
-rw-r--r-- 0/0 283 2017-09-22 14:12 package/examples/test.js
-rw-r--r-- 0/0 80 2017-09-25 10:19 package/lib/nroonga.js
-rw-r--r-- 0/0 26530 2017-08-14 11:03 package/license/lgpl-2.1.txt
-rw-r--r-- 0/0 7935 2018-03-22 13:54 package/src/nroonga.cc
-rw-r--r-- 0/0 1394 2018-03-22 13:54 package/src/nroonga.h
-rw-r--r-- 0/0 6954 2017-10-02 14:42 package/test/database.test.js
まとめ
npm publish
するときは npm@5.6.0
などで行うのが良さそう
追記: 2018-08-30 最新のnpmではこの問題は解決済なので最新のnpmを使うのが一番良いです
追記2: 2018-08-30 こちらのコメントもご参照ください