You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Matt Benson <gu...@gmail.com> on 2012/11/28 21:44:50 UTC

[privilizer] promotion plan

Hi all,
  As long as I've been part of the Commons community I don't know that I've
encountered this exact situation:  a committer adds some code to the
sandbox that is more or less complete.  I don't know precisely what
requirements must be met before we promote [privilizer] to proper. We seem
to have interest from one or more members of the PMC as prospective users;
this would seem to imply that were I hit by a bus there ought to be someone
interested in maintaining the component.  Speaking for BVal I intend to put
this component to immediate use there (that's what I wrote it for!).  Mark
has mentioned that OWB and perhaps other ASF projects might want to make
use of it.  What else do I need to do?

Matt

Re: [privilizer] promotion plan

Posted by Matt Benson <gu...@gmail.com>.
FWIW, Simone and I had, in the past, discussed privately whether some tree
of post-compilation tools might make a sensible family of commons component
modules.  We had originally been thinking along the lines of JDK6
annotation processors, which [*privilizer] is not (no open API exists
allowing these to modify bytecode), but the basic principle applies...
Note that [attributes] was/is more or less this type of component.

Matt


On Wed, Nov 28, 2012 at 4:00 PM, Mark Struberg <st...@yahoo.de> wrote:

>
> +1
>
> It might fit to any component which does _not_ introduce a runtime
> dependency but is only needed at compile time. Basically the privilizer is
> kind of a preprocessor.
>
> If such a kind of component already exists in commons, then we can look if
> it fits to the business of this component. Otherwise it's a new module imo.
>
> LieGrue,
> strub
>
>
>
>
> ----- Original Message -----
> > From: Matt Benson <gu...@gmail.com>
> > To: Gary Gregory <ga...@gmail.com>
> > Cc: Commons Developers List <de...@commons.apache.org>
> > Sent: Wednesday, November 28, 2012 10:08 PM
> > Subject: Re: [privilizer] promotion plan
> >
> > Hi Gary,
> >   Feel free to suggest one or more alternate names, and we can vote on
> > them!  The intent is to quickly convey that the component "equips your
> code
> > to run in a Java security constrained environment," thus
> > "privilizer" or
> > "that which makes your code privileged."  Since the main use of the
> > component is to instrument compiled code during the build process (a
> > possible future enhancement is to support RT enhancement in a custom
> > classloader), I don't see that it fits into any existing component, but
> am
> > open to correction.
> >
> > Thanks for your interest,
> > Matt
> >
> >
> > On Wed, Nov 28, 2012 at 2:55 PM, Gary Gregory
> > <ga...@gmail.com>wrote:
> >
> >>  Another aspect to consider is would this new "privalizer"
> > component (not
> >>  crazy about the name ATM) fit in an existing Commons component?
> >>
> >>
> >>  On Wed, Nov 28, 2012 at 3:44 PM, Matt Benson <gu...@gmail.com>
> > wrote:
> >>
> >>>  Hi all,
> >>>    As long as I've been part of the Commons community I don't
> > know that
> >>>  I've
> >>>  encountered this exact situation:  a committer adds some code to the
> >>>  sandbox that is more or less complete.  I don't know precisely what
> >>>  requirements must be met before we promote [privilizer] to proper. We
> > seem
> >>>  to have interest from one or more members of the PMC as prospective
> > users;
> >>>  this would seem to imply that were I hit by a bus there ought to be
> >>>  someone
> >>>  interested in maintaining the component.  Speaking for BVal I intend
> to
> >>>  put
> >>>  this component to immediate use there (that's what I wrote it
> > for!).  Mark
> >>>  has mentioned that OWB and perhaps other ASF projects might want to
> > make
> >>>  use of it.  What else do I need to do?
> >>>
> >>>  Matt
> >>>
> >>
> >>
> >>
> >>  --
> >>  E-Mail: garydgregory@gmail.com | ggregory@apache.org
> >>  JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
> >>  Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
> >>  Blog: http://garygregory.wordpress.com
> >>  Home: http://garygregory.com/
> >>  Tweet! http://twitter.com/GaryGregory
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>

Re: [privilizer] promotion plan

Posted by Mark Struberg <st...@yahoo.de>.
+1

It might fit to any component which does _not_ introduce a runtime dependency but is only needed at compile time. Basically the privilizer is kind of a preprocessor.

If such a kind of component already exists in commons, then we can look if it fits to the business of this component. Otherwise it's a new module imo.

LieGrue,
strub




----- Original Message -----
> From: Matt Benson <gu...@gmail.com>
> To: Gary Gregory <ga...@gmail.com>
> Cc: Commons Developers List <de...@commons.apache.org>
> Sent: Wednesday, November 28, 2012 10:08 PM
> Subject: Re: [privilizer] promotion plan
> 
> Hi Gary,
>   Feel free to suggest one or more alternate names, and we can vote on
> them!  The intent is to quickly convey that the component "equips your code
> to run in a Java security constrained environment," thus 
> "privilizer" or
> "that which makes your code privileged."  Since the main use of the
> component is to instrument compiled code during the build process (a
> possible future enhancement is to support RT enhancement in a custom
> classloader), I don't see that it fits into any existing component, but am
> open to correction.
> 
> Thanks for your interest,
> Matt
> 
> 
> On Wed, Nov 28, 2012 at 2:55 PM, Gary Gregory 
> <ga...@gmail.com>wrote:
> 
>>  Another aspect to consider is would this new "privalizer" 
> component (not
>>  crazy about the name ATM) fit in an existing Commons component?
>> 
>> 
>>  On Wed, Nov 28, 2012 at 3:44 PM, Matt Benson <gu...@gmail.com> 
> wrote:
>> 
>>>  Hi all,
>>>    As long as I've been part of the Commons community I don't 
> know that
>>>  I've
>>>  encountered this exact situation:  a committer adds some code to the
>>>  sandbox that is more or less complete.  I don't know precisely what
>>>  requirements must be met before we promote [privilizer] to proper. We 
> seem
>>>  to have interest from one or more members of the PMC as prospective 
> users;
>>>  this would seem to imply that were I hit by a bus there ought to be
>>>  someone
>>>  interested in maintaining the component.  Speaking for BVal I intend to
>>>  put
>>>  this component to immediate use there (that's what I wrote it 
> for!).  Mark
>>>  has mentioned that OWB and perhaps other ASF projects might want to 
> make
>>>  use of it.  What else do I need to do?
>>> 
>>>  Matt
>>> 
>> 
>> 
>> 
>>  --
>>  E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>  JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
>>  Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
>>  Blog: http://garygregory.wordpress.com
>>  Home: http://garygregory.com/
>>  Tweet! http://twitter.com/GaryGregory
>> 
> 

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


Re: [privilizer] promotion plan

Posted by Matt Benson <gu...@gmail.com>.
Pretty sure you didn't intend to drop the list; adding back.  ;)  Using
BCEL to do the dirty work could be an option, though I confess I wouldn't
mind seeing that done for a v1.1.  The
codebase-formerly-known-as-privileged-method-weaver feels as much to me
like part of the current BCEL as a plumber does a box of pipe wrenches;
i.e. this feels to me like confusing the container for the thing
contained.  I'm not *vehemently* opposed to a restructured BCEL with a core
and various tool modules, but such would be the only direction I could see
that would include this codebase as "part of" BCEL.

Matt


On Wed, Nov 28, 2012 at 3:24 PM, Gary Gregory <ga...@gmail.com>wrote:

> Hi Matt,
>
> Byte code twiddling could be seen to fit nicely in BCEL, which is already
> a Commons project and could use some fresh blood. [privilege] (easier to
> type for me) would be a specific application for BCEL so it would be be as
> nicely layered on top on BCEL as much as on the side. And you'd loose the
> ASM aspect. Thinking about the eating of the dog food, I would love to see
> BCEL revitalized, which would also help Xalan, another BCEL user.
>
> If we do not want to go that route, then we can discuss improving on the
> name.
>
> Gary
>
>
>
> On Wed, Nov 28, 2012 at 4:08 PM, Matt Benson <gu...@gmail.com> wrote:
>
>> Hi Gary,
>>   Feel free to suggest one or more alternate names, and we can vote on
>> them!  The intent is to quickly convey that the component "equips your code
>> to run in a Java security constrained environment," thus "privilizer" or
>> "that which makes your code privileged."  Since the main use of the
>> component is to instrument compiled code during the build process (a
>> possible future enhancement is to support RT enhancement in a custom
>> classloader), I don't see that it fits into any existing component, but am
>> open to correction.
>>
>> Thanks for your interest,
>> Matt
>>
>>
>>
>> On Wed, Nov 28, 2012 at 2:55 PM, Gary Gregory <ga...@gmail.com>wrote:
>>
>>> Another aspect to consider is would this new "privalizer" component (not
>>> crazy about the name ATM) fit in an existing Commons component?
>>>
>>>
>>> On Wed, Nov 28, 2012 at 3:44 PM, Matt Benson <gu...@gmail.com>wrote:
>>>
>>>> Hi all,
>>>>   As long as I've been part of the Commons community I don't know that
>>>> I've
>>>> encountered this exact situation:  a committer adds some code to the
>>>> sandbox that is more or less complete.  I don't know precisely what
>>>> requirements must be met before we promote [privilizer] to proper. We
>>>> seem
>>>> to have interest from one or more members of the PMC as prospective
>>>> users;
>>>> this would seem to imply that were I hit by a bus there ought to be
>>>> someone
>>>> interested in maintaining the component.  Speaking for BVal I intend to
>>>> put
>>>> this component to immediate use there (that's what I wrote it for!).
>>>>  Mark
>>>> has mentioned that OWB and perhaps other ASF projects might want to make
>>>> use of it.  What else do I need to do?
>>>>
>>>> Matt
>>>>
>>>
>>>
>>>
>>> --
>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>> JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
>>> Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
>>> Blog: http://garygregory.wordpress.com
>>> Home: http://garygregory.com/
>>> Tweet! http://twitter.com/GaryGregory
>>>
>>
>>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
> Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Re: [privilizer] promotion plan

Posted by Matt Benson <gu...@gmail.com>.
Hi Gary,
  Feel free to suggest one or more alternate names, and we can vote on
them!  The intent is to quickly convey that the component "equips your code
to run in a Java security constrained environment," thus "privilizer" or
"that which makes your code privileged."  Since the main use of the
component is to instrument compiled code during the build process (a
possible future enhancement is to support RT enhancement in a custom
classloader), I don't see that it fits into any existing component, but am
open to correction.

Thanks for your interest,
Matt


On Wed, Nov 28, 2012 at 2:55 PM, Gary Gregory <ga...@gmail.com>wrote:

> Another aspect to consider is would this new "privalizer" component (not
> crazy about the name ATM) fit in an existing Commons component?
>
>
> On Wed, Nov 28, 2012 at 3:44 PM, Matt Benson <gu...@gmail.com> wrote:
>
>> Hi all,
>>   As long as I've been part of the Commons community I don't know that
>> I've
>> encountered this exact situation:  a committer adds some code to the
>> sandbox that is more or less complete.  I don't know precisely what
>> requirements must be met before we promote [privilizer] to proper. We seem
>> to have interest from one or more members of the PMC as prospective users;
>> this would seem to imply that were I hit by a bus there ought to be
>> someone
>> interested in maintaining the component.  Speaking for BVal I intend to
>> put
>> this component to immediate use there (that's what I wrote it for!).  Mark
>> has mentioned that OWB and perhaps other ASF projects might want to make
>> use of it.  What else do I need to do?
>>
>> Matt
>>
>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
> Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Re: [privilizer] promotion plan

Posted by Gary Gregory <ga...@gmail.com>.
Another aspect to consider is would this new "privalizer" component (not
crazy about the name ATM) fit in an existing Commons component?


On Wed, Nov 28, 2012 at 3:44 PM, Matt Benson <gu...@gmail.com> wrote:

> Hi all,
>   As long as I've been part of the Commons community I don't know that I've
> encountered this exact situation:  a committer adds some code to the
> sandbox that is more or less complete.  I don't know precisely what
> requirements must be met before we promote [privilizer] to proper. We seem
> to have interest from one or more members of the PMC as prospective users;
> this would seem to imply that were I hit by a bus there ought to be someone
> interested in maintaining the component.  Speaking for BVal I intend to put
> this component to immediate use there (that's what I wrote it for!).  Mark
> has mentioned that OWB and perhaps other ASF projects might want to make
> use of it.  What else do I need to do?
>
> Matt
>



-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Re: [privilizer] promotion plan

Posted by Phil Steitz <ph...@gmail.com>.
On 11/28/12 12:44 PM, Matt Benson wrote:
> Hi all,
>   As long as I've been part of the Commons community I don't know that I've
> encountered this exact situation:  a committer adds some code to the
> sandbox that is more or less complete.  I don't know precisely what
> requirements must be met before we promote [privilizer] to proper. We seem
> to have interest from one or more members of the PMC as prospective users;
> this would seem to imply that were I hit by a bus there ought to be someone
> interested in maintaining the component.  Speaking for BVal I intend to put
> this component to immediate use there (that's what I wrote it for!).  Mark
> has mentioned that OWB and perhaps other ASF projects might want to make
> use of it.  What else do I need to do?
>
> Matt
>
Traditionally, we have just required a) community and b) close to
release-ability.  In the olden days, we used to like to see 3
committers interested in working on the thing.  Looks to me like
[privilizer] is in good shape on both accounts, albeit with the "3
committers" spread about the ASF.  That is not a problem for
Commons, IMO.  I would be +1 to promote.

All you need to do is kick off a promotion vote.

Phil

P.S. I vaguely recall [primitives] having a similar birth some years
ago.

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


Re: [privilizer] promotion plan

Posted by Emmanuel Bourg <eb...@apache.org>.
Le 29/11/2012 19:12, Matt Benson a écrit :
> This would go back to the idea of something like a BCEL library
> (notwithstanding the fact that the existing privilizer code does not use
> BCEL).

For such a component BCEL would be an implementation detail, so I don't
think it should be a sub part of BCEL.

If an annotation equivalent to @SwingInvokeLater can be added to the
project I would be highly interested in using it.

As for the name of the component, what about Commons Weaver ?

Emmanuel Bourg



Re: [privilizer] promotion plan

Posted by Matt Benson <gu...@gmail.com>.
Hi Emmanuel, and thanks for your elaboration.  It seems Lombok primarily
(exclusively?) takes the approach of altering the AST of a given Java file,
and it appears they may now support both Oracle and Eclipse compilers.  I
still don't know that I quite consider their approach to be a
Commons-friendly one, but I take your point that this might be just one of
potentially unlimited code modifications a new component could support.
This would go back to the idea of something like a BCEL library
(notwithstanding the fact that the existing privilizer code does not use
BCEL).

Matt


On Thu, Nov 29, 2012 at 10:13 AM, Emmanuel Bourg <eb...@apache.org> wrote:

> Le 29/11/2012 16:41, Matt Benson a écrit :
> > Interesting; I apparently hadn't looked at Lombok apparently since
> they've
> > added the @DoPrivileged annotation (pretty sure it wasn't always there).
>
> You probably looked in the core of Lombok, @DoPrivileged is in the
> companion project lombok-pg.
>
>
> > My problem with Lombok is that, as I understand it, they have to resort
> to
> > "tricks" due to the limitations of the public annotation processing APIs,
> > they are only compatible with the Oracle compiler, have problems when
> used
> > with other technologies e.g. AspectJ (IIRC).  If not for these
> shortcomings
> > (and I have no doubt the Lombok team would have done things "correctly"
> > were that option open to them) I would have been using Lombok long ago.
>
> I guess the technique adopted by Lombok is the only one suitable for
> generating new methods like getters and setters, otherwise the
> compilation would fail when calling a not yet generated method. Bytecode
> processing would not allow that.
>
> For altering the body of existing methods like @DoPrivileged or
> @SwingInvokeLater bytecode processing is perfectly fine.
>
>
> Emmanuel Bourg
>
>
>

Re: [privilizer] promotion plan

Posted by Emmanuel Bourg <eb...@apache.org>.
Le 29/11/2012 16:41, Matt Benson a écrit :
> Interesting; I apparently hadn't looked at Lombok apparently since they've
> added the @DoPrivileged annotation (pretty sure it wasn't always there).

You probably looked in the core of Lombok, @DoPrivileged is in the
companion project lombok-pg.


> My problem with Lombok is that, as I understand it, they have to resort to
> "tricks" due to the limitations of the public annotation processing APIs,
> they are only compatible with the Oracle compiler, have problems when used
> with other technologies e.g. AspectJ (IIRC).  If not for these shortcomings
> (and I have no doubt the Lombok team would have done things "correctly"
> were that option open to them) I would have been using Lombok long ago.

I guess the technique adopted by Lombok is the only one suitable for
generating new methods like getters and setters, otherwise the
compilation would fail when calling a not yet generated method. Bytecode
processing would not allow that.

For altering the body of existing methods like @DoPrivileged or
@SwingInvokeLater bytecode processing is perfectly fine.


Emmanuel Bourg



Re: [privilizer] promotion plan

Posted by Matt Benson <gu...@gmail.com>.
Interesting; I apparently hadn't looked at Lombok apparently since they've
added the @DoPrivileged annotation (pretty sure it wasn't always there).
My problem with Lombok is that, as I understand it, they have to resort to
"tricks" due to the limitations of the public annotation processing APIs,
they are only compatible with the Oracle compiler, have problems when used
with other technologies e.g. AspectJ (IIRC).  If not for these shortcomings
(and I have no doubt the Lombok team would have done things "correctly"
were that option open to them) I would have been using Lombok long ago.

Matt


On Thu, Nov 29, 2012 at 9:15 AM, Gary Gregory <ga...@gmail.com>wrote:

> Lombok features feels like they could belong in [lang].
>
> Gary
>
>
> On Thu, Nov 29, 2012 at 9:10 AM, Emmanuel Bourg <eb...@apache.org> wrote:
>
> > This components reminds me of Project Lombok [1]. As I understand the
> > approach is different, Lombok uses JavaC annotations to generate the
> > additional code at compile time, while Privilizer post process the class
> > files with Javassist and works at the bytecode level.
> >
> > Lombok has a @DoPrivileged annotation, as well as many other ones
> > [2][3]. The one I find very useful is the @SwingInvokeLater annotation
> > [4] to ensure the code runs on the UI thread. That's a killer feature
> > when developing Swing applications.
> >
> > Maybe the scope of [privilizer] could be widened to other annotations
> > post processing? I don't know if it's worth competing with Lombok though.
> >
> >
> > Emmanuel Bourg
> >
> >
> > [1] http://projectlombok.org
> > [2] http://projectlombok.org/features
> > [3] https://github.com/peichhorn/lombok-pg/wiki
> > [4] http://peichhorn.github.com/lombok-pg/SwingInvoke.html
> >
> >
> > Le 28/11/2012 21:44, Matt Benson a écrit :
> > > Hi all,
> > >   As long as I've been part of the Commons community I don't know that
> > I've
> > > encountered this exact situation:  a committer adds some code to the
> > > sandbox that is more or less complete.  I don't know precisely what
> > > requirements must be met before we promote [privilizer] to proper. We
> > seem
> > > to have interest from one or more members of the PMC as prospective
> > users;
> > > this would seem to imply that were I hit by a bus there ought to be
> > someone
> > > interested in maintaining the component.  Speaking for BVal I intend to
> > put
> > > this component to immediate use there (that's what I wrote it for!).
> >  Mark
> > > has mentioned that OWB and perhaps other ASF projects might want to
> make
> > > use of it.  What else do I need to do?
> > >
> > > Matt
> > >
> >
> >
> >
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
> Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Re: [privilizer] promotion plan

Posted by Gary Gregory <ga...@gmail.com>.
Lombok features feels like they could belong in [lang].

Gary


On Thu, Nov 29, 2012 at 9:10 AM, Emmanuel Bourg <eb...@apache.org> wrote:

> This components reminds me of Project Lombok [1]. As I understand the
> approach is different, Lombok uses JavaC annotations to generate the
> additional code at compile time, while Privilizer post process the class
> files with Javassist and works at the bytecode level.
>
> Lombok has a @DoPrivileged annotation, as well as many other ones
> [2][3]. The one I find very useful is the @SwingInvokeLater annotation
> [4] to ensure the code runs on the UI thread. That's a killer feature
> when developing Swing applications.
>
> Maybe the scope of [privilizer] could be widened to other annotations
> post processing? I don't know if it's worth competing with Lombok though.
>
>
> Emmanuel Bourg
>
>
> [1] http://projectlombok.org
> [2] http://projectlombok.org/features
> [3] https://github.com/peichhorn/lombok-pg/wiki
> [4] http://peichhorn.github.com/lombok-pg/SwingInvoke.html
>
>
> Le 28/11/2012 21:44, Matt Benson a écrit :
> > Hi all,
> >   As long as I've been part of the Commons community I don't know that
> I've
> > encountered this exact situation:  a committer adds some code to the
> > sandbox that is more or less complete.  I don't know precisely what
> > requirements must be met before we promote [privilizer] to proper. We
> seem
> > to have interest from one or more members of the PMC as prospective
> users;
> > this would seem to imply that were I hit by a bus there ought to be
> someone
> > interested in maintaining the component.  Speaking for BVal I intend to
> put
> > this component to immediate use there (that's what I wrote it for!).
>  Mark
> > has mentioned that OWB and perhaps other ASF projects might want to make
> > use of it.  What else do I need to do?
> >
> > Matt
> >
>
>
>


-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
JUnit in Action, 2nd Ed: <http://goog_1249600977>http://bit.ly/ECvg0
Spring Batch in Action: <http://s.apache.org/HOq>http://bit.ly/bqpbCK
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Re: [privilizer] promotion plan

Posted by Emmanuel Bourg <eb...@apache.org>.
This components reminds me of Project Lombok [1]. As I understand the
approach is different, Lombok uses JavaC annotations to generate the
additional code at compile time, while Privilizer post process the class
files with Javassist and works at the bytecode level.

Lombok has a @DoPrivileged annotation, as well as many other ones
[2][3]. The one I find very useful is the @SwingInvokeLater annotation
[4] to ensure the code runs on the UI thread. That's a killer feature
when developing Swing applications.

Maybe the scope of [privilizer] could be widened to other annotations
post processing? I don't know if it's worth competing with Lombok though.


Emmanuel Bourg


[1] http://projectlombok.org
[2] http://projectlombok.org/features
[3] https://github.com/peichhorn/lombok-pg/wiki
[4] http://peichhorn.github.com/lombok-pg/SwingInvoke.html


Le 28/11/2012 21:44, Matt Benson a écrit :
> Hi all,
>   As long as I've been part of the Commons community I don't know that I've
> encountered this exact situation:  a committer adds some code to the
> sandbox that is more or less complete.  I don't know precisely what
> requirements must be met before we promote [privilizer] to proper. We seem
> to have interest from one or more members of the PMC as prospective users;
> this would seem to imply that were I hit by a bus there ought to be someone
> interested in maintaining the component.  Speaking for BVal I intend to put
> this component to immediate use there (that's what I wrote it for!).  Mark
> has mentioned that OWB and perhaps other ASF projects might want to make
> use of it.  What else do I need to do?
> 
> Matt
>