github typetools/checker-framework checker-framework-3.8.0
Checker Framework 3.8.0

latest releases: checker-framework-3.52.1, checker-framework-3.52.0, checker-framework-3.51.1...
5 years ago

Version 3.8.0, December 1, 2020

The Initialized Fields Checker warns when a field is not initialized by a constructor. This is more general than the Initialization Checker, which only checks that @NonNull fields are initialized.

The manual describes how to modify an sbt build file to run the Checker Framework.

The -AwarnUnneededSuppressions command-line option warns only about suppression strings that contain a checker name.

The -AwarnUnneededSuppressionsExceptions=REGEX command-line option partially disables -AwarnUnneededSuppressions. Most users don't need this.

Implementation details:

Added classes SubtypeIsSubsetQualifierHierarchy and SubtypeIsSupersetQualifierHierarchy.

Moved the contractsUtils field from the visitor to the type factory.

Class renamings:

  • ContractsUtils => ContractsFromMethod

Method renamings:

  • ElementUtils.getVerboseName => ElementUtils.getQualifiedName
  • ElementUtils.getSimpleName => ElementUtils.getSimpleSignature

Field renamings:

  • AnnotatedTypeMirror.actualType => AnnotatedTypeMirror.underlyingType

Added a formal parameter to methods in MostlyNoElementQualifierHierarchy:

  • leastUpperBoundWithElements
  • greatestLowerBoundWithElements

Removed a formal parameter from methods in BaseTypeVisitor:

  • checkPostcondition
  • checkConditionalPostcondition

In Analysis.runAnalysisFor(), changed boolean parameter to enum BeforeOrAfter.

Removed org.checkerframework.framework.util.AnnotatedTypes#getIteratedType; use AnnotatedTypeFactory#getIterableElementType(ExpressionTree) instead.

Closed issues:
#3287, #3390, #3681, #3839, #3850, #3851, #3862, #3871, #3884, #3888, #3908, #3929, #3932, #3935.

Don't miss a new checker-framework release

NewReleases is sending notifications on new releases.