diff --git a/README.md b/README.md index b68094bf..54d81b8c 100644 --- a/README.md +++ b/README.md @@ -65,7 +65,7 @@ $ npm install --save-dev eslint eslint-plugin-node | Rule ID | Description | | |:--------|:------------|:--:| | [node/no-callback-literal](./docs/rules/no-callback-literal.md) | ensure Node.js-style error-first callback pattern is followed | | -| [node/no-exports-assign](./docs/rules/no-exports-assign.md) | disallow the assignment to `exports` | | +| [node/no-exports-assign](./docs/rules/no-exports-assign.md) | disallow the assignment to `exports` | ⭐️ | | [node/no-extraneous-import](./docs/rules/no-extraneous-import.md) | disallow `import` declarations which import extraneous modules | ⭐️ | | [node/no-extraneous-require](./docs/rules/no-extraneous-require.md) | disallow `require()` expressions which import extraneous modules | ⭐️ | | [node/no-missing-import](./docs/rules/no-missing-import.md) | disallow `import` declarations which import non-existence modules | ⭐️ | diff --git a/docs/rules/no-exports-assign.md b/docs/rules/no-exports-assign.md index 98546320..7db2d966 100644 --- a/docs/rules/no-exports-assign.md +++ b/docs/rules/no-exports-assign.md @@ -1,5 +1,6 @@ # node/no-exports-assign > disallow the assignment to `exports` +> - ⭐️ This rule is included in `plugin:node/recommended` preset. To assign to `exports` variable would not work as expected. @@ -38,7 +39,6 @@ exports = module.exports = {} exports = {} ``` - ## 🔎 Implementation - [Rule source](../../lib/rules/no-exports-assign.js) diff --git a/lib/configs/_commons.js b/lib/configs/_commons.js index 82b83eb1..1c36213e 100644 --- a/lib/configs/_commons.js +++ b/lib/configs/_commons.js @@ -59,9 +59,13 @@ module.exports = { commonRules: { "no-process-exit": "error", "node/no-deprecated-api": "error", + "node/no-extraneous-import": "error", "node/no-extraneous-require": "error", + "node/no-exports-assign": "error", + "node/no-missing-import": "error", "node/no-missing-require": "error", "node/no-unpublished-bin": "error", + "node/no-unpublished-import": "error", "node/no-unpublished-require": "error", "node/no-unsupported-features/es-builtins": "error", "node/no-unsupported-features/es-syntax": "error", diff --git a/lib/configs/recommended-module.js b/lib/configs/recommended-module.js index 89270597..b322420e 100644 --- a/lib/configs/recommended-module.js +++ b/lib/configs/recommended-module.js @@ -19,9 +19,6 @@ module.exports = { plugins: ["node"], rules: { ...commonRules, - "node/no-extraneous-import": "error", - "node/no-missing-import": "error", - "node/no-unpublished-import": "error", "node/no-unsupported-features/es-syntax": [ "error", { ignores: ["modules"] }, diff --git a/lib/configs/recommended-script.js b/lib/configs/recommended-script.js index 3a294d18..1c8f5c4a 100644 --- a/lib/configs/recommended-script.js +++ b/lib/configs/recommended-script.js @@ -7,7 +7,7 @@ module.exports = { ...commonGlobals, __dirname: "readonly", __filename: "readonly", - exports: "readonly", + exports: "writable", module: "readonly", require: "readonly", }, @@ -19,9 +19,6 @@ module.exports = { plugins: ["node"], rules: { ...commonRules, - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unpublished-import": "off", "node/no-unsupported-features/es-syntax": ["error", { ignores: [] }], }, } diff --git a/lib/rules/no-exports-assign.js b/lib/rules/no-exports-assign.js index 04e0539f..ea033748 100644 --- a/lib/rules/no-exports-assign.js +++ b/lib/rules/no-exports-assign.js @@ -39,7 +39,7 @@ module.exports = { docs: { description: "disallow the assignment to `exports`", category: "Possible Errors", - recommended: false, + recommended: true, url: "https://github.com/mysticatea/eslint-plugin-node/blob/v9.2.0/docs/rules/no-exports-assign.md", },