As I see it, the vote bogged down because Kristian found problems, and
I haven't seen clear evidence that those problems are sorted out. I'd
be happy to vote +1 with respect to all the design questions for the
release 'as is'.

On Fri, Dec 7, 2012 at 9:00 AM, Mark Struberg <strub...@yahoo.de> wrote:
> good idea, Benson.
>
> Btw, this VOTE did not get enough +1 in more than a week. And this is not 
> because not enough people took care if you look at the plenty of comments in 
> the thread.
>
> 1.) Do people have any technical comment on my proposal to introduce a new 
> plugin-plugin flag for exposing slf4j? Is there any technical problem with 
> that?
>
> Are there other proposals which might help increasing backward compatibility?
>
>
>
> 2.) what about the coloured logger with log4j2? I tried it locally and it 
> worked great. What is the status? (Sorry if I missed something)
>
>
>
> LieGrue,
> strub
>
>
>
> ----- Original Message -----
>> From: Benson Margulies <bimargul...@gmail.com>
>> To: Maven Developers List <dev@maven.apache.org>
>> Cc:
>> Sent: Friday, December 7, 2012 2:28 PM
>> Subject: Re: [VOTE] Maven 3.1.0
>>
>> Could we please find an appropriate subject line for this debate,
>> unless you all are really discussing this design question as part of
>> the (still?) outstanding vote on 3.1.0?
>>
>>
>> On Fri, Dec 7, 2012 at 8:12 AM, Gary Gregory <garydgreg...@gmail.com>
>> wrote:
>>>  Another way of looking at this is whether this kind of behavior change in
>>>  appropriate for a minor release, instead of a major release.
>>>
>>>
>>>  On Fri, Dec 7, 2012 at 7:57 AM, Mark Struberg <strub...@yahoo.de>
>> wrote:
>>>
>>>>  Daniel, please think through these old project scenarios. Those old
>>>>  projects did ship their own slf4j impl + config and parsed their own
>> logs
>>>>  and extracted information. They will now just fall on their knees
>> because
>>>>  the logs are no longer available for them. Instead they will be
>> somewhere
>>>>  in the maven logs which could be anywhere from a plugin point of view.
>>>>
>>>>
>>>>  This is not fixed, this is broken imo.
>>>>
>>>>  LieGrue,
>>>>  strub
>>>>
>>>>
>>>>
>>>>  ----- Original Message -----
>>>>  > From: Daniel Kulp <dk...@apache.org>
>>>>  > To: Maven Developers List <dev@maven.apache.org>
>>>>  > Cc:
>>>>  > Sent: Friday, December 7, 2012 1:49 PM
>>>>  > Subject: Re: [VOTE] Maven 3.1.0
>>>>  >
>>>>  >
>>>>  >>
>>>>  >>  Again the state of affairs of 3.1.0 today: old projects and
>> plugins
>>>>  which
>>>>  > didnt use slf4j so far don't get any benefit from forcing
>> slf4j on them.
>>>>  And
>>>>  > old projects and plugins which _did_ use slf4j already are now
>> broken
>>>>  with the
>>>>  > current trunk. I cannot see how we can seriously release this to
>> users
>>>>  right
>>>>  > now.
>>>>  >
>>>>  >
>>>>  >
>>>>  > I don't consider them broken.   I consider them fixed.    Old
>> plugins
>>>>  that
>>>>  > use SLF4J now get there information properly integrated with the
>> rest of
>>>>  the
>>>>  > maven information.
>>>>  >
>>>>  >
>>>>  > Dan
>>>>  >
>>>>  >
>>>>  >
>>>>  > On Dec 7, 2012, at 7:32 AM, Mark Struberg
>> <strub...@yahoo.de> wrote:
>>>>  >
>>>>  >>>  The final proposal that I see is where we give a metadata
>> flag
>>>>  >>  (defaults to false)
>>>>  >>>  which if true sets up an isolated classloader for
>>>>  >>  the plugin allowing the plugin to use its own slf4j
>>>>  >>
>>>>  >>  Stephen, this is _almost_ the same as I proposed a month ago.
>> But I'd
>>>>  > do it the other way around as this would be perfectly backward
>>>>  compatible.
>>>>  >>
>>>>  >>  I'll try to explain again what I propose:
>>>>  >>
>>>>  >>  Any plugin could e.g. use a @Slf4JLogger in it's mojo.
>> The
>>>>  > plugin-plugin would transfer this to a
>> <useSlf4j>true</useSlf4j>
>>>>  > inside the plugin.xml.
>>>>  >>  In this case, and _only_ in this case we would expose our
>> internal
>>>>  SLF4J to
>>>>  > the plugin.
>>>>  >>
>>>>  >>
>>>>  >>  Older plugins do not need it anyway as they do not use the
>>>>  maven-provided
>>>>  > slf4j yet!
>>>>  >>
>>>>  >>
>>>>  >>  This is a win-win solution imo:
>>>>  >>  * old integration and plugins will still work
>>>>  >>  * new plugins can use slf4j for logging via maven
>>>>  >>
>>>>  >>
>>>>  >>  Again the state of affairs of 3.1.0 today: old projects and
>> plugins
>>>>  which
>>>>  > didnt use slf4j so far don't get any benefit from forcing
>> slf4j on them.
>>>>  And
>>>>  > old projects and plugins which _did_ use slf4j already are now
>> broken
>>>>  with the
>>>>  > current trunk. I cannot see how we can seriously release this to
>> users
>>>>  right
>>>>  > now.
>>>>  >>
>>>>  >>  LieGrue,
>>>>  >>  strub
>>>>  >>
>>>>  >>
>>>>  >>>  ________________________________
>>>>  >>>  From: Stephen Connolly
>> <stephen.alan.conno...@gmail.com>
>>>>  >>>  To: Maven Developers List <dev@maven.apache.org>;
>> Mark Struberg
>>>>  > <strub...@yahoo.de>
>>>>  >>>  Sent: Friday, December 7, 2012 12:48 PM
>>>>  >>>  Subject: Re: [VOTE] Maven 3.1.0
>>>>  >>>
>>>>  >>>
>>>>  >>>  But not all of those *need to*. At least until now they
>> have needed
>>>>  to,
>>>>  > but going forward they may not need to if we are giving them an
>> slf4j
>>>>  impl to
>>>>  > hang their hat off.
>>>>  >>>
>>>>  >>>
>>>>  >>>  There will always be some special case plugins that have
>> a legitimate
>>>>  > need to do funky logging stuff. We need a strategy for those
>> plugins.
>>>>  >>>
>>>>  >>>
>>>>  >>>  Jason's proposal for those cases was that they should
>> fork a JVM.
>>>>  > That works if you don't need to channel objects back and
>> forth. For some
>>>>  of
>>>>  > the plugins wanting to do 'live development' style work (I
>> am thinking
>>>>  > my jszip.org experiments - I have some plans and experiments that
>> I
>>>>  haven't
>>>>  > even pushed to there yet ;-) ) forking a JVM is a bad plan, as you
>> then
>>>>  have to
>>>>  > basically resort to RMI to control the forked JVM... More ports
>> and more
>>>>  sockets
>>>>  > and more complexity.
>>>>  >>>
>>>>  >>>
>>>>  >>>  The next step I could see is building a fresh classloader
>> up from
>>>>  > scratch within the plugin. That *should* work as long as we load a
>> fresh
>>>>  set of
>>>>  > slf4j-api classes (ceki?) then we are initialising slf4j a second
>> time
>>>>  in the
>>>>  > fresh classloader and we can do as we need. Again complex though
>> one
>>>>  could argue
>>>>  > less complex than the RMI route. Plugin developers following this
>> route
>>>>  will
>>>>  > have to watch out for the dreaded CCE but at least you are not
>> having to
>>>>  deal
>>>>  > with object serialisation and RMI
>>>>  >>>
>>>>  >>>
>>>>  >>>  The final proposal that I see is where we give a metadata
>> flag
>>>>  > (defaults to false) which if true sets up an isolated classloader
>> for
>>>>  the plugin
>>>>  > allowing the plugin to use its own slf4j
>>>>  >>>
>>>>  >>>
>>>>  >>>  Note that each proposal above retains the option for
>> plugin developers
>>>>  > to use the previous proposal.
>>>>  >>>
>>>>  >>>
>>>>  >>>  My vote is that we need to provide a utility library that
>> makes the
>>>>  > first and second proposals facile for plugin developers and we
>> should
>>>>  probably
>>>>  > enable the third option also.
>>>>  >>>
>>>>  >>>
>>>>  >>>  The correct respecting of tool chains support requires
>> plugin
>>>>  > developers to follow the first route if a tool chain JVM is
>> applied to
>>>>  their
>>>>  > plugin and to use the second when no tool chain JVM is in play...
>> At
>>>>  least for
>>>>  > the jetty:run and tomcat:run style plugins.
>>>>  >>>
>>>>  >>>
>>>>  >>>  For the sonar style plugins, and my gut says the vast
>> majority of
>>>>  these
>>>>  > use cases the most they will need is the third proposal. Without
>> seeing a
>>>>  > maven-fork-utils api I cannot say that we don't need the third
>> proposal,
>>>>  so
>>>>  > I am forced to conclude that we should support it... IOW I think
>> we need
>>>>  a
>>>>  > metadata flag.
>>>>  >>>
>>>>  >>>
>>>>  >>>  -Stephen
>>>>  >>>
>>>>  >>>  On Friday, 7 December 2012, Mark Struberg  wrote:
>>>>  >>>
>>>>  >>>  basically all stuff which integrates maven does *funky
>> logging
>>>>  > stuff*...
>>>>  >>>>
>>>>  >>>>
>>>>  >>>>
>>>>  >>>>
>>>>  >>>>  ----- Original Message -----
>>>>  >>>>>  From: Anders Hammar <and...@hammar.net>
>>>>  >>>>>  To: Maven Developers List
>> <dev@maven.apache.org>
>>>>  >>>>>  Cc:
>>>>  >>>>>  Sent: Friday, December 7, 2012 7:25 AM
>>>>  >>>>>  Subject: Re: [VOTE] Maven 3.1.0
>>>>  >>>>>
>>>>  >>>>>>   I'm interested to help working on adding
>> a metadata to
>>>>  > enable slf4j
>>>>  >>>>>>   visibility
>>>>  >>>>>>   from a plugin: by default, slf4j is not
>> visible, plugins
>>>>  > are expected to
>>>>  >>>>>>   use
>>>>  >>>>>>   plugin-api's Log. But if the plugin
>> wants to use
>>>>  > core's slf4j, he
>>>>  >>>>>  would be
>>>>  >>>>>>   able to add an annotation in the goal
>> requiring shared
>>>>  > core slf4j, then the
>>>>  >>>>>>   plugin descriptor would enable slf4j api
>> import from core.
>>>>  >>>>>>
>>>>  >>>>>
>>>>  >>>>>  *If* we go this path, I think the default should
>> be the other
>>>>  > way around.
>>>>  >>>>>  I.e., the default would be to use core's
>> slf4j and it's
>>>>  > impl. So the
>>>>  >>>>>  plugin
>>>>  >>>>>  developer needs to do an active choice to go
>> outside
>>>>  > Maven's logging. Sure,
>>>>  >>>>>  this could imply problems with existing plugins
>> doing funky
>>>>  > logging stuff
>>>>  >>>>>  (like the Sonar plugin), but I don't really
>> see a problem
>>>>  > with those
>>>>  >>>>>  plugins having to release a new version. I think
>> it's more
>>>>  > important that
>>>>  >>>>>  we get good defaults than trying to make every
>> existing plugin
>>>>  > work as they
>>>>  >>>>>  are implemented right now.
>>>>  >>>>>
>>>>  >>>>>  /Anders
>>>>  >>>>>
>>>>  >>>>>
>>>>  >>>>>>
>>>>  >>>>>>   Stephen: is this what you have in mind?
>>>>  >>>>>>
>>>>  >>>>>>   Regards,
>>>>  >>>>>>
>>>>  >>>>>>   Hervé
>>>>  >>>>>>
>>>>  >>>>>>   Le vendredi 30 novembre 2012 12:20:35
>> Stephen Connolly a
>>>>  > écrit :
>>>>  >>>>>>   > I tend to agree. There are two
>> use-cases I see that a
>>>>  > plugin has for
>>>>  >>>>>>   > bundling a logging implementation:
>>>>  >>>>>>   >
>>>>  >>>>>>   > 1. They are wanting to shunt the logs
>> from the build
>>>>  > tool they are
>>>>  >>>>>>   invoking
>>>>  >>>>>>   > on to the user. Typically if they are
>> being good
>>>>  > plugins they just
>>>>  >>>>>  take
>>>>  >>>>>>   the
>>>>  >>>>>>   > logging output and shunt it onto
>>>>  > org.apache.maven.plugin.Log.info()
>>>>  >>>>>>   >
>>>>  >>>>>>   > 2. They are wanting to shunt the logs
>> from the build
>>>>  > tool (or more
>>>>  >>>>>  likely
>>>>  >>>>>>   > app server) to a separate file, or
>> tweak the level of
>>>>  > logs higher than
>>>>  >>>>>>   INFO
>>>>  >>>>>>   > for that app server/mojo execution as
>> it will just
>>>>  > drown the user.
>>>>  >>>>>>   >
>>>>  >>>>>>   > In the first use case, Jason's
>> point is correct.
>>>>  > They
>>>>  >>>>>  shouldn't need to
>>>>  >>>>>>   > bundle a logging implementation any
>> more.
>>>>  >>>>>>   >
>>>>  >>>>>>   > The second case, Jason is arguing that
>> they
>>>>  > shouldn't be using the
>>>>  >>>>>  Maven
>>>>  >>>>>>   > JVM for running that tool, they should
>> be running it
>>>>  > in a forked JVM
>>>>  >>>>>  and
>>>>  >>>>>>   > then they can configure the logging in
>> that JVM. I
>>>>  > disagree. Forking a
>>>>  >>>>>>   JVM
>>>>  >>>>>>   > for every little build tool just to
>> control its
>>>>  > logging is going to
>>>>  >>>>>  kill
>>>>  >>>>>>   > the build time.
>>>>  >>>>>>   >
>>>>  >>>>>>   > My preference is for a metadata flag
>> that says: Oy! I
>>>>  > know what
>>>>  >>>>>  I'm doing
>>>>  >>>>>>   > with logging, so don't pass logging
>> on to me.
>>>>  >>>>>>   >
>>>>  >>>>>>   > While it feels like a "special
>> case" the
>>>>  > truth is logging is
>>>>  >>>>>  always, and
>>>>  >>>>>>   > always will be, a special case!
>>>>  >>>>>>   >
>>>>  >>>>>>   > -Stephen
>>>>  >>>>>>   >
>>>>  >>>>>>   > On 30 November 2012 12:09, Benson
>> Margulies
>>>>  >>>>>  <bimargul...@gmail.com>
>>>>  >>>>>>   wrote:
>>>>  >>>>>>   > > On Thu, Nov 29, 2012 at 11:05 PM,
>> Jason van Zyl
>>>>  >>>>>  <ja...@tesla.io>
>>>>  >>>>>>   wrote:
>>>>  >>>>>>   > > > On Nov 29, 2012, at 5:56 PM,
>> Benson
>>>>  > Margulies
>>>>  >>>>>  <bimargul...@gmail.com
>>>>  >>>>>>   >
>>>>  >>>>>>   > >
>>>>  >>>>>>   > > wrote:
>>>>  >>>>>>   > > >>> Currently I'm of
>> the mind that
>>>>  > if you make a
>>>>  >>>>>  Maven plugin that uses
>>>>  >>>>>>   > >
>>>>  >>>>>>   > > something that employs SLF4J then
>> the best
>>>>  > practice is to only
>>>>  >>>>>  use the
>>>>  >>>>>>   API
>>>>  >>>>>>   > > and let the host choose the
>> implementation, in
>>>>  > our case Maven.
>>>>  >>>>>  Relying
>>>>  >>>>>>   on
>>>>  >>>>>>   > > SLF4J implementation specifics in
>> a system
>>>>  > you're embedded in
>>>>  >>>>>  is not
>>>>  >>>>>>   good
>>>>  >>>>>>   > > e.g. Logback in Sonar running in
>> Maven using
>>>>  > SLF4J Simple. If y
>>>>  >>>
>>>>  >>>
>>>>  >>
>>>>  >>
>> ---------------------------------------------------------------------
>>>>  >>  To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>>  >>  For additional commands, e-mail: dev-h...@maven.apache.org
>>>>  >>
>>>>  >
>>>>  > --
>>>>  > Daniel Kulp
>>>>  > dk...@apache.org - http://dankulp.com/blog
>>>>  > Talend Community Coder - http://coders.talend.com
>>>>  >
>>>>  >
>>>>  >
>> ---------------------------------------------------------------------
>>>>  > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>>  > For additional commands, e-mail: dev-h...@maven.apache.org
>>>>  >
>>>>
>>>>  ---------------------------------------------------------------------
>>>>  To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>>  For additional commands, e-mail: dev-h...@maven.apache.org
>>>>
>>>>
>>>
>>>
>>>  --
>>>  E-Mail: garydgreg...@gmail.com | ggreg...@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-unsubscr...@maven.apache.org
>> For additional commands, e-mail: dev-h...@maven.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>

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

Reply via email to