Hiroshi Kuwabara 様 ありがとうございます。 --throw-deprecation もしくは --trace-deprecationオプションで 色々情報が得られるんですね! 検証が捗りそうです。ありがとうございます。
他力本願でnode-unzipモジュールを入れれば簡単かなと思ったのですが、 余計に遠回りになってしまっていたんですね・・・。 教えていただいたzlibモジュールで頑張ってみます。 2014年2月21日金曜日 13時17分07秒 UTC+9 Hiroshi Kuwabara: > > > node-unzipモジュールの中でpullstreamというモジュールが使われており、 > そのモジュールがprocess.nextTickを再帰的に呼び出しているようです。 > > Error: (node) warning: Recursive process.nextTick detected. This will > break in the next version of node. Please use setImmediate for recursive > deferral. > at maxTickWarn (node.js:375:15) > at process.nextTick (node.js:480:9) > at pullServiceRequest > (/Users/.../node_modules/unzip/node_modules/pullstream/pullstream.js:48:17) > at PullStream.<anonymous> > (/Users/.../node_modules/unzip/node_modules/pullstream/pullstream.js:38:5) > at PullStream.pull > (/Users/.../node_modules/unzip/node_modules/pullstream/node_modules/over/overload.js:24:23) > at /Users/.../node_modules/unzip/lib/parse.js:235:24 > at process._tickCallback (node.js:415:13) > > --throw-deprecation もしくは --trace-deprecationオプションをつけて実行すると、 > スタックトレースが吐出されるようになります。 > > node --throw-deprecation app.js > > > unzipする目的であれば、node組込みのzlibモジュールで代替できるかと思います。 > http://nodejs.org/api/zlib.html#zlib_zlib_unzip_buf_callback > > > > On Friday, February 21, 2014 10:50:06 AM UTC+9, meganetops wrote: >> >> はじめまして。 >> >> 私はNodeを少し触って遊んでみているWebデザイナーです。 >> WordPressをダウンロードしてzipを解凍するコードを書いて動かしてみたところ、 >> maximum call stack size exceeded エラーが出てしまいいきずまってしまいました。 >> >> 環境は、 >> OS:Window7 >> Node: v.0.10.24 >> です。 >> あと、zipの展開には「node-unzip <https://github.com/EvanOxfeld/node-unzip> >> 」というものを使用させていただいております。 >> >> 下記のコードで動かしてみているのですが何が原因となっていますでしょうか? >> >> var http = require("http"); >> var fs = require("fs"); >> var unzip = require("unzip"); >> >> var url = "http://ja.wordpress.org/latest-ja.zip"; >> var savedir = "./tmp" >> var output = fs.createWriteStream(savedir+"/wordpres-latest.zip"); >> >> >> var req = http.get(url,function(res){ >> res.pipe(output); >> >> res.on("data",function(){ >> console.log("on-data・・・"); >> }); >> res.on("end",function(){ >> console.log("finish!!!!!!!!"); >> output.close(); >> fs.createReadStream(savedir+"/wordpres-latest.zip") >> .pipe(unzip.Extract({ path: savedir })) >> .on('error', function (err) { console.log('error', err); }) >> .on('close', function () { console.log('closed'); }); >> }); >> }); >> >> zipの解凍はできているようで、 >> 展開されたファイルは出てきています。 >> >> よろしくお願いいたします。 >> >> >> -- --- このメールは Google グループのグループ「Node.js 日本ユーザグループ」の登録者に送られています。 このグループから退会し、メールの受信を停止するには、nodejs_jp+unsubscr...@googlegroups.com にメールを送信します。 その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。