From 4799297ea582c81fd1e5623d32a7ddf7a7f3a126 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20De=20Boey?= Date: Fri, 3 Mar 2023 15:26:15 +0100 Subject: [PATCH] feat: use @eslint-community dependencies (#16784) --- lib/rules/no-control-regex.js | 2 +- lib/rules/no-extra-boolean-cast.js | 2 +- lib/rules/no-extra-parens.js | 2 +- lib/rules/no-implied-eval.js | 2 +- lib/rules/no-import-assign.js | 2 +- lib/rules/no-invalid-regexp.js | 2 +- lib/rules/no-misleading-character-class.js | 4 ++-- lib/rules/no-obj-calls.js | 2 +- lib/rules/no-promise-executor-return.js | 2 +- lib/rules/no-regex-spaces.js | 2 +- lib/rules/no-setter-return.js | 2 +- lib/rules/no-useless-backreference.js | 4 ++-- lib/rules/prefer-exponentiation-operator.js | 2 +- lib/rules/prefer-named-capture-group.js | 4 ++-- lib/rules/prefer-object-spread.js | 2 +- lib/rules/prefer-regex-literals.js | 4 ++-- lib/rules/require-unicode-regexp.js | 2 +- lib/rules/wrap-iife.js | 2 +- lib/source-code/source-code.js | 2 +- lib/source-code/token-store/index.js | 2 +- package.json | 4 ++-- tests/lib/rules/no-invalid-regexp.js | 9 +++++++++ 22 files changed, 35 insertions(+), 26 deletions(-) diff --git a/lib/rules/no-control-regex.js b/lib/rules/no-control-regex.js index ba108437257..c42f86d1277 100644 --- a/lib/rules/no-control-regex.js +++ b/lib/rules/no-control-regex.js @@ -5,7 +5,7 @@ "use strict"; -const RegExpValidator = require("regexpp").RegExpValidator; +const RegExpValidator = require("@eslint-community/regexpp").RegExpValidator; const collector = new (class { constructor() { this._source = ""; diff --git a/lib/rules/no-extra-boolean-cast.js b/lib/rules/no-extra-boolean-cast.js index 45252fee0e9..5f9411b4637 100644 --- a/lib/rules/no-extra-boolean-cast.js +++ b/lib/rules/no-extra-boolean-cast.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const eslintUtils = require("eslint-utils"); +const eslintUtils = require("@eslint-community/eslint-utils"); const precedence = astUtils.getPrecedence; diff --git a/lib/rules/no-extra-parens.js b/lib/rules/no-extra-parens.js index d3ea7d33415..efb01a337a2 100644 --- a/lib/rules/no-extra-parens.js +++ b/lib/rules/no-extra-parens.js @@ -8,7 +8,7 @@ // Rule Definition //------------------------------------------------------------------------------ -const { isParenthesized: isParenthesizedRaw } = require("eslint-utils"); +const { isParenthesized: isParenthesizedRaw } = require("@eslint-community/eslint-utils"); const astUtils = require("./utils/ast-utils.js"); /** @type {import('../shared/types').Rule} */ diff --git a/lib/rules/no-implied-eval.js b/lib/rules/no-implied-eval.js index 44f146171aa..c33b05d465d 100644 --- a/lib/rules/no-implied-eval.js +++ b/lib/rules/no-implied-eval.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const { getStaticValue } = require("eslint-utils"); +const { getStaticValue } = require("@eslint-community/eslint-utils"); //------------------------------------------------------------------------------ // Rule Definition diff --git a/lib/rules/no-import-assign.js b/lib/rules/no-import-assign.js index fc104fe6c46..6cf2e519868 100644 --- a/lib/rules/no-import-assign.js +++ b/lib/rules/no-import-assign.js @@ -9,7 +9,7 @@ // Helpers //------------------------------------------------------------------------------ -const { findVariable } = require("eslint-utils"); +const { findVariable } = require("@eslint-community/eslint-utils"); const astUtils = require("./utils/ast-utils"); const WellKnownMutationFunctions = { diff --git a/lib/rules/no-invalid-regexp.js b/lib/rules/no-invalid-regexp.js index 81b083536d8..b2e11a00821 100644 --- a/lib/rules/no-invalid-regexp.js +++ b/lib/rules/no-invalid-regexp.js @@ -8,7 +8,7 @@ // Requirements //------------------------------------------------------------------------------ -const RegExpValidator = require("regexpp").RegExpValidator; +const RegExpValidator = require("@eslint-community/regexpp").RegExpValidator; const validator = new RegExpValidator(); const validFlags = /[dgimsuy]/gu; const undefined1 = void 0; diff --git a/lib/rules/no-misleading-character-class.js b/lib/rules/no-misleading-character-class.js index 5649f2e37fe..9aa7079e538 100644 --- a/lib/rules/no-misleading-character-class.js +++ b/lib/rules/no-misleading-character-class.js @@ -3,8 +3,8 @@ */ "use strict"; -const { CALL, CONSTRUCT, ReferenceTracker, getStringIfConstant } = require("eslint-utils"); -const { RegExpValidator, RegExpParser, visitRegExpAST } = require("regexpp"); +const { CALL, CONSTRUCT, ReferenceTracker, getStringIfConstant } = require("@eslint-community/eslint-utils"); +const { RegExpValidator, RegExpParser, visitRegExpAST } = require("@eslint-community/regexpp"); const { isCombiningCharacter, isEmojiModifier, isRegionalIndicatorSymbol, isSurrogatePair } = require("./utils/unicode"); const astUtils = require("./utils/ast-utils.js"); diff --git a/lib/rules/no-obj-calls.js b/lib/rules/no-obj-calls.js index d24d28589f3..2e2cb5b2460 100644 --- a/lib/rules/no-obj-calls.js +++ b/lib/rules/no-obj-calls.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const { CALL, CONSTRUCT, ReferenceTracker } = require("eslint-utils"); +const { CALL, CONSTRUCT, ReferenceTracker } = require("@eslint-community/eslint-utils"); const getPropertyName = require("./utils/ast-utils").getStaticPropertyName; //------------------------------------------------------------------------------ diff --git a/lib/rules/no-promise-executor-return.js b/lib/rules/no-promise-executor-return.js index caa195ffa07..e81ed1d0451 100644 --- a/lib/rules/no-promise-executor-return.js +++ b/lib/rules/no-promise-executor-return.js @@ -9,7 +9,7 @@ // Requirements //------------------------------------------------------------------------------ -const { findVariable } = require("eslint-utils"); +const { findVariable } = require("@eslint-community/eslint-utils"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/no-regex-spaces.js b/lib/rules/no-regex-spaces.js index 6d74aabe263..e6564bc4583 100644 --- a/lib/rules/no-regex-spaces.js +++ b/lib/rules/no-regex-spaces.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const regexpp = require("regexpp"); +const regexpp = require("@eslint-community/regexpp"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/no-setter-return.js b/lib/rules/no-setter-return.js index 25e8f1428b2..a43637e7b55 100644 --- a/lib/rules/no-setter-return.js +++ b/lib/rules/no-setter-return.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const { findVariable } = require("eslint-utils"); +const { findVariable } = require("@eslint-community/eslint-utils"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/no-useless-backreference.js b/lib/rules/no-useless-backreference.js index f23535bc359..5103e098b14 100644 --- a/lib/rules/no-useless-backreference.js +++ b/lib/rules/no-useless-backreference.js @@ -9,8 +9,8 @@ // Requirements //------------------------------------------------------------------------------ -const { CALL, CONSTRUCT, ReferenceTracker, getStringIfConstant } = require("eslint-utils"); -const { RegExpParser, visitRegExpAST } = require("regexpp"); +const { CALL, CONSTRUCT, ReferenceTracker, getStringIfConstant } = require("@eslint-community/eslint-utils"); +const { RegExpParser, visitRegExpAST } = require("@eslint-community/regexpp"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/prefer-exponentiation-operator.js b/lib/rules/prefer-exponentiation-operator.js index fec5319723e..06459e25884 100644 --- a/lib/rules/prefer-exponentiation-operator.js +++ b/lib/rules/prefer-exponentiation-operator.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const { CALL, ReferenceTracker } = require("eslint-utils"); +const { CALL, ReferenceTracker } = require("@eslint-community/eslint-utils"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/prefer-named-capture-group.js b/lib/rules/prefer-named-capture-group.js index 66259fc7bed..b7055f3a4c5 100644 --- a/lib/rules/prefer-named-capture-group.js +++ b/lib/rules/prefer-named-capture-group.js @@ -14,8 +14,8 @@ const { CONSTRUCT, ReferenceTracker, getStringIfConstant -} = require("eslint-utils"); -const regexpp = require("regexpp"); +} = require("@eslint-community/eslint-utils"); +const regexpp = require("@eslint-community/regexpp"); //------------------------------------------------------------------------------ // Helpers diff --git a/lib/rules/prefer-object-spread.js b/lib/rules/prefer-object-spread.js index 7d8f7857b3c..b70ef64bded 100644 --- a/lib/rules/prefer-object-spread.js +++ b/lib/rules/prefer-object-spread.js @@ -6,7 +6,7 @@ "use strict"; -const { CALL, ReferenceTracker } = require("eslint-utils"); +const { CALL, ReferenceTracker } = require("@eslint-community/eslint-utils"); const { isCommaToken, isOpeningParenToken, diff --git a/lib/rules/prefer-regex-literals.js b/lib/rules/prefer-regex-literals.js index fdf18874e77..c9948658cb1 100644 --- a/lib/rules/prefer-regex-literals.js +++ b/lib/rules/prefer-regex-literals.js @@ -10,8 +10,8 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const { CALL, CONSTRUCT, ReferenceTracker, findVariable } = require("eslint-utils"); -const { RegExpValidator, visitRegExpAST, RegExpParser } = require("regexpp"); +const { CALL, CONSTRUCT, ReferenceTracker, findVariable } = require("@eslint-community/eslint-utils"); +const { RegExpValidator, visitRegExpAST, RegExpParser } = require("@eslint-community/regexpp"); const { canTokensBeAdjacent } = require("./utils/ast-utils"); //------------------------------------------------------------------------------ diff --git a/lib/rules/require-unicode-regexp.js b/lib/rules/require-unicode-regexp.js index 4236af6db47..efac2519fe1 100644 --- a/lib/rules/require-unicode-regexp.js +++ b/lib/rules/require-unicode-regexp.js @@ -14,7 +14,7 @@ const { CONSTRUCT, ReferenceTracker, getStringIfConstant -} = require("eslint-utils"); +} = require("@eslint-community/eslint-utils"); //------------------------------------------------------------------------------ // Rule Definition diff --git a/lib/rules/wrap-iife.js b/lib/rules/wrap-iife.js index 4c2c9275d87..66ea3f8fa46 100644 --- a/lib/rules/wrap-iife.js +++ b/lib/rules/wrap-iife.js @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ const astUtils = require("./utils/ast-utils"); -const eslintUtils = require("eslint-utils"); +const eslintUtils = require("@eslint-community/eslint-utils"); //---------------------------------------------------------------------- // Helpers diff --git a/lib/source-code/source-code.js b/lib/source-code/source-code.js index 49b2820a846..9e2b68e2d31 100644 --- a/lib/source-code/source-code.js +++ b/lib/source-code/source-code.js @@ -9,7 +9,7 @@ //------------------------------------------------------------------------------ const - { isCommentToken } = require("eslint-utils"), + { isCommentToken } = require("@eslint-community/eslint-utils"), TokenStore = require("./token-store"), astUtils = require("../shared/ast-utils"), Traverser = require("../shared/traverser"); diff --git a/lib/source-code/token-store/index.js b/lib/source-code/token-store/index.js index 25db8a4f4db..46a96b2f4b1 100644 --- a/lib/source-code/token-store/index.js +++ b/lib/source-code/token-store/index.js @@ -9,7 +9,7 @@ //------------------------------------------------------------------------------ const assert = require("assert"); -const { isCommentToken } = require("eslint-utils"); +const { isCommentToken } = require("@eslint-community/eslint-utils"); const cursors = require("./cursors"); const ForwardTokenCursor = require("./forward-token-cursor"); const PaddedTokenCursor = require("./padded-token-cursor"); diff --git a/package.json b/package.json index 1f86984079d..69026b9d166 100644 --- a/package.json +++ b/package.json @@ -60,6 +60,8 @@ "homepage": "https://eslint.org", "bugs": "https://github.com/eslint/eslint/issues/", "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.0", "@eslint/js": "8.35.0", "@humanwhocodes/config-array": "^0.11.8", @@ -72,7 +74,6 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", "espree": "^9.4.0", "esquery": "^1.4.2", @@ -96,7 +97,6 @@ "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "regexpp": "^3.2.0", "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" diff --git a/tests/lib/rules/no-invalid-regexp.js b/tests/lib/rules/no-invalid-regexp.js index 047207b5534..ceaa8f13a44 100644 --- a/tests/lib/rules/no-invalid-regexp.js +++ b/tests/lib/rules/no-invalid-regexp.js @@ -71,6 +71,15 @@ ruleTester.run("no-invalid-regexp", rule, { // ES2022 "new RegExp('a+(?z)?', 'd')", + "new RegExp('\\\\p{Script=Cpmn}', 'u')", + "new RegExp('\\\\p{Script=Cypro_Minoan}', 'u')", + "new RegExp('\\\\p{Script=Old_Uyghur}', 'u')", + "new RegExp('\\\\p{Script=Ougr}', 'u')", + "new RegExp('\\\\p{Script=Tangsa}', 'u')", + "new RegExp('\\\\p{Script=Tnsa}', 'u')", + "new RegExp('\\\\p{Script=Toto}', 'u')", + "new RegExp('\\\\p{Script=Vith}', 'u')", + "new RegExp('\\\\p{Script=Vithkuqi}', 'u')", // allowConstructorFlags {