build: update npm install command to use --legacy-peer-deps
This change modifies the build scripts to use --legacy-peer-deps flag when installing npm dependencies to resolve potential peer dependency conflicts during the build process. The change is applied to both bash (build.sh) and batch (build.bat) build scripts.
This commit is contained in:
+61
-88
@@ -20,101 +20,74 @@ const astUtils = require("./utils/ast-utils");
|
||||
// Rule Definition
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
/** @type {import('../types').Rule.RuleModule} */
|
||||
/** @type {import('../shared/types').Rule} */
|
||||
module.exports = {
|
||||
meta: {
|
||||
deprecated: {
|
||||
message: "Formatting rules are being moved out of ESLint core.",
|
||||
url: "https://eslint.org/blog/2023/10/deprecating-formatting-rules/",
|
||||
deprecatedSince: "8.53.0",
|
||||
availableUntil: "11.0.0",
|
||||
replacedBy: [
|
||||
{
|
||||
message:
|
||||
"ESLint Stylistic now maintains deprecated stylistic core rules.",
|
||||
url: "https://eslint.style/guide/migration",
|
||||
plugin: {
|
||||
name: "@stylistic/eslint-plugin",
|
||||
url: "https://eslint.style",
|
||||
},
|
||||
rule: {
|
||||
name: "new-parens",
|
||||
url: "https://eslint.style/rules/new-parens",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
type: "layout",
|
||||
meta: {
|
||||
deprecated: true,
|
||||
replacedBy: [],
|
||||
type: "layout",
|
||||
|
||||
docs: {
|
||||
description:
|
||||
"Enforce or disallow parentheses when invoking a constructor with no arguments",
|
||||
recommended: false,
|
||||
url: "https://eslint.org/docs/latest/rules/new-parens",
|
||||
},
|
||||
docs: {
|
||||
description: "Enforce or disallow parentheses when invoking a constructor with no arguments",
|
||||
recommended: false,
|
||||
url: "https://eslint.org/docs/latest/rules/new-parens"
|
||||
},
|
||||
|
||||
fixable: "code",
|
||||
schema: [
|
||||
{
|
||||
enum: ["always", "never"],
|
||||
},
|
||||
],
|
||||
messages: {
|
||||
missing: "Missing '()' invoking a constructor.",
|
||||
unnecessary:
|
||||
"Unnecessary '()' invoking a constructor with no arguments.",
|
||||
},
|
||||
},
|
||||
fixable: "code",
|
||||
schema: [
|
||||
{
|
||||
enum: ["always", "never"]
|
||||
}
|
||||
],
|
||||
messages: {
|
||||
missing: "Missing '()' invoking a constructor.",
|
||||
unnecessary: "Unnecessary '()' invoking a constructor with no arguments."
|
||||
}
|
||||
},
|
||||
|
||||
create(context) {
|
||||
const options = context.options;
|
||||
const always = options[0] !== "never"; // Default is always
|
||||
create(context) {
|
||||
const options = context.options;
|
||||
const always = options[0] !== "never"; // Default is always
|
||||
|
||||
const sourceCode = context.sourceCode;
|
||||
const sourceCode = context.sourceCode;
|
||||
|
||||
return {
|
||||
NewExpression(node) {
|
||||
if (node.arguments.length !== 0) {
|
||||
return; // if there are arguments, there have to be parens
|
||||
}
|
||||
return {
|
||||
NewExpression(node) {
|
||||
if (node.arguments.length !== 0) {
|
||||
return; // if there are arguments, there have to be parens
|
||||
}
|
||||
|
||||
const lastToken = sourceCode.getLastToken(node);
|
||||
const hasLastParen =
|
||||
lastToken && astUtils.isClosingParenToken(lastToken);
|
||||
const lastToken = sourceCode.getLastToken(node);
|
||||
const hasLastParen = lastToken && astUtils.isClosingParenToken(lastToken);
|
||||
|
||||
// `hasParens` is true only if the new expression ends with its own parens, e.g., new new foo() does not end with its own parens
|
||||
const hasParens =
|
||||
hasLastParen &&
|
||||
astUtils.isOpeningParenToken(
|
||||
sourceCode.getTokenBefore(lastToken),
|
||||
) &&
|
||||
node.callee.range[1] < node.range[1];
|
||||
// `hasParens` is true only if the new expression ends with its own parens, e.g., new new foo() does not end with its own parens
|
||||
const hasParens = hasLastParen &&
|
||||
astUtils.isOpeningParenToken(sourceCode.getTokenBefore(lastToken)) &&
|
||||
node.callee.range[1] < node.range[1];
|
||||
|
||||
if (always) {
|
||||
if (!hasParens) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "missing",
|
||||
fix: fixer => fixer.insertTextAfter(node, "()"),
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if (hasParens) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "unnecessary",
|
||||
fix: fixer => [
|
||||
fixer.remove(
|
||||
sourceCode.getTokenBefore(lastToken),
|
||||
),
|
||||
fixer.remove(lastToken),
|
||||
fixer.insertTextBefore(node, "("),
|
||||
fixer.insertTextAfter(node, ")"),
|
||||
],
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
},
|
||||
if (always) {
|
||||
if (!hasParens) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "missing",
|
||||
fix: fixer => fixer.insertTextAfter(node, "()")
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if (hasParens) {
|
||||
context.report({
|
||||
node,
|
||||
messageId: "unnecessary",
|
||||
fix: fixer => [
|
||||
fixer.remove(sourceCode.getTokenBefore(lastToken)),
|
||||
fixer.remove(lastToken),
|
||||
fixer.insertTextBefore(node, "("),
|
||||
fixer.insertTextAfter(node, ")")
|
||||
]
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user