build: Use blacklist instead of whitelist for jshint/jscs/jsonlint
* jsonlint now includes docs/, includes/ (api and installer i18n), maintenance/, and tests/. 539 files -> 864 files. - Continue to exclude JSDuck artefacts in docs/js/. - Continue to exclude vendor/. * jshint now includes mw-config/ and maintenance/. 177 files -> 179 files. * jscs now includes everything jshint includes. 172 files -> 179 files. - The -skip.js files no longer need excluding. Use the native exclude syntax for jshint and jscs so that other software and services with JSHint support use these as well. Change-Id: Idebf30275f9c93483069367f923ed290c38e0b26
This commit is contained in:
parent
bff168e6d9
commit
face67cea4
6 changed files with 25 additions and 32 deletions
14
.jscsrc
14
.jscsrc
|
|
@ -3,5 +3,17 @@
|
|||
|
||||
"disallowQuotedKeysInObjects": null,
|
||||
"requireSpacesInsideParentheses": null,
|
||||
"requireSpacesInsideArrayBrackets": null
|
||||
"requireSpacesInsideArrayBrackets": null,
|
||||
|
||||
"excludeFiles": [
|
||||
"docs/**",
|
||||
"extensions/**",
|
||||
"node_modules/**",
|
||||
"resources/lib/**",
|
||||
"resources/src/jquery.tipsy/**",
|
||||
"resources/src/jquery/jquery.farbtastic.js",
|
||||
"resources/src/mediawiki.libs/**",
|
||||
"skins/**",
|
||||
"vendor/**"
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,4 +8,5 @@ resources/lib/**
|
|||
resources/src/jquery.tipsy/**
|
||||
resources/src/jquery/jquery.farbtastic.js
|
||||
resources/src/mediawiki.libs/**
|
||||
tests/frontend/node_modules/**
|
||||
skins/**
|
||||
vendor/**
|
||||
|
|
|
|||
33
Gruntfile.js
33
Gruntfile.js
|
|
@ -19,34 +19,16 @@ module.exports = function ( grunt ) {
|
|||
options: {
|
||||
jshintrc: true
|
||||
},
|
||||
all: [
|
||||
'*.js',
|
||||
'{includes,languages,resources,tests}/**/*.js'
|
||||
]
|
||||
all: '.'
|
||||
},
|
||||
jscs: {
|
||||
all: [
|
||||
'<%= jshint.all %>',
|
||||
// Auto-generated file with JSON (double quotes)
|
||||
'!tests/qunit/data/mediawiki.jqueryMsg.data.js',
|
||||
// Skip functions are stored as script files but wrapped in a function when
|
||||
// executed. node-jscs trips on the would-be "Illegal return statement".
|
||||
'!resources/src/*-skip.js'
|
||||
|
||||
// Exclude all files ignored by jshint
|
||||
].concat( grunt.file.read( '.jshintignore' ).split( '\n' ).reduce( function ( patterns, pattern ) {
|
||||
// Filter out empty lines
|
||||
if ( pattern.length && pattern[0] !== '#' ) {
|
||||
patterns.push( '!' + pattern );
|
||||
}
|
||||
return patterns;
|
||||
}, [] ) )
|
||||
all: '.'
|
||||
},
|
||||
jsonlint: {
|
||||
all: [
|
||||
'.jscsrc',
|
||||
'{languages,maintenance,resources}/**/*.json',
|
||||
'package.json'
|
||||
'**/*.json',
|
||||
'!{docs/js,extensions,node_modules,skins,vendor}/**'
|
||||
]
|
||||
},
|
||||
banana: {
|
||||
|
|
@ -56,10 +38,9 @@ module.exports = function ( grunt ) {
|
|||
},
|
||||
watch: {
|
||||
files: [
|
||||
'<%= jscs.all %>',
|
||||
'<%= jsonlint.all %>',
|
||||
'.jshintignore',
|
||||
'.jshintrc'
|
||||
'.js*',
|
||||
'**/*',
|
||||
'!{docs,extensions,node_modules,skins,vendor}/**'
|
||||
],
|
||||
tasks: 'test'
|
||||
},
|
||||
|
|
|
|||
|
|
@ -37,7 +37,6 @@
|
|||
* @alternateClassName jqXHR
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* @class QUnit
|
||||
* @source <http://api.qunitjs.com/>
|
||||
|
|
|
|||
|
|
@ -133,8 +133,7 @@ class GenerateJqueryMsgData extends Maintenance {
|
|||
. "// languages, and parser modes. Intended for use by a unit test framework by looping\n"
|
||||
. "// through the object and comparing its parser return value with the 'result' property.\n"
|
||||
. '// Last generated with ' . basename( __FILE__ ) . ' at ' . gmdate( 'r' ) . "\n"
|
||||
// This file will contain unquoted JSON strings as javascript native object literals,
|
||||
// flip the quotemark convention for this file.
|
||||
. "//jscs:disable\n"
|
||||
. "\n"
|
||||
. 'mediaWiki.libs.phpParserData = ' . FormatJson::encode( $phpParserData, true ) . ";\n";
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
// This file stores the output from the PHP parser for various messages, arguments,
|
||||
// languages, and parser modes. Intended for use by a unit test framework by looping
|
||||
// through the object and comparing its parser return value with the 'result' property.
|
||||
// Last generated with generateJqueryMsgData.php at Thu, 30 Jan 2014 04:04:41 +0000
|
||||
// Last generated with generateJqueryMsgData.php at Fri, 10 Jul 2015 11:44:08 +0000
|
||||
//jscs:disable
|
||||
|
||||
mediaWiki.libs.phpParserData = {
|
||||
"messages": {
|
||||
|
|
|
|||
Loading…
Reference in a new issue