Add missing @Nullable type annotations to getBean signatures#50761
Closed
subhramit wants to merge 1 commit into
Closed
Add missing @Nullable type annotations to getBean signatures#50761subhramit wants to merge 1 commit into
@Nullable type annotations to getBean signatures#50761subhramit wants to merge 1 commit into
Conversation
…tionContextAssert.java` Signed-off-by: subhramit <subhramit.bb@live.in>
@Nullable annotations to getBean signatures@Nullable type annotations to getBean signatures
Author
|
Closing as covered by #50701. |
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.
Context
Nullaway had some warnings highlighted in https://github.com/uber/NullAway/actions/runs/27324825986/job/80868514555
On taking a look, they seemed to have merit.
For example, in
spring-boot/core/spring-boot-test/src/main/java/org/springframework/boot/test/context/assertj/ApplicationContextAssert.java
Lines 365 to 378 in 8ccf2e9
assertThat(bean)wherebeanis@Nullable TinfersObjectAssert<@Nullable T>, i.e.AbstractObjectAssert<ObjectAssert<@Nullable T>, @Nullable T>. The declared return type isAbstractObjectAssert<?, T>with a non-nullTin the actual (second) type-argument. So@Nullable Tflowing into aTslot is flagged by NullAway.The javadoc also states:
spring-boot/core/spring-boot-test/src/main/java/org/springframework/boot/test/context/assertj/ApplicationContextAssert.java
Lines 348 to 349 in 8ccf2e9
So the actual value under test genuinely is nullable.
The PR fixes this and two other cases by making the return types of covered
getBeansignatures honest with@Nullable, thus also bringing the signatures in line with the documented behavior.