I added @InternalApi to all the classes that were marked “consider this class 
private”. As for the plugins, yes, now that we’ve got that stabilized, I think 
that makes sense to keep stable, too.
—
Matt Sicker

> On Nov 5, 2023, at 16:22, Ralph Goers <ralph.go...@dslextreme.com> wrote:
> 
> 
> 
>> On Nov 5, 2023, at 2:58 PM, Matt Sicker <m...@musigma.org> wrote:
> 
>> I’ve suggested that we annotate code around API compatibility guarantees, 
>> and we are using @InternalApi in main to mark things that shouldn’t be used 
>> as stable code (even if it’s unlikely to change over time).
>> 
> 
> Please be careful of your usage of the term “API”. Log4j-API is one thing. 
> Very little in it should be private but there is some stuff. We have done a 
> decent job of adding comments of “consider this priviate” but using 
> annotations and any tooling we can to enforce that would greatly help.
> 
> As for the other modules, Log4j-Plugins obviously has a publicly exposed API. 
> That was intentional as my hope is that eventually Log4j-Plugins could become 
> a general use framework, not specific to Log4j. Log4j-Core is where the real 
> meat of this is. If we wanted to be really clear we could have split 
> log4j-core into log4j-core-api and log4j-core-impl but using JPMS and 
> annotations should be enough.
> 
> Ralph
> 

Reply via email to