<commit_before>'use strict';
var async = require('async');
var Styl = require('styl');

module.exports = function (grunt) {
	grunt.registerMultiTask('styl', 'Preprocess CSS with Styl', function () {
		var options = this.options({
			whitespace: false,
			vendors: ['webkit', 'moz', 'ms', 'o'],
			compress: false,
			configure: undefined
		});
		var configure = options.configure;
		var vendors = options.vendors.map(function (el) {
			return '-' + el + '-';
		});

		delete options.vendors;
		delete options.configure;

		async.each(this.files, function (el, next) {
			var styl;
			var src = el.src[0];

			try {
				styl = new Styl(grunt.file.read(src), options);
			} catch (err) {
				err.message += ' in ' + src + '\n';
				grunt.warn(err);
				return;
			}

			if (configure) {
				configure(styl);
			}

			styl.vendors(vendors);
			grunt.file.write(el.dest, styl.toString());
			next();
		}, this.async());
	});
};
<commit_msg>call callback on error<commit_after>'use strict';
var async = require('async');
var Styl = require('styl');

module.exports = function (grunt) {
	grunt.registerMultiTask('styl', 'Preprocess CSS with Styl', function () {
		var options = this.options({
			whitespace: false,
			vendors: ['webkit', 'moz', 'ms', 'o'],
			compress: false,
			configure: undefined
		});
		var configure = options.configure;
		var vendors = options.vendors.map(function (el) {
			return '-' + el + '-';
		});

		delete options.vendors;
		delete options.configure;

		async.each(this.files, function (el, next) {
			var styl;
			var src = el.src[0];

			try {
				styl = new Styl(grunt.file.read(src), options);
			} catch (err) {
				err.message += ' in ' + src + '\n';
				grunt.warn(err);
				next();
				return;
			}

			if (configure) {
				configure(styl);
			}

			styl.vendors(vendors);
			grunt.file.write(el.dest, styl.toString());
			next();
		}, this.async());
	});
};

{'fraction_non_alphanumeric': 0.179080824088748, 'fraction_numerical': 0.0010565240359218173, 'mean_word_length': 3.1810154525386314, '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': '2586512', 'n_tokens_mistral': 793, 'n_tokens_neox': 665, 'n_words': 152}