--- /dev/null
+{
+ "requireCurlyBraces": [ "if", "else", "for", "while", "do" ],
+ "requireSpaceAfterKeywords": [ "if", "else", "for", "while", "do", "switch", "return" ],
+ "requireSpacesInFunctionExpression": {
+ "beforeOpeningCurlyBrace": true
+ },
+ "disallowSpacesInFunctionExpression": {
+ "beforeOpeningRoundBrace": true
+ },
+ "requireMultipleVarDecl": true,
+ "requireSpacesInsideObjectBrackets": "all",
+ "requireSpacesInsideArrayBrackets": "all",
+ "disallowLeftStickedOperators": [ "?", "-", "/", "*", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<=" ],
+ "disallowRightStickedOperators": [ "?", "/", "*", ":", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="],
+ "requireRightStickedOperators": [ "!" ],
+ "requireLeftStickedOperators": [ "," ],
+ "disallowKeywords": [ "with" ],
+ "disallowMultipleLineBreaks": true,
+ "disallowKeywordsOnNewLine": [ "else" ],
+ "requireLineFeedAtFileEnd": true,
+
+ "excludeFiles": [ "src/intro.js", "src/outro.js" ]
+}
"use strict";
+ function readOptionalJSON( filepath ) {
+ var data = {};
+ try {
+ data = grunt.file.readJSON( filepath );
+ } catch(e) {}
+ return data;
+ }
+
var gzip = require( "gzip-js" ),
- readOptionalJSON = function( filepath ) {
- var data = {};
- try {
- data = grunt.file.readJSON( filepath );
- } catch(e) {}
- return data;
- },
srcHintOptions = readOptionalJSON( "src/.jshintrc" );
// The concatenated file won't pass onevar
pkg: {
src: [ "package.json" ]
},
+
+ jscs: {
+ src: [ ".jscs.json" ]
+ },
+
bower: {
src: [ "bower.json" ]
}
},
jshint: {
src: {
- src: [ "src/**/*.js" ],
+ src: "src/**/*.js",
options: {
jshintrc: "src/.jshintrc"
}
},
dist: {
- src: [ "dist/jquery.js" ],
+ src: "dist/jquery.js",
options: srcHintOptions
},
grunt: {
}
},
tests: {
- src: [ "test/**/*.js" ],
+ src: "test/**/*.js",
options: {
jshintrc: "test/.jshintrc"
}
}
},
+ jscs: {
+ src: "src/**/*.js"
+ },
testswarm: {
tests: "ajax attributes callbacks core css data deferred dimensions effects event manipulation offset queue selector serialize support traversing Sizzle".split(" ")
},
grunt.loadNpmTasks( "grunt-contrib-jshint" );
grunt.loadNpmTasks( "grunt-contrib-uglify" );
grunt.loadNpmTasks( "grunt-jsonlint" );
+ grunt.loadNpmTasks( "grunt-jscs-checker" );
// Integrate jQuery specific tasks
grunt.loadTasks( "build/tasks" );
// Short list as a high frequency watch task
- grunt.registerTask( "dev", [ "build:*:*", "jshint" ] );
+ grunt.registerTask( "dev", [ "build:*:*", "jshint", "jscs" ] );
// Default grunt
grunt.registerTask( "default", [ "jsonlint", "dev", "pre-uglify", "uglify", "post-uglify", "dist:*", "compare_size" ] );
+
{
"name": "jquery",
"title": "jQuery",
"grunt-contrib-uglify": "~0.2.4",
"grunt-contrib-watch": "~0.5.3",
"grunt-git-authors": "~1.2.0",
+ "grunt-jscs-checker": "~0.2.3",
"grunt-jsonlint": "~1.0.1",
"gzip-js": "0.3.2",
"testswarm": "~1.1.0",