From a2e43412cf07be750ea077319e9e1de6b10b74c2 Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Thu, 20 Aug 2015 16:57:03 +0200 Subject: [PATCH] tools: make add-on scraper print filenames MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Make the tool that generates add-ons from doc/api/addons.markdown print the names of the files it writes out. Before this commit, it printed a rather unhelpful "Done." PR-URL: https://github.com/nodejs/node/pull/2428 Reviewed-By: Johan Bergström Reviewed-By: Rod Vagg --- tools/doc/addon-verify.js | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/tools/doc/addon-verify.js b/tools/doc/addon-verify.js index f87cfecdf5fbb4..4d1aaab3cc75a6 100644 --- a/tools/doc/addon-verify.js +++ b/tools/doc/addon-verify.js @@ -25,12 +25,9 @@ for (var i = 0; i < tokens.length; i++) { var token = tokens[i]; if (token.type === 'heading') { if (files && Object.keys(files).length !== 0) { - verifyFiles(files, function(err) { - if (err) - console.log(err); - else - console.log('done'); - }); + verifyFiles(files, + console.log.bind(null, 'wrote'), + function(err) { if (err) throw err; }); } files = {}; } else if (token.type === 'code') { @@ -51,7 +48,7 @@ function once(fn) { }; } -function verifyFiles(files, callback) { +function verifyFiles(files, onprogress, ondone) { var dir = path.resolve(verifyDir, 'doc-' + id++); files = Object.keys(files).map(function(name) { @@ -78,17 +75,19 @@ function verifyFiles(files, callback) { fs.mkdir(dir, function() { // Ignore errors + var done = once(ondone); var waiting = files.length; - for (var i = 0; i < files.length; i++) - fs.writeFile(files[i].path, files[i].content, next); + files.forEach(function(file) { + fs.writeFile(file.path, file.content, function(err) { + if (err) + return done(err); - var done = once(callback); - function next(err) { - if (err) - return done(err); + if (onprogress) + onprogress(file.path); - if (--waiting === 0) - done(); - } + if (--waiting === 0) + done(); + }); + }); }); }