gradle-baseline icon indicating copy to clipboard operation
gradle-baseline copied to clipboard

Provide more specific error message for `StrictUsedVariable` check based on unused variable type

Open IlanaRadinsky opened this issue 6 months ago • 1 comments

Fixes https://github.com/palantir/gradle-baseline/issues/2361

Before this PR

Turns out this was just a confusing error message. Previously, a code snippet like

public class Test {
    private final String myField;

    public Test(String myField) {
        this.myField = myField;
    }
}

would result in an error message

error: [StrictUnusedVariable] The field 'field' is never read. Intentional occurrences are acknowledged by renaming the unused variable with a leading underscore. '_field', for example.
  private String field;
                 ^
    (see https://github.com/palantir/gradle-baseline#baseline-error-prone-checks)
  Did you mean to remove this line?

If you applied the fix from the error message, checks would fail because the field is read but has 'StrictUnusedVariable' suppressed because of its name (prefixed with an underscore).

But really, the correct fix is suggested below the code snippet/link - to remove the field (Did you mean to remove this line?).

After this PR

==COMMIT_MSG== Provide more specific error message for StrictUsedVariable check based on unused variable type ==COMMIT_MSG==

Possible downsides?

IlanaRadinsky avatar Aug 13 '24 18:08 IlanaRadinsky