modelcontextprotocol / modelcontextprotocol/java-sdk
Migrate null annotations to jspecify
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 3.7k
- Forks
- 1.1k
- Merge medio
- 1 d 15 h
- PR fusionados (30 d)
- 9
Descripción
Currently, the sdk uses Reactor's reactor.util.annotation.Nullable annotations, such as here
This is causing warnings in my downstream build since that type refers to javax classes I don't have on the classpath.
This is Reactor Nullable, along with its imports:
import javax.annotation.Nonnull;
import javax.annotation.meta.TypeQualifierNickname;
import javax.annotation.meta.When;
@Nonnull(when = When.MAYBE)
@TypeQualifierNickname
@Deprecated
public @interface Nullable {
}
The Reactor type is now deprecated, and they recommend you using JSpecify which is fast becoming the standard, if it is not already.
I can possibly submit a PR for this, but I notice a lot of PRs opened recently have limited activity, so will wait for the go-ahead first.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con mcp-core/src/main/java/io/modelcontextprotocol/util/Assert.java y busca en el repositorio reactor.util.annotation.Nullable y las anotaciones de nulabilidad relacionadas de Reactor. Comprueba la configuración de compilación para localizar la dependencia de JSpecify y, después, verifica que todas las anotaciones relevantes utilicen JSpecify y que el SDK se compile sin requerir las clases de anotaciones de javax.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- api, backend
- Tipo de issue
- Refactorización
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Activo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 68/100