Upgrade NullAway to 0.12.4

This commit also slightly refines nullness but without
significant user-side impact expected.

Closes gh-34525
This commit is contained in:
Sébastien Deleuze
2025-03-03 08:43:34 +01:00
parent f7db4bf4f0
commit 7bc712e304
16 changed files with 27 additions and 28 deletions

View File

@@ -232,8 +232,7 @@ class DefaultClientResponse implements ClientResponse {
});
}
@SuppressWarnings("NullAway") // https://github.com/uber/NullAway/issues/1126
private Function<ResolvableType, ? extends @Nullable Object> initDecodeFunction(byte[] body, @Nullable MediaType contentType) {
private Function<ResolvableType, @Nullable Object> initDecodeFunction(byte[] body, @Nullable MediaType contentType) {
return targetType -> {
if (ObjectUtils.isEmpty(body)) {
return null;

View File

@@ -92,7 +92,6 @@ public class CompositeRequestCondition extends AbstractRequestCondition<Composit
}
@Override
@SuppressWarnings("NullAway") // https://github.com/uber/NullAway/issues/1126
protected Collection<? extends @Nullable Object> getContent() {
return (!isEmpty() ? getConditions() : Collections.emptyList());
}

View File

@@ -23,6 +23,7 @@ import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Stream;
import kotlin.Unit;
@@ -355,7 +356,7 @@ public class InvocableHandlerMethod extends HandlerMethod {
KType type = parameter.getType();
if (!(type.isMarkedNullable() && arg == null) && type.getClassifier() instanceof KClass<?> kClass
&& KotlinDetector.isInlineClass(JvmClassMappingKt.getJavaClass(kClass))) {
KFunction<?> constructor = KClasses.getPrimaryConstructor(kClass);
KFunction<?> constructor = Objects.requireNonNull(KClasses.getPrimaryConstructor(kClass));
if (!KCallablesJvm.isAccessible(constructor)) {
KCallablesJvm.setAccessible(constructor, true);
}

View File

@@ -16,6 +16,8 @@
package org.springframework.web.reactive.result.method.annotation;
import java.util.Objects;
import org.jspecify.annotations.Nullable;
import reactor.core.publisher.Mono;
@@ -69,7 +71,7 @@ public abstract class AbstractNamedValueSyncArgumentResolver extends AbstractNam
MethodParameter parameter, BindingContext context, ServerWebExchange exchange) {
// This won't block since resolveName below doesn't
return resolveArgument(parameter, context, exchange).block();
return Objects.requireNonNull(resolveArgument(parameter, context, exchange).block());
}
@Override