typetools / typetools/checker-framework
A new annotation should have the semantics of both `@EnsuresCalledMethods` and `@EnsuresCalledMethodsOnException`
Open
Nobody has claimed this yet.
ResourceLeakChecker
- Dominant language
- Java
- Stars
- 1.1k
- Forks
- 440
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 134
Description
Agreed that we need such an annotation and that we can do it in a follow-up to this PR. I would strongly prefer to have at least an alias for the annotation that has fewer characters to type than `@EnsuresCalledMethodsOnAllPaths`; maybe `@AlwaysCalls`? But we can discuss that as part of the follow-up.
Originally posted by @msridhar in https://github.com/typetools/checker-framework/pull/6271#discussion_r1379175964
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the discussion in PR #6271, especially the referenced comment, to understand the requested annotation and naming options. Define what it means for one annotation to combine @EnsuresCalledMethods and @EnsuresCalledMethodsOnException, including whether an alias such as @AlwaysCalls is required; done means the semantics and naming are agreed and implemented with the relevant Checker Framework coverage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100