From 502f6b0c37e7069215992ed8d31268f7d8d293a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=BE=E6=98=8E=E5=81=A5?= Date: Mon, 3 Apr 2023 20:41:41 +0800 Subject: [PATCH] feat(basic): prefer non global object of node (#159) Co-authored-by: Anthony Fu --- packages/eslint-config-basic/index.js | 5 ++++ packages/eslint-config-basic/package.json | 1 + pnpm-lock.yaml | 29 +++++++++++++++++++++++ 3 files changed, 35 insertions(+) diff --git a/packages/eslint-config-basic/index.js b/packages/eslint-config-basic/index.js index 4ada38b091..00d5f7655d 100644 --- a/packages/eslint-config-basic/index.js +++ b/packages/eslint-config-basic/index.js @@ -49,6 +49,7 @@ module.exports = { 'antfu', 'no-only-tests', 'unused-imports', + 'node', ], settings: { 'import/resolver': { @@ -315,6 +316,10 @@ module.exports = { 'operator-linebreak': ['error', 'before'], 'max-statements-per-line': ['error', { max: 1 }], + // node + // 'node/prefer-global/process': ['error', 'never'], // Not sure if we need it as we are using `process.env.NODE_ENV` a lot in front-end. + 'node/prefer-global/buffer': ['error', 'never'], + // unicorns // Pass error message when throwing errors 'unicorn/error-message': 'error', diff --git a/packages/eslint-config-basic/package.json b/packages/eslint-config-basic/package.json index 81d4ea16f3..7e75a19163 100644 --- a/packages/eslint-config-basic/package.json +++ b/packages/eslint-config-basic/package.json @@ -27,6 +27,7 @@ "eslint-plugin-markdown": "^3.0.0", "eslint-plugin-n": "^15.7.0", "eslint-plugin-no-only-tests": "^3.1.0", + "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^6.1.1", "eslint-plugin-unicorn": "^46.0.0", "eslint-plugin-unused-imports": "^2.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 15381ce3b3..b70e9c39f7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,6 +98,9 @@ importers: eslint-plugin-no-only-tests: specifier: ^3.1.0 version: 3.1.0 + eslint-plugin-node: + specifier: ^11.1.0 + version: 11.1.0(eslint@8.37.0) eslint-plugin-promise: specifier: ^6.1.1 version: 6.1.1(eslint@8.37.0) @@ -1608,6 +1611,17 @@ packages: - supports-color dev: false + /eslint-plugin-es@3.0.1(eslint@8.37.0): + resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} + engines: {node: '>=8.10.0'} + peerDependencies: + eslint: '>=4.19.1' + dependencies: + eslint: 8.37.0 + eslint-utils: 2.1.0 + regexpp: 3.2.0 + dev: false + /eslint-plugin-es@4.1.0(eslint@8.37.0): resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} engines: {node: '>=8.10.0'} @@ -1736,6 +1750,21 @@ packages: engines: {node: '>=5.0.0'} dev: false + /eslint-plugin-node@11.1.0(eslint@8.37.0): + resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} + engines: {node: '>=8.10.0'} + peerDependencies: + eslint: '>=5.16.0' + dependencies: + eslint: 8.37.0 + eslint-plugin-es: 3.0.1(eslint@8.37.0) + eslint-utils: 2.1.0 + ignore: 5.2.4 + minimatch: 3.1.2 + resolve: 1.22.1 + semver: 6.3.0 + dev: false + /eslint-plugin-promise@6.1.1(eslint@8.37.0): resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}