Skip to content

Commit 71875cd

Browse files
committed
Enable additional lint rules and update descriptions
1 parent 41a9916 commit 71875cd

File tree

1 file changed

+61
-8
lines changed

1 file changed

+61
-8
lines changed

etc/eslint/rules/nodejs.js

Lines changed: 61 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ rules[ 'node/callback-return' ] = [ 'warn', [
6262
/* eslint-disable -- disable linting due to `import` statements throwing for doctest rules */
6363

6464
/**
65-
* Enforces use of `module.exports` as the export style over `exports`.
65+
* Enforce use of `module.exports` as the export style over `exports`.
6666
*
6767
* @name node/file-extension-in-import
6868
* @memberof rules
@@ -85,7 +85,7 @@ rules[ 'node/file-extension-in-import' ] = [ 'error', 'always', {
8585
/* eslint-enable */
8686

8787
/**
88-
* Enforces use of `module.exports` as the export style over `exports`.
88+
* Enforce use of `module.exports` as the export style over `exports`.
8989
*
9090
* @name node/exports-style
9191
* @memberof rules
@@ -153,7 +153,7 @@ rules[ 'node/global-require' ] = 'off';
153153
rules[ 'node/handle-callback-err' ] = [ 'error', '^(err|error)$' ];
154154

155155
/**
156-
* Disallows use of `exports = {}` aside from `module.exports = exports = {}`.
156+
* Disallow use of `exports = {}` aside from `module.exports = exports = {}`.
157157
*
158158
* @name node/no-exports-assign
159159
* @memberof rules
@@ -258,7 +258,7 @@ rules[ 'node/no-process-env' ] = 'error';
258258
rules[ 'node/no-process-exit' ] = 'warn';
259259

260260
/**
261-
* Restrict the use of specific modules.
261+
* Restrict the use of specific module when loaded by `require()`.
262262
*
263263
* @name node/no-restricted-require
264264
* @memberof rules
@@ -271,6 +271,20 @@ rules[ 'node/no-restricted-require' ] = [ 'error', [
271271
'async'
272272
]];
273273

274+
/**
275+
* Restrict the use of specific modules when loaded by `import` declarations.
276+
*
277+
* @name node/no-restricted-import
278+
* @memberof rules
279+
* @type {Array}
280+
* @see [node/no-restricted-import]{@link https://github.com/mysticatea/eslint-plugin-node/blob/master/docs/rules/no-restricted-import.md}
281+
*/
282+
rules[ 'node/no-restricted-import' ] = [ 'error', [
283+
'underscore',
284+
'lodash',
285+
'async'
286+
]];
287+
274288
/**
275289
* Warn when using synchronous methods when an asynchronous version exists.
276290
*
@@ -293,7 +307,7 @@ rules[ 'node/no-sync' ] = 'warn';
293307
rules[ 'node/no-unpublished-bin' ] = [ 'error' ];
294308

295309
/**
296-
* Disallows `import` declarations which import private modules.
310+
* Disallow `import` declarations which import private modules.
297311
*
298312
* @name node/no-unpublished-import
299313
* @memberof rules
@@ -306,7 +320,7 @@ rules[ 'node/no-unpublished-import' ] = [ 'error', {
306320
}];
307321

308322
/**
309-
* Disallows `require()` expressions which import private modules.
323+
* Disallow `require()` expressions which import private modules.
310324
*
311325
* @name node/no-unpublished-require
312326
* @memberof rules
@@ -319,7 +333,46 @@ rules[ 'node/no-unpublished-require' ] = [ 'error', {
319333
}];
320334

321335
/**
322-
* Makes ESLint come to address `process.exit()` as throw in code path analysis.
336+
* Disallow ECMAScript built-ins unsupported by Node.js version 0.12.
337+
*
338+
* @name node/no-unsupported-features/es-builtins
339+
* @memberof rules
340+
* @type {Array}
341+
* @see [node/no-unsupported-features/es-builtins]{@link https://github.com/mysticatea/eslint-plugin-node/blob/master/docs/rules/no-unsupported-features/es-builtins.md}
342+
*/
343+
rules[ 'node/no-unsupported-features/es-builtins' ] = [ 'error', {
344+
'version': '>=0.12.18',
345+
'ignores': []
346+
}];
347+
348+
/**
349+
* Disallow ECMAScript syntax unsupported by Node.js version 0.12.
350+
*
351+
* @name node/no-unsupported-features/es-syntax
352+
* @memberof rules
353+
* @type {Array}
354+
* @see [node/no-unsupported-features/es-syntax]{@link https://github.com/mysticatea/eslint-plugin-node/blob/master/docs/rules/no-unsupported-features/es-syntax.md}
355+
*/
356+
rules[ 'node/no-unsupported-features/es-syntax' ] = [ 'error', {
357+
'version': '>=0.12.18',
358+
'ignores': []
359+
}];
360+
361+
/**
362+
* Disallow Node.js built-in APIs unsupported by Node.js version 0.12.
363+
*
364+
* @name node/no-unsupported-features/node-builtins
365+
* @memberof rules
366+
* @type {Array}
367+
* @see [node/no-unsupported-features/node-builtins]{@link https://github.com/mysticatea/eslint-plugin-node/blob/master/docs/rules/no-unsupported-features/node-builtins.md}
368+
*/
369+
rules[ 'node/no-unsupported-features/node-builtins' ] = [ 'error', {
370+
'version': '>=0.12.18',
371+
'ignores': []
372+
}];
373+
374+
/**
375+
* Make ESLint come to address `process.exit()` as throw in code path analysis.
323376
*
324377
* @name node/process-exit-as-throw
325378
* @memberof rules
@@ -330,7 +383,7 @@ rules[ 'node/no-unpublished-require' ] = [ 'error', {
330383
rules[ 'node/process-exit-as-throw' ] = 'error';
331384

332385
/**
333-
* Suggests correct usage of shebang for `bin` files.
386+
* Suggest correct usage of shebang for `bin` files.
334387
*
335388
* @name node/shebang
336389
* @memberof rules

0 commit comments

Comments
 (0)