Version 3.13.0 (May 3, 2021)
Survey:
If you use the Checker Framework, please answer a 3-question survey about what version of Java you use. It will take less than 1 minute to complete. Please answer it at
https://docs.google.com/forms/d/1Bbt34c_3nDItHsBnmEfumoyrR-Zxhvo3VTHucXwfMcQ .
Thanks!
User-visible changes:
Command-line argument -AassumeKeyFor makes the Nullness Checker and Map Key Checker unsoundly assume that the argument to Map.get is a key for the receiver map.
Warning message keys are shorter. This reduces clutter in error messages and in @SuppressWarnings annotations. Most ".type.invalid", ".type.incompatible", ".invalid", and ".not.satisfied" suffixes and "type.invalid." prefixes have been removed, and most ".invalid." substrings have been changed to ".".
The Checker Framework no longer crashes on code that contains binding variables (introduced in Java 14 for instanceof pattern matching), and such variables are reflected in the control flow graph (CFG). Thanks to Chris Day for this change. However, note that the Checker Framework only has full support for Java 8 and Java 11.
New command-line argument -AstubWarnNote makes stub file warnings notes rather than warnings.
Removed the StubGenerator section from the manual, because changes in JDK 11 have broken the StubGenerator program.
Implementation details:
Method renamings:
DependentTypesHelper.atReturnType=>atMethodBody
Closed issues:
#1268, #3039, #4410, #4550, #4558, #4563, #4566, #4567, #4571, #4584, #4591, #4594, #4600.