Like Spring Data did, it would be nice for both Java and Kotlin developers to leverage in Spring Boot 2 null-safety annotations (@Nullable etc) in most common Spring Boot APIs like SpringApplication and TestRestTemplate.
These annotations are now flexible enough to just target the API of these 2 classes if we want (annotating all Spring Boot would be nice but we probably don't have the time for that).
I can contribute such feature via a PR, I would mainly need guidance on what are the most common APIs used in addition to the 2 proposed.
Comment From: wilkinsona
I think it may do more harm than good to only tackle this for the most common APIs as the developer experience would be a bit inconsistent. While it may well be a lot of work, my vote is that we try to tackle this in its entirety for 2.0 or defer it in its entirety until 2.1.
Comment From: sdeleuze
Given Framework 5.0 and Data Kay support, and the fact that this is considered by many as the most important feature of our Kotlin support, I can probably contribute a PR at 2.0.0.RC1 time that you could review and polish for integrating in 2.0.0.RC2.
Comment From: wilkinsona
Thank you, @sdeleuze. I'd prefer that if we do this we get this into RC1 so that we have plenty of time for feedback and to get it right. Let's see what we can manage.
Comment From: philwebb
We think it's unlikely that we'll get to this in 2.2. In terms of effort vs reward we'd rather focus on immutable configuration properties for 2.2.
Comment From: philwebb
There are a few build tools that we should also look at: - https://github.com/uber/NullAway - https://checkerframework.org/ - https://fbinfer.com/docs/eradicate.html