<commit_before>'use strict';

var aFrom   = require('es5-ext/array/from')
  , partial = require('es5-ext/function/#/partial')
  , extend  = require('es5-ext/object/extend-properties')
  , ee      = require('event-emitter')

  , o;

o = ee(exports = {
	init: function () {
		this.msg = [];
		this.passed = [];
		this.errored = [];
		this.failed = [];
		this.started = new Date();
		return this;
	},
	in: function (msg) {
		this.msg.push(msg);
	},
	out: function () {
		this.msg.pop();
	},
	log: function (type, data) {
		var o = { type: type, time: new Date(), data: data, msg: aFrom(this.msg) };
		this.push(o);
		this[type + 'ed'].push(o);
		this.emit('data', o);
	},
	end: function () {
		this.emit('end');
	}
});

o.log.partial = partial;
o.error = o.log.partial('error');
o.pass = o.log.partial('pass');
o.fail = o.log.partial('fail');

module.exports = function () {
	return extend([], o).init();
};
<commit_msg>Update up to changes in es5-ext<commit_after>'use strict';

var aFrom   = require('es5-ext/array/from')
  , partial = require('es5-ext/function/#/partial')
  , mixin   = require('es5-ext/object/mixin')
  , ee      = require('event-emitter')

  , o;

o = ee(exports = {
	init: function () {
		this.msg = [];
		this.passed = [];
		this.errored = [];
		this.failed = [];
		this.started = new Date();
		return this;
	},
	in: function (msg) {
		this.msg.push(msg);
	},
	out: function () {
		this.msg.pop();
	},
	log: function (type, data) {
		var o = { type: type, time: new Date(), data: data, msg: aFrom(this.msg) };
		this.push(o);
		this[type + 'ed'].push(o);
		this.emit('data', o);
	},
	end: function () {
		this.emit('end');
	}
});

o.log.partial = partial;
o.error = o.log.partial('error');
o.pass = o.log.partial('pass');
o.fail = o.log.partial('fail');

module.exports = function () {
	return mixin([], o).init();
};

{'fraction_non_alphanumeric': 0.2240348015225666, 'fraction_numerical': 0.0038064165307232192, 'mean_word_length': 3.289044289044289, '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': '860516', 'n_tokens_mistral': 748, 'n_tokens_neox': 711, 'n_words': 141}