0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-03-04 09:57:11 -05:00

fix(lint): don't mark plugin diagnostic as fixable, if it's not (#28147)

A vector with fixes was always created, even if there were no
applicable fixes.
This commit is contained in:
Bartek Iwańczuk 2025-02-17 15:46:55 +01:00 committed by GitHub
parent 70d775c57d
commit 1f169f4b09
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 48 additions and 4 deletions

View file

@ -146,10 +146,14 @@ impl LintPluginContainer {
})
.collect::<Result<Vec<LintFixChange>, LintReportError>>()?;
let fixes = vec![LintFix {
changes,
description: format!("Fix this {} problem", id).into(),
}];
let mut fixes = vec![];
if !changes.is_empty() {
fixes.push(LintFix {
changes,
description: format!("Fix this {} problem", id).into(),
});
}
let lint_diagnostic = LintDiagnostic {
specifier,

View file

@ -0,0 +1,6 @@
{
"tempDir": true,
"args": "lint a.ts",
"output": "lint.out",
"exitCode": 1
}

View file

@ -0,0 +1 @@
const _a = "foo";

View file

@ -0,0 +1,5 @@
{
"lint": {
"plugins": ["./plugin.ts"]
}
}

View file

@ -0,0 +1,9 @@
error[test-plugin/my-rule]: should be _b
--> [WILDCARD]a.ts:1:7
|
1 | const _a = "foo";
| ^^
Found 1 problem
Checked 1 file

View file

@ -0,0 +1,19 @@
export default {
name: "test-plugin",
rules: {
"my-rule": {
create(context) {
return {
Identifier(node) {
if (node.name === "_a") {
context.report({
node,
message: "should be _b",
});
}
},
};
},
},
},
};