InfoQ Homepage News JSpecify 1.0.0 and Nullability in Java
The JSpecify collective has made their first release, JSpecify 1.0.0. The group's mission is to define common sets of annotation types for use in JVM languages, to improve static analysis and language interoperation.
By participating in JSpecify, the members guarantee their projects will be backwards compatibility at source level. This means that they will not rename the annotations in the jar, move them or make other changes that would cause code compilation to fail due to an update. In other words, it is safe to depend on it, and it won't be changed in any way that breaks application code.
This initial release focuses on the use of type-use annotations to indicate the nullability status of usages of static types. The primary use cases are expected to be variables, parameters and return values, but they can be used anywhere that tracking nullness makes conceptual sense.