We have two different kinds of `@RequiresOptIn` an...
# library-development
l
We have two different kinds of
@RequiresOptIn
annotations in our library. 1. Annotations for new experimental API that might change. 2. Annotations for API that is easy to use incorrectly. Which
AnnotationRetention
should be used in each case? (
BINARY
or
RUNTIME
,
SOURCE
isn't allowed)
i
Official libraries usually just use
BINARY
for all the experimental annotations, even though nobody scans them through reflection.