You can find documentation and download links for these projects at:
http://types.cs.washington.edu/jsr308/
Changes for the Checker Framework
Version 1.2.4, 15 Dec 2011
All checkers:
- @Target(TYPE_USE) meta-annotation is properly handled.
Nullness Checker:
- Do not allow nullness annotations on primitive types.
- Improvements to rawness (initialization) checks.
- Special-case known keys for System.getProperty.
- The -Alint=uninitialized command-line option now defaults to off, and
applies only to initialization of primitive and @Nullable fields. It is
not possible to disable, from the command line, the check that all
@NonNull fields are initialized. Such warnings must be suppressed
explicitly, for example by using @SuppressWarnings.
Regex Checker:
- Improved RegexUtil class.
Manual:
- Add FAQ item "Is the Checker Framework an official part of Java?"
- Trim down README.txt; users should read the manual instead.
- Improvements throughout, especially to Nullness and Regex Checker sections.
Implementation details:
- Add a new @InvisibleQualifier meta-annotation for type qualifiers.
Instead of special-casing @Unqualified in the AnnotatedTypeMirror it
now looks for this meta-annotation. This also allows type systems to
hide type qualifiers it doesn't want visible, which we now use in the
Nullness Checker to hide the @Primitive annotation.
- Nullness Checker: Introduce a new internal qualifier @Primitive that is
used for primitive types.
- Be stricter about qualifiers being present on all types. If you get
errors about missing qualifiers, check your defaulting rules.
This helped in fixing small bugs in corner cases of the type
hierarchy and type factory.
- Unify decoding type annotations from trees and elements.
- Improve handling of annotations on type variables and upper bounds.
- Support checkers that use multiple, disjoint qualifier hierarchies.
- Many bug fixes.
Changes for the Type Annotations Compiler
Version 1.2.4, 15 Dec 2011
Base build
Updated to OpenJDK 8 langtools as of 13 Dec 2011.