I thought the problem is obvious as I got a few acks when we discussed it here 
on the list.

I've now updated the WiKi page to explain the problem

LieGrue,
strub



----- Original Message -----
> From: Jason van Zyl <[email protected]>
> To: Maven Developers List <[email protected]>; Mark Struberg 
> <[email protected]>
> Cc: 
> Sent: Thursday, August 30, 2012 3:57 PM
> Subject: Re: Removing unused code from maven-shared-utils
> 
> 
> On Aug 30, 2012, at 9:16 AM, Mark Struberg wrote:
> 
>> 
>> 
>>  If the compiler doesn't reliably detect changes, then it is a HUGE 
> problem!
>> 
> 
> In what cases does that happen?
> 
> Your document[1] doesn't indicate this is a problem.
> 
> [1]: https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds
> 
> 
>>  All the later stages can only depend on the results of the previous ones. 
> To not trigger a necessary rebuild is WAY worse than to rebuild a few classes 
> too much.
>> 
>>  Exactly that is the reason why most people always use "mvn CLEAN 
> install" all the time currently.
>> 
>>  LieGrue,
>>  strub
>> 
>> 
>>>  ________________________________
>>>  From: Jason van Zyl <[email protected]>
>>>  To: Maven Developers List <[email protected]>; Mark Struberg 
> <[email protected]> 
>>>  Sent: Thursday, August 30, 2012 3:11 PM
>>>  Subject: Re: Removing unused code from maven-shared-utils
>>> 
>>> 
>>> 
>>> 
>>>  On Aug 30, 2012, at 9:07 AM, Mark Struberg wrote:
>>> 
>>>  If you are attempting to remove plexus-utils initially without a 
>>>>> 
>>>> 
>>>>  binary compatible drop-in replacement with code from Apache then 
> I'm -1. 
>>>>> 
>>>>  Please re-read my previous mail. We will NOT drop plexus-utils! We 
> will just move maven core off it for most parts. 
>>>> 
>>>> 
>>> 
>>> 
>>>  Hmm, what's the difference exactly?
>>> 
>>> 
>>>> 
>>>>  we've had incremental build support in m2e forever
>>>>>  You don't see most of the 'incremental' problems in 
> m2 because the recompile already gets done by eclipse itself I assume. E.g. 
> the 
> maven-compiler-plugin until recently failed to detect cross-class relations 
> and 
> did only recompile the file which got changed. I changed that only recently.
>>>> 
>>>> 
>>> 
>>> 
>>>  The compiler is not the problem, even for large code bases the compiler 
> is incredibly fast. Profile your average build and it's not the compilation 
> that's the bottleneck. But again I would argue you don't need to make 
> drastic changes in the core to make incremental builds work. Some, but they 
> are 
> few.
>>> 
>>> 
>>>>  LieGrue,
>>>>  strub
>>>> 
>>>> 
>>>> 
>>>>  ________________________________
>>>>> 
>>>>  From: Jason van Zyl <[email protected]>
>>>>> 
>>>>  To: Maven Developers List <[email protected]>; Mark 
> Struberg <[email protected]> 
>>>>> 
>>>>  Sent: Thursday, August 30, 2012 2:49 PM
>>>>> 
>>>>  Subject: Re: Removing unused code from maven-shared-utils
>>>>> 
>>>> 
>>>>> 
>>>>  You need to do one thing at time and not conflate the replacement 
> of the plexus-utils code with anything else you want to implement. Mixing the 
> two will almost certainly lead to problems.
>>>>> 
>>>> 
>>>>> 
>>>>  If you are attempting to remove plexus-utils initially without a 
> binary compatible drop-in replacement with code from Apache then I'm -1. 
> I'm not going to change that position because I think you're needlessly 
> causing problems. If you want to replace the code go for it, just do it 
> safely.
>>>>> 
>>>> 
>>>>> 
>>>>  Incremental builds are a separate matter all together and can be 
> done in a branch, we've had incremental build support in m2e forever and you 
> don't need to massively change the core at all to do it. In fact it works 
> right now with the core as it is. Put a complete proposal together (I've 
> seen the initial ideas) because if you think you need to drastically change 
> the 
> core for incremental builds I believe you are incorrect.
>>>>> 
>>>> 
>>>>> 
>>>>  At any rate, one thing at a time. If you want to replace the code 
> in plexus-utils with something else do that first as a separate, clear 
> endeavor.
>>>>> 
>>>> 
>>>>> 
>>>>  On Aug 30, 2012, at 8:40 AM, Mark Struberg wrote:
>>>>> 
>>>> 
>>>>> 
>>>>  I fear my perspective is pretty different. 
>>>>>> 
>>>> 
>>>>>> 
>>>> 
>>>>>> 
>>>>  To _not_ produce a 1:1 drop in replacement gives us a few benefits. 
> Actually it doesn't matter which version maven itself uses as this wont 
> affect user builds. 
>>>>>> 
>>>> 
>>>>>> 
>>>>  BUT it would _heavily_ affect users if their old builds wont work 
> anymore because we dropped some ancient signature. 
>>>>>> 
>>>> 
>>>>>> 
>>>>  And there is a well cast technical reason for this change: I need 
> new/improved functionality for the incremental build.
>>>>>> 
>>>> 
>>>>>> 
>>>> 
>>>>>> 
>>>>  My proposal is to move maven itself to a much more 
> progressive/improved version (thus off plexus-utils) but keep the old 
> signatures 
> and the original plexus-utils around for plugins which still uses it. 
>>>>>> 
>>>> 
>>>>>> 
>>>>  If a plugin likes to use the new maven-core-utils then this is 
> perfectly possible as well of course.
>>>>>> 
>>>> 
>>>>>> 
>>>>  LieGrue,
>>>>>> 
>>>>  strub
>>>>>> 
>>>> 
>>>>>> 
>>>>  ________________________________
>>>>>>> 
>>>>  From: Jason van Zyl <[email protected]>
>>>>>>> 
>>>>  To: Maven Developers List <[email protected]>; Mark 
> Struberg <[email protected]> 
>>>>>>> 
>>>>  Sent: Thursday, August 30, 2012 2:24 PM
>>>>>>> 
>>>>  Subject: Re: Removing unused code from maven-shared-utils
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  If you can create a drop-in replacement for the plexus-utils code 
> go for it. I believe this exercise is of little value users and you run the 
> real 
> risk of introducing problems for no technical reason, but if you want to do 
> the 
> work that's your prerogative.
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  So much time was spent to preserve the existing signatures and 
> behaviour in the container swap and this is not something to be taken 
> lightly, 
> and you should do what has been done in the past.
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  I think the path to do this if you want to get rid of the 
> plexus-utils reference is to reduce the foot print to the classes being used 
> in 
> the core and then drop in that reduced JAR. Create a replacement with the 
> code 
> you've copied, reimplemented, improved yet binary compatible and test that 
> for a while. Binary compatible in all respects, package and signature. And 
> from 
> there then make any subsequent changes.
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  I honestly am not overly concerned with plugins because they can be 
> fixed relatively quickly, but doing low value changes in the core for 
> swapping 
> out one set of code for another is seriously playing with fire.
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  If you initially are intending to change code in the core to 
> accommodate this change I see no technical reason for it, is dangerous and 
> I'm -1.
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  On Aug 30, 2012, at 8:03 AM, Mark Struberg wrote:
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  While digging thru the plexus-utils usage I wonder whether we 
> should place the maven-utils in maven-core or maven-shared.
>>>>>>> 
>>>> 
>>>>>>>> 
>>>>  maven-core doesn't yet have any maven-shared dependency it 
> seems. Which means if we like to use them in maven-core as well we should 
> relocate maven-shared-utils to the maven-3 core module.
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>>  wdyt?
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>>  LieGrue,
>>>>>>>> 
>>>>  strub
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>>  ----- Original Message -----
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>>  From: Kristian Rosenvold <[email protected]>
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  To: Maven Developers List <[email protected]>
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  Cc: 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  Sent: Thursday, August 30, 2012 10:48 AM
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  Subject: Re: Removing unused code from maven-shared-utils
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  Well obviously given the current number of failing
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  tests,maven-shared-utils is going nowhere right now ;)
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  I will do a test-migration and remove unused code in
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  org.apache.maven.shared.utils.io before we release.
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  Kristian
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
> ---------------------------------------------------------------------
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  To unsubscribe, e-mail: [email protected]
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>>  For additional commands, e-mail: [email protected]
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>>> 
>>>> 
> ---------------------------------------------------------------------
>>>>>>>> 
>>>>  To unsubscribe, e-mail: [email protected]
>>>>>>>> 
>>>>  For additional commands, e-mail: [email protected]
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>>> 
>>>> 
>>>>>>> 
>>>>  Thanks,
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  Jason
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  ----------------------------------------------------------
>>>>>>> 
>>>>  Jason van Zyl
>>>>>>> 
>>>>  Founder & CTO, Sonatype
>>>>>>> 
>>>>  Founder,  Apache Maven
>>>>>>> 
>>>>  http://twitter.com/jvanzyl
>>>>>>> 
>>>>  ---------------------------------------------------------
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>  What matters is not ideas, but the people who have them. Good 
> people can fix bad ideas, but good ideas can't save bad people. 
>>>>>>> 
>>>> 
>>>>>>> 
>>>>    -- Paul Graham
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>>> 
>>>> 
>>>>>> 
>>>> 
> ---------------------------------------------------------------------
>>>>>> 
>>>>  To unsubscribe, e-mail: [email protected]
>>>>>> 
>>>>  For additional commands, e-mail: [email protected]
>>>>>> 
>>>> 
>>>>>> 
>>>> 
>>>>> 
>>>>  Thanks,
>>>>> 
>>>> 
>>>>> 
>>>>  Jason
>>>>> 
>>>> 
>>>>> 
>>>>  ----------------------------------------------------------
>>>>> 
>>>>  Jason van Zyl
>>>>> 
>>>>  Founder & CTO, Sonatype
>>>>> 
>>>>  Founder,  Apache Maven
>>>>> 
>>>>  http://twitter.com/jvanzyl
>>>>> 
>>>>  ---------------------------------------------------------
>>>>> 
>>>> 
>>>>> 
>>>>  happiness is like a butterfly: the more you chase it, the more it 
> will
>>>>> 
>>>>  elude you, but if you turn your attention to other things, it will 
> come
>>>>> 
>>>>  and sit softly on your shoulder ...
>>>>> 
>>>> 
>>>>> 
>>>>  -- Thoreau 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
> ---------------------------------------------------------------------
>>>>  To unsubscribe, e-mail: [email protected]
>>>>  For additional commands, e-mail: [email protected]
>>>> 
>>>> 
>>> 
>>>  Thanks,
>>> 
>>>  Jason
>>> 
>>>  ----------------------------------------------------------
>>>  Jason van Zyl
>>>  Founder & CTO, Sonatype
>>>  Founder,  Apache Maven
>>>  http://twitter.com/jvanzyl
>>>  ---------------------------------------------------------
>>> 
>>> 
>>>  Three people can keep a secret provided two of them are dead.
>>> 
>>>   -- Benjamin Franklin
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>>  ---------------------------------------------------------------------
>>  To unsubscribe, e-mail: [email protected]
>>  For additional commands, e-mail: [email protected]
>> 
> 
> Thanks,
> 
> Jason
> 
> ----------------------------------------------------------
> Jason van Zyl
> Founder & CTO, Sonatype
> Founder,  Apache Maven
> http://twitter.com/jvanzyl
> ---------------------------------------------------------
> 
> We know what we are, but know not what we may be.
> 
>   -- Shakespeare
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to