+1 Christian this is a nice idea - maybe RetentionPolicy.SOURCE
annotations? (so we don't have to bring the dependency in each
component for runtime...)
Simo

http://people.apache.org/~simonetripodi/
http://simonetripodi.livejournal.com/
http://twitter.com/simonetripodi
http://www.99soft.org/



On Mon, Dec 5, 2011 at 4:21 PM, Christian Grobmeier <grobme...@gmail.com> wrote:
> Henri,
>
> I would love to see this as a Commons recommendation on the Wiki.
> As Stefan mentioned, in Compress we have @experimental annons (I
> actually added them).
> I like the idea to make up a public, rarely to break interface api and
> some not so public sometimes to break implementation. Maybe we should
> even consider to create an interface jar and an implementation jar of
> different versions. On the other hand this makes things complex - but
> anyway....
>
> Cheers
> Christian
>
> On Sun, Dec 4, 2011 at 11:41 AM, henrib <hen...@apache.org> wrote:
>> Keeping track as it evolves based on feedback;
>>
>> Goal is to allow easy definition, usage and check of stable APIs.
>> An annotation and a package naming convention allow the project developer to
>> clearly state when a class/method/field is not part of the stable contract
>> despite a public/protected declaration but only of the internal part of the
>> project.
>>
>> @internal annotated class/method or *internal* package mean "use this at
>> your own maintenance cost"; those are not part of the "public" API. They can
>> be used and extended but are subject to change between versions without
>> @deprecated annotations.
>>
>> Those annotations and conventions should allow feeding a clirr report with
>> the proper information to allow detection of unintended API breakage and may
>> even allow creating IDE plugins to warn about usage.
>>
>> --
>> View this message in context: 
>> http://apache-commons.680414.n4.nabble.com/RELEASE-PROCESS-Stability-versus-usability-tp4150322p4156552.html
>> Sent from the Commons - Dev mailing list archive at Nabble.com.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>> For additional commands, e-mail: dev-h...@commons.apache.org
>>
>
>
>
> --
> http://www.grobmeier.de
> https://www.timeandbill.de
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to