operator-framework / operator-framework/java-operator-sdk
Marking public APIs with `@Public` annotation
Aperta
- Lingua principale
- Java
- Stelle
- 944
- Fork
- 242
- Merge medio
- 1g 4h
- PR unite (30g)
- 43
Descrizione
In order to better communicate - in terms of semver - which our APIs are considered public we should introduce @Public annotation, and mark appropriate classes / methods etc. Note this is source level compatibility, not binary.
Note that there are libraries that provide such annotations like:
org.apiguardian:apiguardian-api:
@API(status = Status.STABLE)
@API(status = Status.EXPERIMENTAL)
@API(status = Status.INTERNAL)
@API(status = Status.MAINTAINED)
@API(status = Status.DEPRECATED)
For reference, Flink's own @Public/@PublicEvolving/@Experimental/@Internal in org.apache.flink.annotation are the same idea, but they're internal to Flink (and shaded), so not meant to be pulled in as a standalone dependency.
Notes
- we have already
@Experimentalannotation. - this could be done an an inverse way, so marking internal API, butin our case would be probably harder to do (or more code)
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Valutazione
Questa issue non è ancora stata valutata.