diff --git a/.travis.yml b/.travis.yml index b43d9b919b..da1c09e7ae 100644 --- a/.travis.yml +++ b/.travis.yml @@ -51,7 +51,6 @@ env: matrix: fast_finish: true allow_failures: - - env: TEST_TYPE=lint - env: TEST_TYPE=test:coverage - env: TEST_TYPE=perf:full - env: TEST_TYPE=test:webdriver:saucelabs:modern diff --git a/Gruntfile.js b/Gruntfile.js index b531f8b09c..06b3bda04d 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,6 +1,5 @@ 'use strict'; -var exec = require('child_process').exec; var jsxTask = require('./grunt/tasks/jsx'); var browserifyTask = require('./grunt/tasks/browserify'); var populistTask = require('./grunt/tasks/populist'); @@ -38,8 +37,23 @@ module.exports = function(grunt) { .filter(function(npmTaskName) { return npmTaskName != 'grunt-cli'; }) .forEach(function(npmTaskName) { grunt.loadNpmTasks(npmTaskName); }); - // Alias 'jshint' to 'lint' to better match the workflow we know - grunt.registerTask('lint', ['jshint']); + // Super simplified eslint task that we can use to replace linting. This just + // shells out to eslint. + grunt.registerTask('eslint', function() { + var done = this.async(); + grunt.util.spawn({ + cmd: 'node_modules/.bin/eslint', + args: ['src'] + }, function(err, result, code) { + if (result.stdout.length) { + grunt.warn(result.stdout); + } + + done(code === 0); + }); + }); + + grunt.registerTask('lint', ['eslint']); grunt.registerTask('download-previous-version', require('./grunt/tasks/download-previous-version.js'));