-
Notifications
You must be signed in to change notification settings - Fork 41.5k
Closed
Description
Continuation of #46587.
High
- Add nullability to
org.springframework.boot.json.JsonWriter
(it's currently@NullUnmarked
). Fixed in 0623275 - Review if
org.springframework.boot.metrics.autoconfigure.export.properties.PropertiesConfigAdapter.Getter
is fine for us. Alternative: Rewrite withif
. - Update PropertyMapper to better support nullability #47024 Take another look at
org.springframework.boot.context.properties.PropertyMapper
, especiallyalwaysApplyingWhenNonNull
andwhenNonNull
(draft is in this branch) - Run IntelliJ IDEA null checks and fix issues
- Check if
org.springframework.boot.actuate.endpoint.SanitizableData#key
can really be null.org.springframework.boot.actuate.endpoint.SanitizableData#getLowerCaseKey
suggests so, but all the callers pass non-nullable strings. - Review
org.springframework.boot.context.config.ConfigDataLocation#of
API. It's not possible to add a contract!null -> !null
which makes it hard for users of that class. See Make ConfigDataLocation.of non-nullable #47221.
Medium
- Review
org.springframework.boot.hibernate.SpringJtaPlatform#locateTransactionManager
andorg.springframework.boot.hibernate.SpringJtaPlatform#locateUserTransaction
- Review
Mono.from(null)
inorg.springframework.boot.webflux.actuate.endpoint.web.AbstractWebFluxEndpointHandlerMapping.ReactiveWebOperationAdapter#handleResult
- Review
Mono.error(getError(request)))
inorg.springframework.boot.webflux.autoconfigure.error.DefaultErrorWebExceptionHandler#renderErrorView
- Review
org.springframework.boot.ResourceBanner#createNullDefaultSources
. Eventually aMapPropertySource
from a map containingnull
values is created, which shouldn't be possible according to the annotations onMapPropertySource
. - Review
org.springframework.boot.context.properties.source.MapConfigurationPropertySource#put
. It puts anull
key inthis.source
, which is then used withMapPropertySource
, which doesn't accept null keys (at least according to the annotations). - Review
org.springframework.boot.test.json.JsonContentAssert#compare(java.lang.CharSequence, org.skyscreamer.jsonassert.JSONCompareMode)
when passingnull
as first parameter - Review
map.from(this.properties::getLocale).to(configurer::setLocale);
inorg.springframework.boot.groovy.template.autoconfigure.GroovyTemplateAutoConfiguration.GroovyMarkupConfiguration#groovyMarkupConfigurer
Low
- Review 27c96d9
- Remove varargs checkstyle suppressions (needs release of https://github.com/spring-io/spring-javaformat)
- Remove suppression in graphql module once Missing @Nullable annotation on GraphiQlHandler spring-graphql#1276 is fixed
- Review
@SuppressWarnings("NullAway")
suppressions - Depending on
SingletonSupplier
is not singleton ifnull
is returned on first supplier call spring-framework#35369: Refactor SingletonSupplier usages to only use them with non-nullable suppliers - Review the cast to
AnnotationMetadata
inorg.springframework.boot.cache.autoconfigure.CacheCondition
To decide
- Do we want to null-check
buildSrc
? - Do we want to null-check
spring-boot-configuration-metadata
? - Do we want to null-check
spring-boot-configuration-metadata-changelog-generator
? - Do we want to null-check / add annotations to
spring-boot-docs
?
sdeleuze
Metadata
Metadata
Assignees
Labels
type: enhancementA general enhancementA general enhancement