Skip to content

Checker Framework 2.8.0

Compare
Choose a tag to compare
@smillst smillst released this 03 Apr 20:35
· 4540 commits to master since this release

Version 2.8.0, April 3, 2019

Support androidx.annotation.RecentlyNonNull and RecentlyNullable (as of 2.6.0, but not previously documented).

The following qualifiers are now repeatable: @DefaultQualifier @EnsuresQualifierIf @EnsuresQualifier @RequiresQualifier. Therefore, users generally do not need to write the following wrapper annotations: @DefaultQualifiers @EnsuresQualifiersIf @EnsuresQualifiers @RequiresQualifiers.

New command-line option -ArequirePrefixInWarningSuppressions makes @SuppressWarnings recognize warning keys of the form "checkername:key.about.problem" but ignore warning keys of the form "key.about.problem" without the checker name as a prefix.

New CONSTRUCTOR_RESULT enum constant in TypeUseLocation makes it possible to set default annotations for constructor results.

Clarified the semantics of annotations on class and constructor declarations. See Section 25.5 "Annotations on classes and constructors" in the manual.

Interface changes:

  • Added protected methods to BaseTypeVisitor so that checkers can change the checks for annotations on classes, constructor declarations, and constructor invocations.
  • Removed BaseTypeVisitor#checkAssignability and BaseTypeVisitor#isAssignable methods.
  • Renamed AnnotatedTypeFactory#getEnclosingMethod to AnnotatedTypeFactory#getEnclosingElementForArtificialTree

Closed issues:
2159, 2230, 2318, 2324, 2330, 2334, 2343, 2344, 2353, 2366, 2367, 2370, 2371, 2385.