Closed
Description
Overview
The @API
annotation may better serve the community at large if it is moved from junit-platform-commons
to a stand-alone module.
Related Issues
- Introduce tools for @API annotation processing #144
- Make @API public to allow Extensions and TestEngines to adopt API semantics #317
- Make @API annotation available via Java reflection #375
Deliverables
- Refactor the
@API
annotation so that it has the following attributes:-
status: Status
(used to bevalue
) -
since: String
(version the status was last changed, e.g."5.0.0"
, defaults to""
) -
consumers: String[]
(list of package patterns for intended consumers, defaults to{"*"}
)
-
- Rename
Status
constants to align with industry standards for enum constants. - Set
since
attribute across the JUnit 5 code base. - ❌ Set
consumers
attribute across the JUnit 5 code base.- to be addressed in Set @API consumers attribute across the code base #1054
- Move
@API
to a stand-alone project on GitHub. - Use
@API
from the@API Guardian
project and delete@API
fromjunit-platform-commons
.