Skip to content

Bug Patterns page does not make clear first version on which each check is present #976

@alexkleiman

Description

@alexkleiman

The "Bug Patterns" page (http://errorprone.info/bugpatterns) lists all of the error-prone checks available, but not all of the checks on this page are available in every version of error-prone. For example, the ComparableType check is available starting in version 2.2.0, and the VarTypeName check is not available in any released version of error-prone (as of the day this bug was filed).

This is potentially confusing. For example, I attempted to explicitly pass all checks available on the "Bug Patterns" as compiler arguments when invoking error-prone, and was puzzled when seven of the flags I was passing yielded "XXX is not a valid checker name" errors. It turns out these checks are available on master but not in version 2.2.0.

I think there are two ways to help avoid this confusion:

  1. Modify the "Bug Patterns" page to clarify that the list of bug patterns is auto-generated from a bleeding-edge version of the error-prone source code.
    2)Modify the "Bug Patterns" page to include instructions on how to generate the "Bug Patterns" page from a specific version of the source code.
  2. Either in the top-level list of checks or in the individual pages for each check, list the first version in which this check was made available.

If any of these potential solutions seem useful and are easy to implement, I would be happy to submit a pull request.

Below are my answers to the requested questions.

What version of Error Prone are you using?

N/A

Does this issue reproduce with the latest release?

N/A

What did you do?

Read http://errorprone.info/bugpatterns and mistakenly assumed that each check listed on the page was available in the newest release of error-prone.

What did you expect to see?

A list of bug patterns and the versions in which they are available.

What did you see instead?

A list of bug patterns.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions