Skip to content

Commit 4f5440d

Browse files
authoredMay 19, 2023
fix: incorrect warning message for ignored dotfiles (#17196)
1 parent ddc5291 commit 4f5440d

File tree

2 files changed

+21
-5
lines changed

2 files changed

+21
-5
lines changed
 

‎lib/eslint/eslint-helpers.js

+1-5
Original file line numberDiff line numberDiff line change
@@ -591,13 +591,9 @@ function isErrorMessage(message) {
591591
*/
592592
function createIgnoreResult(filePath, baseDir) {
593593
let message;
594-
const isHidden = filePath.split(path.sep)
595-
.find(segment => /^\./u.test(segment));
596594
const isInNodeModules = baseDir && path.relative(baseDir, filePath).startsWith("node_modules");
597595

598-
if (isHidden) {
599-
message = "File ignored by default. Use a negated ignore pattern (like \"--ignore-pattern '!<relative/path/to/filename>'\") to override.";
600-
} else if (isInNodeModules) {
596+
if (isInNodeModules) {
601597
message = "File ignored by default because it is located under the node_modules directory. Use ignore pattern \"!**/node_modules/\" to override.";
602598
} else {
603599
message = "File ignored because of a matching ignore pattern. Use \"--no-ignore\" to override.";

‎tests/lib/eslint/flat-eslint.js

+20
Original file line numberDiff line numberDiff line change
@@ -1340,6 +1340,26 @@ describe("FlatESLint", () => {
13401340
assert.strictEqual(results[0].suppressedMessages.length, 0);
13411341
});
13421342

1343+
it("should return a warning about matching ignore patterns when an explicitly given dotfile is ignored", async () => {
1344+
eslint = new FlatESLint({
1345+
overrideConfigFile: "eslint.config_with_ignores.js",
1346+
cwd: getFixturePath()
1347+
});
1348+
const filePath = getFixturePath("dot-files/.a.js");
1349+
const results = await eslint.lintFiles([filePath]);
1350+
1351+
assert.strictEqual(results.length, 1);
1352+
assert.strictEqual(results[0].filePath, filePath);
1353+
assert.strictEqual(results[0].messages[0].severity, 1);
1354+
assert.strictEqual(results[0].messages[0].message, "File ignored because of a matching ignore pattern. Use \"--no-ignore\" to override.");
1355+
assert.strictEqual(results[0].errorCount, 0);
1356+
assert.strictEqual(results[0].warningCount, 1);
1357+
assert.strictEqual(results[0].fatalErrorCount, 0);
1358+
assert.strictEqual(results[0].fixableErrorCount, 0);
1359+
assert.strictEqual(results[0].fixableWarningCount, 0);
1360+
assert.strictEqual(results[0].suppressedMessages.length, 0);
1361+
});
1362+
13431363
it("should return two messages when given a file in excluded files list while ignore is off", async () => {
13441364
eslint = new FlatESLint({
13451365
cwd: getFixturePath(),

0 commit comments

Comments
 (0)
Please sign in to comment.