Skip to content

Commit

Permalink
chore: Remove some uses of lodash.merge (#18179)
Browse files Browse the repository at this point in the history
  • Loading branch information
mdjermanovic committed Mar 7, 2024
1 parent 1c173dc commit 925afa2
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 33 deletions.
53 changes: 26 additions & 27 deletions eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ const internalPlugin = require("eslint-plugin-internal-rules");
const eslintPluginRulesRecommendedConfig = require("eslint-plugin-eslint-plugin/configs/rules-recommended");
const eslintPluginTestsRecommendedConfig = require("eslint-plugin-eslint-plugin/configs/tests-recommended");
const globals = require("globals");
const merge = require("lodash.merge");
const eslintConfigESLintCJS = require("eslint-config-eslint/cjs");

//-----------------------------------------------------------------------------
Expand Down Expand Up @@ -114,15 +113,15 @@ module.exports = [
{
files: ["lib/rules/*", "tools/internal-rules/*"],
ignores: ["**/index.js"],
...merge({}, eslintPluginRulesRecommendedConfig, {
rules: {
"eslint-plugin/prefer-placeholders": "error",
"eslint-plugin/prefer-replace-text": "error",
"eslint-plugin/report-message-format": ["error", "[^a-z].*\\.$"],
"eslint-plugin/require-meta-docs-description": ["error", { pattern: "^(Enforce|Require|Disallow) .+[^. ]$" }],
"internal-rules/no-invalid-meta": "error"
}
})
...eslintPluginRulesRecommendedConfig,
rules: {
...eslintPluginRulesRecommendedConfig.rules,
"eslint-plugin/prefer-placeholders": "error",
"eslint-plugin/prefer-replace-text": "error",
"eslint-plugin/report-message-format": ["error", "[^a-z].*\\.$"],
"eslint-plugin/require-meta-docs-description": ["error", { pattern: "^(Enforce|Require|Disallow) .+[^. ]$" }],
"internal-rules/no-invalid-meta": "error"
}
},
{
files: ["lib/rules/*"],
Expand All @@ -133,23 +132,23 @@ module.exports = [
},
{
files: ["tests/lib/rules/*", "tests/tools/internal-rules/*"],
...merge({}, eslintPluginTestsRecommendedConfig, {
rules: {
"eslint-plugin/test-case-property-ordering": [
"error",
[
"name",
"filename",
"code",
"output",
"options",
"languageOptions",
"errors"
]
],
"eslint-plugin/test-case-shorthand-strings": "error"
}
})
...eslintPluginTestsRecommendedConfig,
rules: {
...eslintPluginTestsRecommendedConfig.rules,
"eslint-plugin/test-case-property-ordering": [
"error",
[
"name",
"filename",
"code",
"output",
"options",
"languageOptions",
"errors"
]
],
"eslint-plugin/test-case-shorthand-strings": "error"
}
},
{
files: ["tests/**/*.js"],
Expand Down
8 changes: 2 additions & 6 deletions tests/lib/rules/no-invalid-this.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@
// Requirements
//------------------------------------------------------------------------------

const merge = require("lodash.merge");

const rule = require("../../../lib/rules/no-invalid-this");
const RuleTester = require("../../../lib/rule-tester/rule-tester");

Expand Down Expand Up @@ -72,7 +70,8 @@ function extractPatterns(patterns, type) {

// Clone and apply the pattern environment.
const patternsList = patterns.map(pattern => pattern[type].map(applyCondition => {
const thisPattern = merge({}, pattern);
const { valid, invalid, ...rest } = pattern; // eslint-disable-line no-unused-vars -- `valid` and `invalid` are used just to exclude properties
const thisPattern = structuredClone(rest);

applyCondition(thisPattern);

Expand All @@ -82,9 +81,6 @@ function extractPatterns(patterns, type) {
thisPattern.code += " /* should error */";
}

delete thisPattern.valid;
delete thisPattern.invalid;

return thisPattern;
}));

Expand Down

0 comments on commit 925afa2

Please sign in to comment.