-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Description
Environment
Node version: v16.14.0
npm version: v8.3.1
Local ESLint version: main
branch
Global ESLint version: Not found
Operating System: win32 10.0.19044
What parser are you using?
Default (Espree)
What did you do?
my-app/
├── a.js
└── eslint.config.js
// eslint.config.js
module.exports = [{
ignores: [
"*.js",
"!a*.js",
"a.js"
]
}];
Command:
eslint a.js -f tap
What did you expect to happen?
I'd expect a.js
to be ignored. It should be possible to re-ignore previously unignored files. In other words, the last pattern that matches the file should determine whether the file is ignored: if it's non-negative then the file is ignored, if it's negative then the file is not ignored,
(unless the file is in an ignored directory, in which case the file is ignored regardless of patterns that match the file itself).
What actually happened?
TAP version 13
1..1
ok 1 - D:\tmp\my-app\a.js
Participation
- I am willing to submit a pull request for this issue.
Additional comments
The same applies to directories. I believe that the code that determines whether a directory is ignored should be the same as the code that determines whether a file is ignored by ignore patterns, except that we should make sure that the directory path ends with a /
so that it can match with patterns that end with /
.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status