So, I'm looking forward to what looks like the imminent release of version 1.0.0 - well done all involved.
However, as my mind turns to using it in our code, a query of how it will interact with the various other annotations springs to mind (ahem).
I guess the "belt+braces" solution is (bear with me ...);
@org.jspecify.annotations.NonNull [1]
@javax.annotation.Nonnull [2]
@jakarta.annotation.Nonnull [3]
@org.springframework.lang.NonNull [4]
@jakarta.validation.constraints.NotNull [5]
public MyClass getFoo() {...}
Now, AIUI, jspecify, [1], replaces [2] and [3] so we can strike those out (and yes, [2] and [3] really should be mutually exclusive, but this is just an example!).
However, unless I've missed something I think [5] will still be required if you want to use a validation framework, no? (and I guess for consistency I could have included @javax.validation.constraints.NotNull in that list but didn't!)
Can anyone correct my mis-apprehensions here?
Thanks,
Greg