Version 3.7.1, November 2, 2020
The Constant Value Checker supports two new annotations: @EnumVal and @MatchesRegex.
The Nullness Checker supports annotation org.jspecify.annotations.NullnessUnspecified.
Implementation details:
AnnotatedIntersectionType#directSuperTypes now returns List<? extends AnnotatedTypeMirror>.
The @RelevantJavaTypes annotation is now enforced: a checker issues a warning if the programmer writes a type annotation on a type that is not listed.
Deprecated CFAbstractTransfer.getValueWithSameAnnotations(), which is no longer used. Added new methods getWidenedValue() and getNarrowedValue().
Renamed TestUtilities.assertResultsAreValid() to TestUtilities.assertTestDidNotFail().
Renamed BaseTypeValidator.isValidType() to BaseTypeValidator.isValidStructurally().
New method BaseTypeVisitor#visitAnnotatedType(List, Tree) centralizes checking of user-written type annotations, even when parsed in declaration locations.
Closed issues:
#868, #1908, #2075, #3349, #3362, #3569, #3614, #3637, #3709, #3710, #3711, #3720, #3730, #3742, #3760, #3770, #3775, #3776, #3792, #3793, #3794, #3819, #3831.