Repository navigation
typetools/checker-framework 3.51.1 release - #2192
Merged
Merged
Conversation
Co-authored-by: Michael Ernst <[email protected]> Co-authored-by: Suzanne Millstein <[email protected]> Co-authored-by: Manu Sridharan <[email protected]>
The import of typetools 3.50.0 replaced the download and source-code links of the Annotation File Utilities with typetools' statement that they are distributed with the Checker Framework, which is not true for EISOP. Restore the entries from before the import, with the version and date markers that the release scripts stamp. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… task The zip task replacing the Ant target wrote pom.xml, README and src at the archive root, whereas the Ant target put them in maven-examples-<version>/. Restore the directory. Also fix zipMavenExamples under the Gradle configuration cache: it failed with "Invocation of 'file' references a Gradle script object from a Groovy closure at execution time". Make the web site directory a Provider<Directory> instead of resolving it with file(it) in a closure. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
The rewrite for CircleCI dropped the five-minute timeout from the Gradle dependency downloads for all CI systems and local runs, so a stalled download could hang a job instead of reaching the retry. Restore the timeout in the branch for other systems; CircleCI keeps skipping it. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
The option is not in the supported options of ResourceLeakChecker and its implementation is under NO-AFU, so the manual must not tell users to pass it. Mark the item NO-AFU, like the code. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
RequiresNonEmpty.List, the container of the repeatable annotation, lacked @PreconditionAnnotation. Contract processing only unwraps a container that carries it, so two @RequiresNonEmpty annotations on one method silently enforced no precondition. All other repeatable contract annotations (RequiresNonNull, RequiresCalledMethods, ...) have the meta-annotation on their container. Add RepeatedRequiresNonEmpty, modeled on RepeatedRequiresNonNull; without the fix its three expected contracts.precondition.not.satisfied errors are missing. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…b page" The Annotation File Utilities sources are part of this repository now, so the web page should not point to the old eisop/annotation-tools location. Typetools' statement that they are distributed with the Checker Framework is accurate again. Updating the release process for the AFU is separate work. This reverts commit 732efe6. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the typetools Checker Framework 3.51.1 release into
master. The import itself was reviewed and merged in #2191 (and the earlier pulls in #2186, #2189 and #2190), following the "Updating from a different fork" steps indocs/developer/README-eisop.md. Please merge this pull request with a merge commit, with the subjecttypetools/checker-framework 3.51.1 release (#N)and an empty body, so that the typetools commits keep their authorship.Beyond the import, this pull request has commits that adapt the release to EISOP:
eisop/annotation-toolslocation is reverted in this pull request). Updating the release process for the AFU is separate work.mvn-examples.zip: restores the top-levelmaven-examples-<version>/directory that the Ant target created; this resolves the open review comment on typetools/checker-framework 3.50.0 release #2188. It also fixeszipMavenExamples, which failed under the Gradle configuration cache ("references a Gradle script object from a Groovy closure at execution time") becausefile(it)ran in a closure; I found this while testing the zip.clone-related.sh: restorestimeout 300on the Gradle downloads, which upstream's CircleCI rewrite removed for all other systems (Copilot, typetools/checker-framework 3.51.1 release #2191).@RequiresNonEmpty:RequiresNonEmpty.Listlacked@PreconditionAnnotation, so two@RequiresNonEmptyannotations on one method enforced no precondition (Copilot, typetools/checker-framework 3.51.1 release #2191).RequiresNonNulland the 14 other repeatable contract annotations already had it on their container. The newRepeatedRequiresNonEmptytest fails without the fix. The pairedeisop/jdkbranchtypetools-3.51.1-fixeshas the same one-line change; the qualifier copies must stay identical.-AenableWpiForRlcin the manual: hidden (NO-AFU) because the option is disabled here until the AFU is part of the build (Integrate the Annotation File Utilities into our build and port eisop/annotation-tools changes #2187).checker/tests/ainfer-testchecker/non-annotated.Not changed: Copilot's two comments on the
.m4prerequisites of the Azure and CircleCI Makefiles, which concern typetools' CI generators that EISOP does not use. OurreleaseVersionis unchanged; the three typetools release-version commits were imported as empty commits.Tested:
NonEmptyTest(also confirmed to fail without the fix),zipMavenExampleswith and without-PcfWebsite(the archive containsmaven-examples-<version>/),tasks --all,spotlessCheck, and therequireJavadocandjavadocDoclintAllfindings on changed lines (none). CI covers the rest.🤖 Generated with Claude Code