<commit_before>'use strict';

var path = require('path');
var utils = require('./utils');

module.exports = function(app) {
  function bold(str) {
    return app.log.underline(app.log.bold(str));
  }

  var list = [[bold('version'), bold('name'), bold('alias')]];
  return utils.through.obj(function(file, enc, next) {
    if (utils.blacklist.indexOf(file.stem) !== -1) {
      next();
      return;
    }

    var pkgPath = path.resolve(file.path, 'package.json');
    var pkg = require(pkgPath);
    list.push([app.log.gray(pkg.version), file.basename, app.log.cyan(file.alias)]);
    next();
  }, function(cb) {
    console.log();
    console.log(utils.table(list, {
      stringLength: function(str) {
        return utils.strip(str).length;
      }
    }));

    console.log();
    console.log(app.log.magenta(list.length + ' updaters installed'));
    console.log();
    cb();
  });
};

<commit_msg>generators, not updaters<commit_after>'use strict';

var path = require('path');
var utils = require('./utils');

module.exports = function(app) {
  function bold(str) {
    return app.log.underline(app.log.bold(str));
  }

  var list = [[bold('version'), bold('name'), bold('alias')]];
  return utils.through.obj(function(file, enc, next) {
    if (utils.blacklist.indexOf(file.stem) !== -1) {
      next();
      return;
    }

    var pkgPath = path.resolve(file.path, 'package.json');
    var pkg = require(pkgPath);
    list.push([app.log.gray(pkg.version), file.basename, app.log.cyan(file.alias)]);
    next();
  }, function(cb) {
    console.log();
    console.log(utils.table(list, {
      stringLength: function(str) {
        return utils.strip(str).length;
      }
    }));

    console.log();
    console.log(app.log.magenta(list.length + ' generators installed'));
    console.log();
    cb();
  });
};


{'fraction_non_alphanumeric': 0.1936368623148656, 'fraction_numerical': 0.0010970927043335162, 'mean_word_length': 3.193103448275862, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6662901', 'n_tokens_mistral': 622, 'n_tokens_neox': 613, 'n_words': 106}