mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/ReplaceText
synced 2024-12-18 17:23:11 +00:00
7726ed6a5e
* eslint: Already excludes node_modules by default.
https://eslint.org/docs/user-guide/configuring#ignoring
* eslint: Expands directories by default, much faster to
let ESLint crawl the directories while knowing what to exclude,
then to let Grunt expand **/** recursively run each file
individually.
This makes Grunt run ESLint the same way as one normally
would from the command line: `eslint .`, except without
the eslint CLI sub-process.
* eslint: Preserve the exclude for vendor via eslint config
so that it also works when running ESLint outside Grunt,
e.g. in IDEs or from the command line with extra options.
* stylelint: Ignores node_modules by default.
https://stylelint.io/user-guide/node-api/#files
Change-Id: I1a78e9d93e7666c1539bcf4a3bc50306cecf89ba
(cherry picked from commit 20f34321f4
)
36 lines
700 B
JavaScript
36 lines
700 B
JavaScript
/* eslint-env node */
|
|
module.exports = function ( grunt ) {
|
|
var conf = grunt.file.readJSON( 'extension.json' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-banana-checker' );
|
|
grunt.loadNpmTasks( 'grunt-eslint' );
|
|
grunt.loadNpmTasks( 'grunt-jsonlint' );
|
|
grunt.loadNpmTasks( 'grunt-stylelint' );
|
|
|
|
grunt.initConfig( {
|
|
eslint: {
|
|
all: '.'
|
|
},
|
|
stylelint: {
|
|
options: {
|
|
syntax: 'less'
|
|
},
|
|
all: [
|
|
'**/*.{css,less}',
|
|
'!vendor/**'
|
|
]
|
|
},
|
|
banana: conf.MessagesDirs,
|
|
jsonlint: {
|
|
all: [
|
|
'**/*.json',
|
|
'!node_modules/**',
|
|
'!vendor/**'
|
|
]
|
|
}
|
|
} );
|
|
|
|
grunt.registerTask( 'test', [ 'eslint', 'stylelint', 'jsonlint', 'banana' ] );
|
|
grunt.registerTask( 'default', 'test' );
|
|
};
|