Clone this repo:
  1. 61cb540 Update example version numbers by Liam Miller-Cushon · 4 weeks ago master
  2. f102308 [maven-release-plugin] prepare for next development iteration by Liam Miller-Cushon · 4 weeks ago
  3. 24f4d7d [maven-release-plugin] prepare release v2.3.3 by Liam Miller-Cushon · 4 weeks ago v2.3.3
  4. 60e2caf Undo accidental version downgrade in cbe145af6e705512e6ac765e48860844ef8c00dd. by Liam Miller-Cushon · 4 weeks ago
  5. c1f7363 Fix some NPEs in preparation for the next release RELNOTES: N/A by cushon · 4 weeks ago

Error Prone

Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time.

public class ShortSet {
  public static void main (String[] args) {
    Set<Short> s = new HashSet<>();
    for (short i = 0; i < 100; i++) {
      s.remove(i - 1);
error: [CollectionIncompatibleType] Argument 'i - 1' should not be passed to this method;
its type int is not compatible with its collection's type argument Short
      s.remove(i - 1);
1 error

Getting Started

Our documentation is at

Error Prone works with Bazel, Maven, Ant, and Gradle. See our installation instructions for details.

Developing Error Prone

Developing and building Error Prone is documented on the wiki.