Skip to content

Commit

Permalink
fix: Ensure unignore and reignore work correctly in flat config. (#16422
Browse files Browse the repository at this point in the history
)

Upgrade @humanwhocodes/config-array to fix several issues.

Fixes #16416
Fixes #16415
  • Loading branch information
nzakas committed Oct 13, 2022
1 parent 24950b3 commit 35916ad
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 2 deletions.
2 changes: 1 addition & 1 deletion package.json
Expand Up @@ -56,7 +56,7 @@
"bugs": "https://github.com/eslint/eslint/issues/",
"dependencies": {
"@eslint/eslintrc": "^1.3.3",
"@humanwhocodes/config-array": "^0.11.2",
"@humanwhocodes/config-array": "^0.11.3",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
"ajv": "^6.10.0",
Expand Down
42 changes: 41 additions & 1 deletion tests/lib/eslint/flat-eslint.js
Expand Up @@ -1101,7 +1101,6 @@ describe("FlatESLint", () => {
assert.strictEqual(results[0].filePath, getFixturePath("ignores-relative/subdir/a.js"));
});


// https://github.com/eslint/eslint/issues/16354
it("should skip subdirectory files when ignore pattern matches subdirectory", async () => {
eslint = new FlatESLint({
Expand Down Expand Up @@ -1140,6 +1139,47 @@ describe("FlatESLint", () => {

});

// https://github.com/eslint/eslint/issues/16416
it("should allow reignoring of previously ignored files", async () => {
eslint = new FlatESLint({
cwd: getFixturePath("ignores-relative"),
overrideConfigFile: true,
overrideConfig: {
ignores: [
"*.js",
"!a*.js",
"a.js"
]
}
});
const results = await eslint.lintFiles(["a.js"]);

assert.strictEqual(results.length, 1);
assert.strictEqual(results[0].errorCount, 0);
assert.strictEqual(results[0].warningCount, 1);
assert.strictEqual(results[0].filePath, getFixturePath("ignores-relative/a.js"));
});

// https://github.com/eslint/eslint/issues/16415
it("should allow directories to be unignored", async () => {
eslint = new FlatESLint({
cwd: getFixturePath("ignores-directory"),
overrideConfigFile: true,
overrideConfig: {
ignores: [
"subdir/*",
"!subdir/subsubdir"
]
}
});
const results = await eslint.lintFiles(["subdir/**/*.js"]);

assert.strictEqual(results.length, 1);
assert.strictEqual(results[0].errorCount, 0);
assert.strictEqual(results[0].warningCount, 0);
assert.strictEqual(results[0].filePath, getFixturePath("ignores-directory/subdir/subsubdir/a.js"));
});


});

Expand Down

0 comments on commit 35916ad

Please sign in to comment.