operator-framework / operator-framework/java-operator-sdk

Marking public APIs with `@Public` annotation

Đang mở
#3,419 0 bình luận 0 reaction 1 người được giao Xem trên GitHub

@csviri đang làm issue này rồi.

Từ ngày 18/6/2026.

  • #3428 của @csviri — đã đóng, không merge
Ngôn ngữ chính
Java
Star
944
Fork
242
Merge trung bình
1 ngày 4 giờ
Pull request đã merge (30 ngày)
43

Mô tả

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:

  1. org.apiguardian:apiguardian-api:
@API(status = Status.STABLE)
@API(status = Status.EXPERIMENTAL)
@API(status = Status.INTERNAL)
@API(status = Status.MAINTAINED)
@API(status = Status.DEPRECATED)
  1. audience-annotations in yetus

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 @Experimental annotation.
  • this could be done an an inverse way, so marking internal API, butin our case would be probably harder to do (or more code)

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.