Re: improving incremental builds

2012-08-27 Thread Olivier Lamy
Hi,
Sounds good idea trying to improve that.
My question: on what is based the md5 calculation ?
If people don't use 'install' but only 'test' (perso I use that to
avoid too much io with jar creation etc..), so in such case we cannot
do md5 calculation on the produced artifact.

2012/8/26 Mark Struberg strub...@yahoo.de:
 Hi David!

 So your idea is to find the list of changed modules and
 then build that list with -amd?
 Yes, kind of.

 At the moment mvn -amd builds the dependents of the _current_ module. If you 
 use my example and change BeanA.java, then run mvn -amd from the root module 
 you will see that only moduleA gets rebuild and moduleB remains original. 
 Because moduleB is not a dependent of the root module.

 But yes, I'm completely with you that we have most of the ingredients in the 
 maven codebase already. At least for the start we could easily detect changed 
 build results and add those to the 'amd' list. That would already be much 
 better than what we have today imo. And this should be pretty easy to 
 implement.

 Indeed, what I proposed goes a bit beyond -amd. I would not only check the 
 current build tree like -amd does (even if that would be a good start) but 
 remember the md5 of all the dependencies of each module (simply store them in 
 a file in ./target/) And if you find a dependency which is not in the list 
 (e.g. after upgrade from one version to another) or has a different md5 (this 
 covers SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of 
 this module.


 LieGrue,
 strub



 - Original Message -
 From: David Jencks david_jen...@yahoo.com
 To: Maven Developers List dev@maven.apache.org
 Cc:
 Sent: Sunday, August 26, 2012 8:34 AM
 Subject: Re: improving incremental builds

 Is what you want different from what

 mvn -amd moduleA

 does?  So your idea is to find the list of changed modules and then build 
 that
 list with -amd?

 thanks
 david jencks

 On Aug 25, 2012, at 1:32 PM, Mark Struberg wrote:

  Hi folks!

  After a short discussion with Kristian, I've created a small app with 2
 modules which shows a few problems with mavens incremental build logic.
  And since incremental builds do not work well, people use

  $ mvn _clean_ install
  all the time.

  We could speed up the development effort heavily if we make
  $ mvn  install
  (without an upfront clean) more reliable.


  The sample [1] consists of moduleA and moduleB with BeanA and BeanB
 respectively.
  BeanB has a private BeanA field and moduleB has a dependency on moduleA.

  If I change BeanA and just invoke mvn install then only moduleA gets
 rebuilt. We currently do not rebuild moduleB, but we should do to create a
 reliable output.

  In fact, the incremental build within a single module already works to some
 degrees, but we must detect a change in dependencies and trigger a full 
 rebuild
 on all depending modules. This could be done by storing the md5 of all
 dependency artifacts and compare them on the next build. If the md5 of a
 dependency did change, then we need to build the module full cycle.
  Other ideas are welcome. Slaps as well if I forgot some obvious stuff and
 all works well already.


  LieGrue,
  strub


  -
  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




-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



Re: improving incremental builds

2012-08-27 Thread Mark Struberg
Hi Olivier!

I already started tweaking the m-compiler-plugin and found quite scary issues. 
There is e.g. MCOMPILER-21 (open since 2005) which prevents incremental build 
and would kick in in your scenario.

I talked about 2 scenarios 

a.) all phases = package, e.g. mvn verify, mvn install, ... Here we have an 
artifact on the disc and could test for the md5 of them, right?

b.) all phases  package. This is e.g. mvn compile or mvn test. In that case we 
don't produce a jar/war/ear/... artifact but only get the files on the disk 
linked in MavenProject#getProjectArtifacts()... file(). This is the case where 
the maven-compiler-plugin kicks in. I'm currently in the process of rewriting 
big parts of it, mainly I introduced
  b.1 a check for project.artifacts/project.testArtifacts .file() is a local 
file path .isDirectory() and has files which are newer (actually =) than the 
buildStarted timestamp.
  b.2 check whether there are any *.java (sourceincludes) files which are newer 
than their class files.

In both cases I now force a FULL recompile of the module! Compiling only parts 
produced classes which are actually broken! 


My approach is the following: compiling a bit too much is better than missing 
some files which need compilation. Because the later is exactly the reason why 
noone uses mvn compile but always do a mvn clean compile nowadays. If mvn 
compile is reliable, then we will end up being much faster than an 
unconditional full compile on the whole project!


LieGrue,
strub


PS: We need to move all our plugins which still use the plugin-testing-harness 
to the maven-invoker-plugin as the test-harness is broken with sisu. (sisu 
changed the 'container' field from plexus original: protected to 'private')

PPS: how do we maintain the plexus-compiler-utils stuff? This contains some 
weirdo bugs which should get fixed...



- Original Message -
 From: Olivier Lamy ol...@apache.org
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc: 
 Sent: Monday, August 27, 2012 9:13 AM
 Subject: Re: improving incremental builds
 
 Hi,
 Sounds good idea trying to improve that.
 My question: on what is based the md5 calculation ?
 If people don't use 'install' but only 'test' (perso I use 
 that to
 avoid too much io with jar creation etc..), so in such case we cannot
 do md5 calculation on the produced artifact.
 
 2012/8/26 Mark Struberg strub...@yahoo.de:
  Hi David!
 
  So your idea is to find the list of changed modules and
  then build that list with -amd?
  Yes, kind of.
 
  At the moment mvn -amd builds the dependents of the _current_ module. If 
 you use my example and change BeanA.java, then run mvn -amd from the root 
 module 
 you will see that only moduleA gets rebuild and moduleB remains original. 
 Because moduleB is not a dependent of the root module.
 
  But yes, I'm completely with you that we have most of the ingredients 
 in the maven codebase already. At least for the start we could easily detect 
 changed build results and add those to the 'amd' list. That would 
 already be much better than what we have today imo. And this should be pretty 
 easy to implement.
 
  Indeed, what I proposed goes a bit beyond -amd. I would not only check the 
 current build tree like -amd does (even if that would be a good start) but 
 remember the md5 of all the dependencies of each module (simply store them in 
 a 
 file in ./target/) And if you find a dependency which is not in the list 
 (e.g. 
 after upgrade from one version to another) or has a different md5 (this 
 covers 
 SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of this 
 module.
 
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: David Jencks david_jen...@yahoo.com
  To: Maven Developers List dev@maven.apache.org
  Cc:
  Sent: Sunday, August 26, 2012 8:34 AM
  Subject: Re: improving incremental builds
 
  Is what you want different from what
 
  mvn -amd moduleA
 
  does?  So your idea is to find the list of changed modules and then 
 build that
  list with -amd?
 
  thanks
  david jencks
 
  On Aug 25, 2012, at 1:32 PM, Mark Struberg wrote:
 
   Hi folks!
 
   After a short discussion with Kristian, I've created a small 
 app with 2
  modules which shows a few problems with mavens incremental build logic.
   And since incremental builds do not work well, people use
 
   $ mvn _clean_ install
   all the time.
 
   We could speed up the development effort heavily if we make
   $ mvn  install
   (without an upfront clean) more reliable.
 
 
   The sample [1] consists of moduleA and moduleB with BeanA and 
 BeanB
  respectively.
   BeanB has a private BeanA field and moduleB has a dependency on 
 moduleA.
 
   If I change BeanA and just invoke mvn install then only moduleA 
 gets
  rebuilt. We currently do not rebuild moduleB, but we should do to 
 create a
  reliable output.
 
   In fact, the incremental build within a single module already 
 works to some
  degrees, 

Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Stephen Connolly
1. Source distribution builds with ITs passing [OK]
2. RAT report [OK]

There is only one file missing a header in the RAT report, and I am willing
to bet that the file format for that file does not support comments.

+1 from me

-Stephen

*
Summary
---
Generated at: 2012-08-27T08:46:25+01:00
Notes: 2
Binaries: 1
Archives: 0
Standards: 117

Apache Licensed: 116
Generated Documents: 0

JavaDocs are generated and so license header is optional
Generated files do not required license headers

1 Unknown Licenses

***

Unapproved licenses:

  src/main/resources/org/apache/maven/report/projectinfo/resources/resources.txt

***


On 26 August 2012 21:11, Hervé BOUTEMY herve.bout...@free.fr wrote:

 Hi,

 We solved 5 issues:

 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html

 There are still a couple of issues left in JIRA:

 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1

 Staging repo:
 https://repository.apache.org/content/repositories/maven-013/

 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
 project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
 source-release.zip

 Staging site: (sync pending)
 http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

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




Re: improving incremental builds

2012-08-27 Thread Anders Hammar
 I already started tweaking the m-compiler-plugin and found quite scary 
 issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents 
 incremental build and would kick in in your scenario.

This is interesting. I've looked a bit at Mojo's JAXB plugin in the
context of detecting stale generated files (i.e. need to re-generate)
and it's similar to this. It would extremely nice if there would be a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just browsed it
quickly), we have cases when includes/excludes change, the sourceDir
changes, etc which should trigger cleanup and re-compilation.

/Anders


 I talked about 2 scenarios

 a.) all phases = package, e.g. mvn verify, mvn install, ... Here we have an 
 artifact on the disc and could test for the md5 of them, right?

 b.) all phases  package. This is e.g. mvn compile or mvn test. In that case 
 we don't produce a jar/war/ear/... artifact but only get the files on the 
 disk linked in MavenProject#getProjectArtifacts()... file(). This is the case 
 where the maven-compiler-plugin kicks in. I'm currently in the process of 
 rewriting big parts of it, mainly I introduced
   b.1 a check for project.artifacts/project.testArtifacts .file() is a local 
 file path .isDirectory() and has files which are newer (actually =) than the 
 buildStarted timestamp.
   b.2 check whether there are any *.java (sourceincludes) files which are 
 newer than their class files.

 In both cases I now force a FULL recompile of the module! Compiling only 
 parts produced classes which are actually broken!


 My approach is the following: compiling a bit too much is better than missing 
 some files which need compilation. Because the later is exactly the reason 
 why noone uses mvn compile but always do a mvn clean compile nowadays. If mvn 
 compile is reliable, then we will end up being much faster than an 
 unconditional full compile on the whole project!


 LieGrue,
 strub


 PS: We need to move all our plugins which still use the 
 plugin-testing-harness to the maven-invoker-plugin as the test-harness is 
 broken with sisu. (sisu changed the 'container' field from plexus original: 
 protected to 'private')

 PPS: how do we maintain the plexus-compiler-utils stuff? This contains some 
 weirdo bugs which should get fixed...



 - Original Message -
 From: Olivier Lamy ol...@apache.org
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 9:13 AM
 Subject: Re: improving incremental builds

 Hi,
 Sounds good idea trying to improve that.
 My question: on what is based the md5 calculation ?
 If people don't use 'install' but only 'test' (perso I use
 that to
 avoid too much io with jar creation etc..), so in such case we cannot
 do md5 calculation on the produced artifact.

 2012/8/26 Mark Struberg strub...@yahoo.de:
  Hi David!

  So your idea is to find the list of changed modules and
  then build that list with -amd?
  Yes, kind of.

  At the moment mvn -amd builds the dependents of the _current_ module. If
 you use my example and change BeanA.java, then run mvn -amd from the root 
 module
 you will see that only moduleA gets rebuild and moduleB remains original.
 Because moduleB is not a dependent of the root module.

  But yes, I'm completely with you that we have most of the ingredients
 in the maven codebase already. At least for the start we could easily detect
 changed build results and add those to the 'amd' list. That would
 already be much better than what we have today imo. And this should be pretty
 easy to implement.

  Indeed, what I proposed goes a bit beyond -amd. I would not only check the
 current build tree like -amd does (even if that would be a good start) but
 remember the md5 of all the dependencies of each module (simply store them 
 in a
 file in ./target/) And if you find a dependency which is not in the list 
 (e.g.
 after upgrade from one version to another) or has a different md5 (this 
 covers
 SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of this
 module.


  LieGrue,
  strub



  - Original Message -
  From: David Jencks david_jen...@yahoo.com
  To: Maven Developers List dev@maven.apache.org
  Cc:
  Sent: Sunday, August 26, 2012 8:34 AM
  Subject: Re: improving incremental builds

  Is what you want different from what

  mvn -amd moduleA

  does?  So your idea is to find the list of changed modules and then
 build that
  list with -amd?

  thanks
  david jencks

  On Aug 25, 2012, at 1:32 PM, Mark Struberg wrote:

   Hi folks!

   After a short discussion with Kristian, I've created a small
 app with 2
  modules which shows a few problems with mavens incremental build logic.
   And since incremental builds do not work well, people use

   $ mvn _clean_ install
   all the time.

   We could speed up the development effort heavily if we make
   $ mvn  install
   (without an upfront clean) more 

Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Mark Struberg
+1

key looks fine, source builds fine, reports ok in my project.

LieGrue,
strub



- Original Message -
 From: Stephen Connolly stephen.alan.conno...@gmail.com
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Monday, August 27, 2012 9:53 AM
 Subject: Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1
 
 1. Source distribution builds with ITs passing [OK]
 2. RAT report [OK]
 
 There is only one file missing a header in the RAT report, and I am willing
 to bet that the file format for that file does not support comments.
 
 +1 from me
 
 -Stephen
 
 *
 Summary
 ---
 Generated at: 2012-08-27T08:46:25+01:00
 Notes: 2
 Binaries: 1
 Archives: 0
 Standards: 117
 
 Apache Licensed: 116
 Generated Documents: 0
 
 JavaDocs are generated and so license header is optional
 Generated files do not required license headers
 
 1 Unknown Licenses
 
 ***
 
 Unapproved licenses:
 
   
 src/main/resources/org/apache/maven/report/projectinfo/resources/resources.txt
 
 ***
 
 
 On 26 August 2012 21:11, Hervé BOUTEMY herve.bout...@free.fr wrote:
 
  Hi,
 
  We solved 5 issues:
 
 
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html
 
  There are still a couple of issues left in JIRA:
 
 
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1
 
  Staging repo:
  https://repository.apache.org/content/repositories/maven-013/
 
 
 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
  project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
  source-release.zip
 
  Staging site: (sync pending)
  http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/
 
  Guide to testing staged releases:
  http://maven.apache.org/guides/development/guide-testing-releases.html
 
  Vote open for 72 hours.
 
  [ ] +1
  [ ] +0
  [ ] -1
 
  -
  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



Re: improving incremental builds

2012-08-27 Thread Mark Struberg
+1 for a common framework in maven-shared or similar.

+0 for auto detecting changed scenarios. If someone changes a profile or the 
whole pom, then I'd expect he invokes a clean manually.  We have to document 
this expectation of course.

LieGrue,
strub




- Original Message -
 From: Anders Hammar and...@hammar.net
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Monday, August 27, 2012 9:57 AM
 Subject: Re: improving incremental builds
 
  I already started tweaking the m-compiler-plugin and found quite scary 
 issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents 
 incremental 
 build and would kick in in your scenario.
 
 This is interesting. I've looked a bit at Mojo's JAXB plugin in the
 context of detecting stale generated files (i.e. need to re-generate)
 and it's similar to this. It would extremely nice if there would be a
 common framework for handling incremental builds.
 In addition to what's been mentioned in the jira (I just browsed it
 quickly), we have cases when includes/excludes change, the sourceDir
 changes, etc which should trigger cleanup and re-compilation.
 
 /Anders
 
 
  I talked about 2 scenarios
 
  a.) all phases = package, e.g. mvn verify, mvn install, ... Here we 
 have an artifact on the disc and could test for the md5 of them, right?
 
  b.) all phases  package. This is e.g. mvn compile or mvn test. In that 
 case we don't produce a jar/war/ear/... artifact but only get the files on 
 the disk linked in MavenProject#getProjectArtifacts()... file(). This is the 
 case where the maven-compiler-plugin kicks in. I'm currently in the process 
 of rewriting big parts of it, mainly I introduced
    b.1 a check for project.artifacts/project.testArtifacts .file() is a 
 local file path .isDirectory() and has files which are newer (actually =) 
 than the buildStarted timestamp.
    b.2 check whether there are any *.java (sourceincludes) files which are 
 newer than their class files.
 
  In both cases I now force a FULL recompile of the module! Compiling only 
 parts produced classes which are actually broken!
 
 
  My approach is the following: compiling a bit too much is better than 
 missing some files which need compilation. Because the later is exactly the 
 reason why noone uses mvn compile but always do a mvn clean compile nowadays. 
 If 
 mvn compile is reliable, then we will end up being much faster than an 
 unconditional full compile on the whole project!
 
 
  LieGrue,
  strub
 
 
  PS: We need to move all our plugins which still use the 
 plugin-testing-harness to the maven-invoker-plugin as the test-harness is 
 broken 
 with sisu. (sisu changed the 'container' field from plexus original: 
 protected to 'private')
 
  PPS: how do we maintain the plexus-compiler-utils stuff? This contains some 
 weirdo bugs which should get fixed...
 
 
 
  - Original Message -
  From: Olivier Lamy ol...@apache.org
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 9:13 AM
  Subject: Re: improving incremental builds
 
  Hi,
  Sounds good idea trying to improve that.
  My question: on what is based the md5 calculation ?
  If people don't use 'install' but only 'test' 
 (perso I use
  that to
  avoid too much io with jar creation etc..), so in such case we cannot
  do md5 calculation on the produced artifact.
 
  2012/8/26 Mark Struberg strub...@yahoo.de:
   Hi David!
 
   So your idea is to find the list of changed modules and
   then build that list with -amd?
   Yes, kind of.
 
   At the moment mvn -amd builds the dependents of the _current_ 
 module. If
  you use my example and change BeanA.java, then run mvn -amd from the 
 root module
  you will see that only moduleA gets rebuild and moduleB remains 
 original.
  Because moduleB is not a dependent of the root module.
 
   But yes, I'm completely with you that we have most of the 
 ingredients
  in the maven codebase already. At least for the start we could easily 
 detect
  changed build results and add those to the 'amd' list. That 
 would
  already be much better than what we have today imo. And this should be 
 pretty
  easy to implement.
 
   Indeed, what I proposed goes a bit beyond -amd. I would not only 
 check the
  current build tree like -amd does (even if that would be a good start) 
 but
  remember the md5 of all the dependencies of each module (simply store 
 them in a
  file in ./target/) And if you find a dependency which is not in the 
 list (e.g.
  after upgrade from one version to another) or has a different md5 (this 
 covers
  SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of 
 this
  module.
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: David Jencks david_jen...@yahoo.com
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Sunday, August 26, 2012 8:34 AM
   Subject: Re: improving incremental builds
 
   Is what you want different from what
 

Re: [VOTE] Apache Maven Dependency Plugin 2.5.1

2012-08-27 Thread Olivier Lamy
+1

2012/8/24 Olivier Lamy ol...@apache.org:
 Hi,
 I'd like to release Maven Dependency Plugin 2.5.1.
 This release contains a regression issue fix and a perf improvement
 (https://jira.codehaus.org/browse/MDEP/fixforversion/18718)

 Staging repository:
 https://repository.apache.org/content/repositories/maven-003/
 Staging site: http://maven.apache.org/plugins/maven-dependency-plugin-2.5.1
 (wait sync)

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

 Thanks,
 --
 Olivier Lamy
 Talend: http://coders.talend.com
 http://twitter.com/olamy | http://linkedin.com/in/olamy



-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



[RESULT][VOTE] Apache Maven Dependency Plugin 2.5.1

2012-08-27 Thread Olivier Lamy
Hi,
The vote has passed with the following result.
+1 (binding): Stephen Connolly, Kristian Rosenvold, Stephan Nicoll,
Hervé Boutemy, Olivier Lamy
+1 (non binding): Keith Sader, Tony Chemit

I will continue the release process.

Thanks!
-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



Re: improving incremental builds

2012-08-27 Thread Olivier Lamy
agree for common framework. Maybe using the existing
o.s.p.b.i.BuildContext (or an other new one)
others inline.

2012/8/27 Mark Struberg strub...@yahoo.de:
 +1 for a common framework in maven-shared or similar.

 +0 for auto detecting changed scenarios. If someone changes a profile or the 
 whole pom, then I'd expect he invokes a clean manually.  We have to document 
 this expectation of course.

 LieGrue,
 strub




 - Original Message -
 From: Anders Hammar and...@hammar.net
 To: Maven Developers List dev@maven.apache.org
 Cc:
 Sent: Monday, August 27, 2012 9:57 AM
 Subject: Re: improving incremental builds

  I already started tweaking the m-compiler-plugin and found quite scary
 issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents 
 incremental
 build and would kick in in your scenario.

 This is interesting. I've looked a bit at Mojo's JAXB plugin in the
 context of detecting stale generated files (i.e. need to re-generate)
 and it's similar to this. It would extremely nice if there would be a
 common framework for handling incremental builds.
 In addition to what's been mentioned in the jira (I just browsed it
 quickly), we have cases when includes/excludes change, the sourceDir
 changes, etc which should trigger cleanup and re-compilation.

 /Anders


  I talked about 2 scenarios

  a.) all phases = package, e.g. mvn verify, mvn install, ... Here we
 have an artifact on the disc and could test for the md5 of them, right?

  b.) all phases  package. This is e.g. mvn compile or mvn test. In that
 case we don't produce a jar/war/ear/... artifact but only get the files on
 the disk linked in MavenProject#getProjectArtifacts()... file(). This is the
 case where the maven-compiler-plugin kicks in. I'm currently in the process
 of rewriting big parts of it, mainly I introduced
b.1 a check for project.artifacts/project.testArtifacts .file() is a
 local file path .isDirectory() and has files which are newer (actually =)
 than the buildStarted timestamp.
b.2 check whether there are any *.java (sourceincludes) files which are
 newer than their class files.

  In both cases I now force a FULL recompile of the module! Compiling only
 parts produced classes which are actually broken!


  My approach is the following: compiling a bit too much is better than
 missing some files which need compilation. Because the later is exactly the
 reason why noone uses mvn compile but always do a mvn clean compile 
 nowadays. If
 mvn compile is reliable, then we will end up being much faster than an
 unconditional full compile on the whole project!


  LieGrue,
  strub


  PS: We need to move all our plugins which still use the
 plugin-testing-harness to the maven-invoker-plugin as the test-harness is 
 broken
 with sisu. (sisu changed the 'container' field from plexus original:
 protected to 'private')

version 2.0-alpha-1 should fix that (see site plugin)


  PPS: how do we maintain the plexus-compiler-utils stuff? This contains some
 weirdo bugs which should get fixed...
we maintain that see changelog history
https://github.com/sonatype/plexus-compiler/commits/master/
bugs which ones ? :-)




  - Original Message -
  From: Olivier Lamy ol...@apache.org
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 9:13 AM
  Subject: Re: improving incremental builds

  Hi,
  Sounds good idea trying to improve that.
  My question: on what is based the md5 calculation ?
  If people don't use 'install' but only 'test'
 (perso I use
  that to
  avoid too much io with jar creation etc..), so in such case we cannot
  do md5 calculation on the produced artifact.

  2012/8/26 Mark Struberg strub...@yahoo.de:
   Hi David!

   So your idea is to find the list of changed modules and
   then build that list with -amd?
   Yes, kind of.

   At the moment mvn -amd builds the dependents of the _current_
 module. If
  you use my example and change BeanA.java, then run mvn -amd from the
 root module
  you will see that only moduleA gets rebuild and moduleB remains
 original.
  Because moduleB is not a dependent of the root module.

   But yes, I'm completely with you that we have most of the
 ingredients
  in the maven codebase already. At least for the start we could easily
 detect
  changed build results and add those to the 'amd' list. That
 would
  already be much better than what we have today imo. And this should be
 pretty
  easy to implement.

   Indeed, what I proposed goes a bit beyond -amd. I would not only
 check the
  current build tree like -amd does (even if that would be a good start)
 but
  remember the md5 of all the dependencies of each module (simply store
 them in a
  file in ./target/) And if you find a dependency which is not in the
 list (e.g.
  after upgrade from one version to another) or has a different md5 (this
 covers
  SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of
 this
  module.


   

Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Stephane Nicoll
+1

S.

On Sun, Aug 26, 2012 at 10:11 PM, Hervé BOUTEMY herve.bout...@free.fr wrote:
 Hi,

 We solved 5 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html

 There are still a couple of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1

 Staging repo:
 https://repository.apache.org/content/repositories/maven-013/
 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
 project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
 source-release.zip

 Staging site: (sync pending)
 http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

 -
 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



Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Olivier Lamy
+1

2012/8/26 Hervé BOUTEMY herve.bout...@free.fr:
 Hi,

 We solved 5 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html

 There are still a couple of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1

 Staging repo:
 https://repository.apache.org/content/repositories/maven-013/
 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
 project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
 source-release.zip

 Staging site: (sync pending)
 http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

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




-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



Re: [VOTE] Release Maven Surefire version 2.12.3

2012-08-27 Thread Olivier Lamy
+1

2012/8/25 Kristian Rosenvold kristian.rosenv...@gmail.com:
 Hi,

 We solved 11 issues:
 https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10541version=18704

 2.12.3 should be slightly faster than previous versions, but don't
 expect too much.

 There are still lots of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truemode=hidejqlQuery=project+%3D+SUREFIRE+AND+resolution+%3D+Unresolved+ORDER+BY+updated+DESC

 Staging repo:
 https://repository.apache.org/content/repositories/maven-011/

 Staging site: (Sync pending)
  http://maven.apache.org/surefire/staging/ (Links to sub-sites work
 when transfered to production)

   http://maven.apache.org/plugins/maven-failsafe-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-reports-plugin-2.12.3/



 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1


 And here's my +1

 Kristian

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




-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



Re: improving incremental builds

2012-08-27 Thread Anders Hammar
 +0 for auto detecting changed scenarios. If someone changes a profile or the 
 whole pom, then I'd expect he invokes a clean manually.  We have to document 
 this expectation of course.

What do others think of this? I'm thinking it would be awesome (but
maybe difficult) if plugins could determine if its configuration has
changed, and then handle this automatically. If there are to many
cases where a manual clean build is required, I believe people will
continue to do mvn clean install (which I see all the time with
developers), which I think is what we try to get away from.

/Anders


 LieGrue,
 strub




 - Original Message -
 From: Anders Hammar and...@hammar.net
 To: Maven Developers List dev@maven.apache.org
 Cc:
 Sent: Monday, August 27, 2012 9:57 AM
 Subject: Re: improving incremental builds

  I already started tweaking the m-compiler-plugin and found quite scary
 issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents 
 incremental
 build and would kick in in your scenario.

 This is interesting. I've looked a bit at Mojo's JAXB plugin in the
 context of detecting stale generated files (i.e. need to re-generate)
 and it's similar to this. It would extremely nice if there would be a
 common framework for handling incremental builds.
 In addition to what's been mentioned in the jira (I just browsed it
 quickly), we have cases when includes/excludes change, the sourceDir
 changes, etc which should trigger cleanup and re-compilation.

 /Anders


  I talked about 2 scenarios

  a.) all phases = package, e.g. mvn verify, mvn install, ... Here we
 have an artifact on the disc and could test for the md5 of them, right?

  b.) all phases  package. This is e.g. mvn compile or mvn test. In that
 case we don't produce a jar/war/ear/... artifact but only get the files on
 the disk linked in MavenProject#getProjectArtifacts()... file(). This is the
 case where the maven-compiler-plugin kicks in. I'm currently in the process
 of rewriting big parts of it, mainly I introduced
b.1 a check for project.artifacts/project.testArtifacts .file() is a
 local file path .isDirectory() and has files which are newer (actually =)
 than the buildStarted timestamp.
b.2 check whether there are any *.java (sourceincludes) files which are
 newer than their class files.

  In both cases I now force a FULL recompile of the module! Compiling only
 parts produced classes which are actually broken!


  My approach is the following: compiling a bit too much is better than
 missing some files which need compilation. Because the later is exactly the
 reason why noone uses mvn compile but always do a mvn clean compile 
 nowadays. If
 mvn compile is reliable, then we will end up being much faster than an
 unconditional full compile on the whole project!


  LieGrue,
  strub


  PS: We need to move all our plugins which still use the
 plugin-testing-harness to the maven-invoker-plugin as the test-harness is 
 broken
 with sisu. (sisu changed the 'container' field from plexus original:
 protected to 'private')

  PPS: how do we maintain the plexus-compiler-utils stuff? This contains some
 weirdo bugs which should get fixed...



  - Original Message -
  From: Olivier Lamy ol...@apache.org
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 9:13 AM
  Subject: Re: improving incremental builds

  Hi,
  Sounds good idea trying to improve that.
  My question: on what is based the md5 calculation ?
  If people don't use 'install' but only 'test'
 (perso I use
  that to
  avoid too much io with jar creation etc..), so in such case we cannot
  do md5 calculation on the produced artifact.

  2012/8/26 Mark Struberg strub...@yahoo.de:
   Hi David!

   So your idea is to find the list of changed modules and
   then build that list with -amd?
   Yes, kind of.

   At the moment mvn -amd builds the dependents of the _current_
 module. If
  you use my example and change BeanA.java, then run mvn -amd from the
 root module
  you will see that only moduleA gets rebuild and moduleB remains
 original.
  Because moduleB is not a dependent of the root module.

   But yes, I'm completely with you that we have most of the
 ingredients
  in the maven codebase already. At least for the start we could easily
 detect
  changed build results and add those to the 'amd' list. That
 would
  already be much better than what we have today imo. And this should be
 pretty
  easy to implement.

   Indeed, what I proposed goes a bit beyond -amd. I would not only
 check the
  current build tree like -amd does (even if that would be a good start)
 but
  remember the md5 of all the dependencies of each module (simply store
 them in a
  file in ./target/) And if you find a dependency which is not in the
 list (e.g.
  after upgrade from one version to another) or has a different md5 (this
 covers
  SNAPSHOT versions) , then we could force a full rebuild (mvn -amd) of
 this
  

Re: improving incremental builds

2012-08-27 Thread Romain Manni-Bucau
Hi,

The full invremental is great but not always possible (think to assembly
plugin, some case xill be very hard to handle in snapshot mode i guess)

Maybe it is time to get a maven daemon to help to be able to store
information?

- Romain
Le 27 août 2012 12:24, Anders Hammar and...@hammar.net a écrit :

  +0 for auto detecting changed scenarios. If someone changes a profile or
 the whole pom, then I'd expect he invokes a clean manually.  We have to
 document this expectation of course.

 What do others think of this? I'm thinking it would be awesome (but
 maybe difficult) if plugins could determine if its configuration has
 changed, and then handle this automatically. If there are to many
 cases where a manual clean build is required, I believe people will
 continue to do mvn clean install (which I see all the time with
 developers), which I think is what we try to get away from.

 /Anders

 
  LieGrue,
  strub
 
 
 
 
  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org
  Cc:
  Sent: Monday, August 27, 2012 9:57 AM
  Subject: Re: improving incremental builds
 
   I already started tweaking the m-compiler-plugin and found quite scary
  issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents
 incremental
  build and would kick in in your scenario.
 
  This is interesting. I've looked a bit at Mojo's JAXB plugin in the
  context of detecting stale generated files (i.e. need to re-generate)
  and it's similar to this. It would extremely nice if there would be a
  common framework for handling incremental builds.
  In addition to what's been mentioned in the jira (I just browsed it
  quickly), we have cases when includes/excludes change, the sourceDir
  changes, etc which should trigger cleanup and re-compilation.
 
  /Anders
 
 
   I talked about 2 scenarios
 
   a.) all phases = package, e.g. mvn verify, mvn install, ... Here we
  have an artifact on the disc and could test for the md5 of them, right?
 
   b.) all phases  package. This is e.g. mvn compile or mvn test. In
 that
  case we don't produce a jar/war/ear/... artifact but only get the files
 on
  the disk linked in MavenProject#getProjectArtifacts()... file(). This
 is the
  case where the maven-compiler-plugin kicks in. I'm currently in the
 process
  of rewriting big parts of it, mainly I introduced
 b.1 a check for project.artifacts/project.testArtifacts .file() is a
  local file path .isDirectory() and has files which are newer (actually
 =)
  than the buildStarted timestamp.
 b.2 check whether there are any *.java (sourceincludes) files which
 are
  newer than their class files.
 
   In both cases I now force a FULL recompile of the module! Compiling
 only
  parts produced classes which are actually broken!
 
 
   My approach is the following: compiling a bit too much is better than
  missing some files which need compilation. Because the later is exactly
 the
  reason why noone uses mvn compile but always do a mvn clean compile
 nowadays. If
  mvn compile is reliable, then we will end up being much faster than an
  unconditional full compile on the whole project!
 
 
   LieGrue,
   strub
 
 
   PS: We need to move all our plugins which still use the
  plugin-testing-harness to the maven-invoker-plugin as the test-harness
 is broken
  with sisu. (sisu changed the 'container' field from plexus original:
  protected to 'private')
 
   PPS: how do we maintain the plexus-compiler-utils stuff? This
 contains some
  weirdo bugs which should get fixed...
 
 
 
   - Original Message -
   From: Olivier Lamy ol...@apache.org
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 9:13 AM
   Subject: Re: improving incremental builds
 
   Hi,
   Sounds good idea trying to improve that.
   My question: on what is based the md5 calculation ?
   If people don't use 'install' but only 'test'
  (perso I use
   that to
   avoid too much io with jar creation etc..), so in such case we cannot
   do md5 calculation on the produced artifact.
 
   2012/8/26 Mark Struberg strub...@yahoo.de:
Hi David!
 
So your idea is to find the list of changed modules and
then build that list with -amd?
Yes, kind of.
 
At the moment mvn -amd builds the dependents of the _current_
  module. If
   you use my example and change BeanA.java, then run mvn -amd from the
  root module
   you will see that only moduleA gets rebuild and moduleB remains
  original.
   Because moduleB is not a dependent of the root module.
 
But yes, I'm completely with you that we have most of the
  ingredients
   in the maven codebase already. At least for the start we could easily
  detect
   changed build results and add those to the 'amd' list. That
  would
   already be much better than what we have today imo. And this should
 be
  pretty
   easy to implement.
 
Indeed, what I proposed goes a bit beyond -amd. I 

Re: [VOTE] Release Maven Surefire version 2.12.3

2012-08-27 Thread Tony Chemit
On Sat, 25 Aug 2012 00:11:55 +0200
Kristian Rosenvold kristian.rosenv...@gmail.com wrote:

+1

works fine to me,

thanks,

tony.

 Hi,
 
 We solved 11 issues:
 https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10541version=18704
 
 2.12.3 should be slightly faster than previous versions, but don't
 expect too much.
 
 There are still lots of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truemode=hidejqlQuery=project+%3D+SUREFIRE+AND+resolution+%3D+Unresolved+ORDER+BY+updated+DESC
 
 Staging repo:
 https://repository.apache.org/content/repositories/maven-011/
 
 Staging site: (Sync pending)
  http://maven.apache.org/surefire/staging/ (Links to sub-sites work
 when transfered to production)
 
   http://maven.apache.org/plugins/maven-failsafe-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-reports-plugin-2.12.3/
 
 
 
 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html
 
 Vote open for 72 hours.
 
 [ ] +1
 [ ] +0
 [ ] -1
 
 
 And here's my +1
 
 Kristian
 
 -
 To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
 For additional commands, e-mail: dev-h...@maven.apache.org
 



-- 
Tony Chemit

tél: +33 (0) 2 40 50 29 28
email: che...@codelutin.com
http://www.codelutin.com

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



Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Lukas Theussl

+1

-Lukas



Hervé BOUTEMY wrote:
 Hi,
 
 We solved 5 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html
 
 There are still a couple of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1
 
 Staging repo:
 https://repository.apache.org/content/repositories/maven-013/
 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
 project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
 source-release.zip
 
 Staging site: (sync pending)
 http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/
 
 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html
 
 Vote open for 72 hours.
 
 [ ] +1
 [ ] +0
 [ ] -1
 
 -
 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



Re: improving incremental builds

2012-08-27 Thread Mark Struberg
The assembly plugin example is perfectly fine if the dependencies are defined 
in a dependency section. If a SNAPSHOT dependency did change, then it will 
get a different md5. Of course if plugins resolve some dependencies 
programmatically, then those cases will not work easily. But that is considered 
bad practice anyway, isn't?


There are clearly 2 different aspects we need to check/implement to get this 
fully working:

a.) artifact dependencies md5 changed - invoke clean for each downstream module
b.) each plugin must check itself if a required class changed and then update 
the output accordingly. If all plugins in the chain do this properly then we 
will do much better already.


I'm currently focusing to get b.) implemented in the maven-compiler-plugin

LieGrue,
strub



- Original Message -
 From: Romain Manni-Bucau rmannibu...@gmail.com
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Monday, August 27, 2012 12:28 PM
 Subject: Re: improving incremental builds
 
 Hi,
 
 The full invremental is great but not always possible (think to assembly
 plugin, some case xill be very hard to handle in snapshot mode i guess)
 
 Maybe it is time to get a maven daemon to help to be able to store
 information?
 
 - Romain
 Le 27 août 2012 12:24, Anders Hammar and...@hammar.net a 
 écrit :
 
   +0 for auto detecting changed scenarios. If someone changes a profile 
 or
  the whole pom, then I'd expect he invokes a clean manually.  We have to
  document this expectation of course.
 
  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time with
  developers), which I think is what we try to get away from.
 
  /Anders
 
  
   LieGrue,
   strub
  
  
  
  
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Monday, August 27, 2012 9:57 AM
   Subject: Re: improving incremental builds
  
    I already started tweaking the m-compiler-plugin and found 
 quite scary
   issues. There is e.g. MCOMPILER-21 (open since 2005) which 
 prevents
  incremental
   build and would kick in in your scenario.
  
   This is interesting. I've looked a bit at Mojo's JAXB 
 plugin in the
   context of detecting stale generated files (i.e. need to 
 re-generate)
   and it's similar to this. It would extremely nice if there 
 would be a
   common framework for handling incremental builds.
   In addition to what's been mentioned in the jira (I just 
 browsed it
   quickly), we have cases when includes/excludes change, the 
 sourceDir
   changes, etc which should trigger cleanup and re-compilation.
  
   /Anders
  
  
    I talked about 2 scenarios
  
    a.) all phases = package, e.g. mvn verify, mvn install, 
 ... Here we
   have an artifact on the disc and could test for the md5 of them, 
 right?
  
    b.) all phases  package. This is e.g. mvn compile or mvn 
 test. In
  that
   case we don't produce a jar/war/ear/... artifact but only get 
 the files
  on
   the disk linked in MavenProject#getProjectArtifacts()... file(). 
 This
  is the
   case where the maven-compiler-plugin kicks in. I'm currently 
 in the
  process
   of rewriting big parts of it, mainly I introduced
      b.1 a check for project.artifacts/project.testArtifacts 
 .file() is a
   local file path .isDirectory() and has files which are newer 
 (actually
  =)
   than the buildStarted timestamp.
      b.2 check whether there are any *.java (sourceincludes) 
 files which
  are
   newer than their class files.
  
    In both cases I now force a FULL recompile of the module! 
 Compiling
  only
   parts produced classes which are actually broken!
  
  
    My approach is the following: compiling a bit too much is 
 better than
   missing some files which need compilation. Because the later is 
 exactly
  the
   reason why noone uses mvn compile but always do a mvn clean 
 compile
  nowadays. If
   mvn compile is reliable, then we will end up being much faster 
 than an
   unconditional full compile on the whole project!
  
  
    LieGrue,
    strub
  
  
    PS: We need to move all our plugins which still use the
   plugin-testing-harness to the maven-invoker-plugin as the 
 test-harness
  is broken
   with sisu. (sisu changed the 'container' field from plexus 
 original:
   protected to 'private')
  
    PPS: how do we maintain the plexus-compiler-utils stuff? This
  contains some
   weirdo bugs which should get fixed...
  
  
  
    - Original Message -
    From: Olivier Lamy ol...@apache.org
    To: Maven Developers List dev@maven.apache.org; 
 Mark Struberg
   strub...@yahoo.de
    Cc:
    Sent: Monday, August 27, 2012 9:13 AM
    Subject: Re: improving incremental builds
  
    

[VOTE] Maven Skins parent 7 and Maven Fluido skin 1.3.0

2012-08-27 Thread Olivier Lamy
Hi,

We solved 10 issues:
http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11430styleName=Htmlversion=18713

Staging repo:
https://repository.apache.org/content/repositories/maven-015/

Staging site:
http://maven.apache.org/skins/maven-fluido-skin-1.3.0/

Guide to testing staged releases:
http://maven.apache.org/guides/development/guide-testing-releases.html

Vote open for 72 hours.

[ ] +1
[ ] +0
[ ] -1

-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

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



Re: [VOTE] Maven Skins parent 7 and Maven Fluido skin 1.3.0

2012-08-27 Thread Simone Tripodi
+1!!!

thanks,
-Simo

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


On Mon, Aug 27, 2012 at 3:13 PM, Olivier Lamy ol...@apache.org wrote:
 Hi,

 We solved 10 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11430styleName=Htmlversion=18713

 Staging repo:
 https://repository.apache.org/content/repositories/maven-015/

 Staging site:
 http://maven.apache.org/skins/maven-fluido-skin-1.3.0/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

 --
 Olivier Lamy
 Talend: http://coders.talend.com
 http://twitter.com/olamy | http://linkedin.com/in/olamy

 -
 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



[ANN] Maven Dependency Plugin 2.5.1 Released

2012-08-27 Thread Olivier Lamy
Hi,
The Apache Maven team is pleased to announce the release of the Maven
Dependency Plugin, version 2.5.1

The dependency plugin provides the capability to manipulate artifacts.
It can copy and/or unpack artifacts from local or remote repositories
to a specified location.

http://maven.apache.org/plugins/maven-dependency-plugin/

You should specify the version in your project's plugin configuration:

plugin
  groupIdorg.apache.maven.plugins/groupId
  artifactIdmaven-dependency-plugin/artifactId
  version2.5.1/version
/plugin

Release Notes - Maven 2.x Dependency Plugin - Version 2.5.1

** Bug
* [MDEP-365] - includes/excludes doesn't work anymore with
unpack-dependencies 2.5

** Improvement
* [MDEP-368] - Configure plexus-archiver to use java.io.File
methods to set permissions when available.

Have Fun!
--
The Apache Maven team

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



maven-enforcer pull request: [MENFORCER-138] Rule to ban all transitive dep...

2012-08-27 Thread jsenko
GitHub user jsenko opened a pull request:

https://github.com/apache/maven-enforcer/pull/2

[MENFORCER-138] Rule to ban all transitive dependencies

In some projects it's desirable to have all dependencies specified in pom. 
It would be nice to have an enforcer rule that would ban all transitive 
dependencies so that the user could either add the transitive dependency 
directly to the pom (if it's actually needed), or exclude the dependency.
http://jira.codehaus.org/browse/MENFORCER-138

This rule will ban all transitive dependencies, unless configured otherwise.
The configuration works identically to 
http://maven.apache.org/enforcer/enforcer-rules/bannedDependencies.html .
User can exclude certain dependencies from being checked (anywhere in the 
dependency tree) add also add exceptions to the excludes for finer 
configuration (see javadoc for details).

If it fails, the rule will generate message showing dependencies which 
caused the failure and their descendants in a tree, with info which 
dependencies were excluded in that branch. Alternatively, custom message can be 
used.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/jsenko/maven-enforcer trunk

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/maven-enforcer/pull/2.patch


commit d7ba589ea198146a3a5aabd4b202557be1d852cc
Author: jsenko jse...@redhat.com
Date:   2012-08-24T04:34:21-07:00

Updated pom.xml

commit 8fdb711023c97b1e7dce0b88505f569ed64b8d72
Author: jsenko jse...@redhat.com
Date:   2012-08-24T04:35:04-07:00

Created ArtifactMatcher

commit bdc5c66050218a2dcbf8760080055ff2658f3d75
Author: jsenko jse...@redhat.com
Date:   2012-08-24T04:36:10-07:00

Created BanTransitiveDependencies enforcer rule

commit b481246a38afa19cd7134aaf9745740a4f9894d5
Author: jsenko jse...@redhat.com
Date:   2012-08-27T06:48:52-07:00

Updated BanTransitiveDependencies

commit 2f4767498259134b7bf91054795faff48659ea53
Author: jsenko jse...@redhat.com
Date:   2012-08-27T06:49:43-07:00

Updated ArtifactMatcher

commit 8f321d1070624668a1c68879f868702ff4735aaf
Author: jsenko jse...@redhat.com
Date:   2012-08-27T06:51:20-07:00

Created test for ArtifactMatcher

commit 93cf4d5cbff42cdbfc67c8b419cc988d9a3127ce
Author: jsenko jse...@redhat.com
Date:   2012-08-27T06:53:35-07:00

Added license comment.

commit 481e9a0b744dd7e366efc75b3b7a69602c645309
Author: jsenko jse...@redhat.com
Date:   2012-08-27T07:05:23-07:00

Minor whitespace and comment modifications.




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



Re: improving incremental builds

2012-08-27 Thread Benson Margulies
On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
 We might implement this by storing the list of all activated profiles + all 
 resolved environment properties in a file in target/ somewhere.
 That would be part of a.) in my previous mail to Romain.

How about the situation with shade?

Build 1 runs shade and it replaces the primary build artifact with a shaded one.

Build 2 sees that nothing has changed, but shade doesn't know, and it
reshades, eating its own output with a ton of messages.

Can I fix this in shade with current technologies?




 LieGrue,
 strub



 - Original Message -
 From: Anders Hammar and...@hammar.net
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 12:24 PM
 Subject: Re: improving incremental builds

  +0 for auto detecting changed scenarios. If someone changes a profile or
 the whole pom, then I'd expect he invokes a clean manually.  We have to
 document this expectation of course.

 What do others think of this? I'm thinking it would be awesome (but
 maybe difficult) if plugins could determine if its configuration has
 changed, and then handle this automatically. If there are to many
 cases where a manual clean build is required, I believe people will
 continue to do mvn clean install (which I see all the time with
 developers), which I think is what we try to get away from.

 /Anders


  LieGrue,
  strub




  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org
  Cc:
  Sent: Monday, August 27, 2012 9:57 AM
  Subject: Re: improving incremental builds

   I already started tweaking the m-compiler-plugin and found quite
 scary
  issues. There is e.g. MCOMPILER-21 (open since 2005) which prevents
 incremental
  build and would kick in in your scenario.

  This is interesting. I've looked a bit at Mojo's JAXB plugin in
 the
  context of detecting stale generated files (i.e. need to re-generate)
  and it's similar to this. It would extremely nice if there would be
 a
  common framework for handling incremental builds.
  In addition to what's been mentioned in the jira (I just browsed it
  quickly), we have cases when includes/excludes change, the sourceDir
  changes, etc which should trigger cleanup and re-compilation.

  /Anders


   I talked about 2 scenarios

   a.) all phases = package, e.g. mvn verify, mvn install, ...
 Here we
  have an artifact on the disc and could test for the md5 of them, right?

   b.) all phases  package. This is e.g. mvn compile or mvn test.
 In that
  case we don't produce a jar/war/ear/... artifact but only get the
 files on
  the disk linked in MavenProject#getProjectArtifacts()... file(). This
 is the
  case where the maven-compiler-plugin kicks in. I'm currently in the
 process
  of rewriting big parts of it, mainly I introduced
 b.1 a check for project.artifacts/project.testArtifacts .file()
 is a
  local file path .isDirectory() and has files which are newer (actually
 =)
  than the buildStarted timestamp.
 b.2 check whether there are any *.java (sourceincludes) files
 which are
  newer than their class files.

   In both cases I now force a FULL recompile of the module!
 Compiling only
  parts produced classes which are actually broken!


   My approach is the following: compiling a bit too much is better
 than
  missing some files which need compilation. Because the later is exactly
 the
  reason why noone uses mvn compile but always do a mvn clean compile
 nowadays. If
  mvn compile is reliable, then we will end up being much faster than an
  unconditional full compile on the whole project!


   LieGrue,
   strub


   PS: We need to move all our plugins which still use the
  plugin-testing-harness to the maven-invoker-plugin as the test-harness
 is broken
  with sisu. (sisu changed the 'container' field from plexus
 original:
  protected to 'private')

   PPS: how do we maintain the plexus-compiler-utils stuff? This
 contains some
  weirdo bugs which should get fixed...



   - Original Message -
   From: Olivier Lamy ol...@apache.org
   To: Maven Developers List dev@maven.apache.org; Mark
 Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 9:13 AM
   Subject: Re: improving incremental builds

   Hi,
   Sounds good idea trying to improve that.
   My question: on what is based the md5 calculation ?
   If people don't use 'install' but only
 'test'
  (perso I use
   that to
   avoid too much io with jar creation etc..), so in such case we
 cannot
   do md5 calculation on the produced artifact.

   2012/8/26 Mark Struberg strub...@yahoo.de:
Hi David!

So your idea is to find the list of changed modules
 and
then build that list with -amd?
Yes, kind of.

At the moment mvn -amd builds the dependents of the
 _current_
  module. If
   you use my example and change BeanA.java, then run mvn -amd
 from the
  root module
   you will see 

Shade DRP location

2012-08-27 Thread Benson Margulies
I've been thinking about my abortive attempt to deal with multiple
builds colliding over the dependency-reduced-pom.xml. My attempt was
to move the thing into 'target', but that blew up relative pathnames.

Here's another plan: give the thing a uuid-based name, instead. Can
anyone think of a problem with that?

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



Re: improving incremental builds

2012-08-27 Thread Mark Struberg
build1 and build 2 are different modules or different mvn invocations with some 
time inbetween?

Of course we will need to test all plugins to behave incremental like! Means 
the maven-shade-plugin should check itself whether it needs shading or not at 
all.

But the worst thing happening would be that we compile too much. Thats still 
better than a full mvn clean install :)

LieGrue,
strub



- Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc: 
 Sent: Monday, August 27, 2012 5:07 PM
 Subject: Re: improving incremental builds
 
 On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
  We might implement this by storing the list of all activated profiles + all 
 resolved environment properties in a file in target/ somewhere.
  That would be part of a.) in my previous mail to Romain.
 
 How about the situation with shade?
 
 Build 1 runs shade and it replaces the primary build artifact with a shaded 
 one.
 
 Build 2 sees that nothing has changed, but shade doesn't know, and it
 reshades, eating its own output with a ton of messages.
 
 Can I fix this in shade with current technologies?
 
 
 
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 12:24 PM
  Subject: Re: improving incremental builds
 
   +0 for auto detecting changed scenarios. If someone changes a 
 profile or
  the whole pom, then I'd expect he invokes a clean manually.  We 
 have to
  document this expectation of course.
 
  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time 
 with
  developers), which I think is what we try to get away from.
 
  /Anders
 
 
   LieGrue,
   strub
 
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Monday, August 27, 2012 9:57 AM
   Subject: Re: improving incremental builds
 
    I already started tweaking the m-compiler-plugin and 
 found quite
  scary
   issues. There is e.g. MCOMPILER-21 (open since 2005) which 
 prevents
  incremental
   build and would kick in in your scenario.
 
   This is interesting. I've looked a bit at Mojo's JAXB 
 plugin in
  the
   context of detecting stale generated files (i.e. need to 
 re-generate)
   and it's similar to this. It would extremely nice if there 
 would be
  a
   common framework for handling incremental builds.
   In addition to what's been mentioned in the jira (I just 
 browsed it
   quickly), we have cases when includes/excludes change, the 
 sourceDir
   changes, etc which should trigger cleanup and re-compilation.
 
   /Anders
 
 
    I talked about 2 scenarios
 
    a.) all phases = package, e.g. mvn verify, mvn 
 install, ...
  Here we
   have an artifact on the disc and could test for the md5 of 
 them, right?
 
    b.) all phases  package. This is e.g. mvn compile or 
 mvn test.
  In that
   case we don't produce a jar/war/ear/... artifact but only 
 get the
  files on
   the disk linked in MavenProject#getProjectArtifacts()... 
 file(). This
  is the
   case where the maven-compiler-plugin kicks in. I'm 
 currently in the
  process
   of rewriting big parts of it, mainly I introduced
      b.1 a check for project.artifacts/project.testArtifacts 
 .file()
  is a
   local file path .isDirectory() and has files which are newer 
 (actually
  =)
   than the buildStarted timestamp.
      b.2 check whether there are any *.java (sourceincludes) 
 files
  which are
   newer than their class files.
 
    In both cases I now force a FULL recompile of the module!
  Compiling only
   parts produced classes which are actually broken!
 
 
    My approach is the following: compiling a bit too much is 
 better
  than
   missing some files which need compilation. Because the later 
 is exactly
  the
   reason why noone uses mvn compile but always do a mvn clean 
 compile
  nowadays. If
   mvn compile is reliable, then we will end up being much faster 
 than an
   unconditional full compile on the whole project!
 
 
    LieGrue,
    strub
 
 
    PS: We need to move all our plugins which still use the
   plugin-testing-harness to the maven-invoker-plugin as the 
 test-harness
  is broken
   with sisu. (sisu changed the 'container' field from 
 plexus
  original:
   protected to 'private')
 
    PPS: how do we maintain the plexus-compiler-utils stuff? 
 This
  contains some
   weirdo bugs which should get fixed...
 
 
 
    - Original Message -
    From: Olivier Lamy ol...@apache.org
    To: Maven 

Re: [VOTE] Release Maven Surefire version 2.12.3

2012-08-27 Thread Hervé BOUTEMY
+1

Hervé

Le samedi 25 août 2012 00:11:55 Kristian Rosenvold a écrit :
 Hi,
 
 We solved 11 issues:
 https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10541version=18
 704
 
 2.12.3 should be slightly faster than previous versions, but don't
 expect too much.
 
 There are still lots of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truemode=hidejql
 Query=project+%3D+SUREFIRE+AND+resolution+%3D+Unresolved+ORDER+BY+updated+DE
 SC
 
 Staging repo:
 https://repository.apache.org/content/repositories/maven-011/
 
 Staging site: (Sync pending)
  http://maven.apache.org/surefire/staging/ (Links to sub-sites work
 when transfered to production)
 
   http://maven.apache.org/plugins/maven-failsafe-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-reports-plugin-2.12.3/
 
 
 
 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html
 
 Vote open for 72 hours.
 
 [ ] +1
 [ ] +0
 [ ] -1
 
 
 And here's my +1
 
 Kristian
 
 -
 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



Re: improving incremental builds

2012-08-27 Thread Benson Margulies
On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
 build1 and build 2 are different modules or different mvn invocations with 
 some time inbetween?

 Of course we will need to test all plugins to behave incremental like! Means 
 the maven-shade-plugin should check itself whether it needs shading or not at 
 all.

Two builds, separated in time, of exactly the same module.

The problem here is that the jar plugin has already decided not to
rebuild the jar by the time the shade plugin gets there, and I have no
idea how to make the shade plugin play along.



 But the worst thing happening would be that we compile too much. Thats still 
 better than a full mvn clean install :)

 LieGrue,
 strub



 - Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 5:07 PM
 Subject: Re: improving incremental builds

 On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
  We might implement this by storing the list of all activated profiles + all
 resolved environment properties in a file in target/ somewhere.
  That would be part of a.) in my previous mail to Romain.

 How about the situation with shade?

 Build 1 runs shade and it replaces the primary build artifact with a shaded 
 one.

 Build 2 sees that nothing has changed, but shade doesn't know, and it
 reshades, eating its own output with a ton of messages.

 Can I fix this in shade with current technologies?




  LieGrue,
  strub



  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 12:24 PM
  Subject: Re: improving incremental builds

   +0 for auto detecting changed scenarios. If someone changes a
 profile or
  the whole pom, then I'd expect he invokes a clean manually.  We
 have to
  document this expectation of course.

  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time
 with
  developers), which I think is what we try to get away from.

  /Anders


   LieGrue,
   strub




   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Monday, August 27, 2012 9:57 AM
   Subject: Re: improving incremental builds

I already started tweaking the m-compiler-plugin and
 found quite
  scary
   issues. There is e.g. MCOMPILER-21 (open since 2005) which
 prevents
  incremental
   build and would kick in in your scenario.

   This is interesting. I've looked a bit at Mojo's JAXB
 plugin in
  the
   context of detecting stale generated files (i.e. need to
 re-generate)
   and it's similar to this. It would extremely nice if there
 would be
  a
   common framework for handling incremental builds.
   In addition to what's been mentioned in the jira (I just
 browsed it
   quickly), we have cases when includes/excludes change, the
 sourceDir
   changes, etc which should trigger cleanup and re-compilation.

   /Anders


I talked about 2 scenarios

a.) all phases = package, e.g. mvn verify, mvn
 install, ...
  Here we
   have an artifact on the disc and could test for the md5 of
 them, right?

b.) all phases  package. This is e.g. mvn compile or
 mvn test.
  In that
   case we don't produce a jar/war/ear/... artifact but only
 get the
  files on
   the disk linked in MavenProject#getProjectArtifacts()...
 file(). This
  is the
   case where the maven-compiler-plugin kicks in. I'm
 currently in the
  process
   of rewriting big parts of it, mainly I introduced
  b.1 a check for project.artifacts/project.testArtifacts
 .file()
  is a
   local file path .isDirectory() and has files which are newer
 (actually
  =)
   than the buildStarted timestamp.
  b.2 check whether there are any *.java (sourceincludes)
 files
  which are
   newer than their class files.

In both cases I now force a FULL recompile of the module!
  Compiling only
   parts produced classes which are actually broken!


My approach is the following: compiling a bit too much is
 better
  than
   missing some files which need compilation. Because the later
 is exactly
  the
   reason why noone uses mvn compile but always do a mvn clean
 compile
  nowadays. If
   mvn compile is reliable, then we will end up being much faster
 than an
   unconditional full compile on the whole project!


LieGrue,
strub


PS: We need to move all our plugins which still use the
   plugin-testing-harness to the maven-invoker-plugin as the
 test-harness
  is broken
   with sisu. (sisu changed the 'container' field from
 

RE: improving incremental builds

2012-08-27 Thread Martin Gainty

Benson

any chance of *forcing* the second iteration to re-jar with 
forceCreationtrue/forceCreation
 http://maven.apache.org/plugins/maven-jar-plugin/jar-mojo.html#forceCreation

Martin 
__ 
..place long-winded disclaimer here..


 Date: Mon, 27 Aug 2012 13:09:59 -0400
 Subject: Re: improving incremental builds
 From: bimargul...@gmail.com
 To: dev@maven.apache.org; strub...@yahoo.de
 
 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
  build1 and build 2 are different modules or different mvn invocations with 
  some time inbetween?
 
  Of course we will need to test all plugins to behave incremental like! 
  Means the maven-shade-plugin should check itself whether it needs shading 
  or not at all.
 
 Two builds, separated in time, of exactly the same module.
 
 The problem here is that the jar plugin has already decided not to
 rebuild the jar by the time the shade plugin gets there, and I have no
 idea how to make the shade plugin play along.
 
 
 
  But the worst thing happening would be that we compile too much. Thats 
  still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
  strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
   We might implement this by storing the list of all activated profiles + 
  all
  resolved environment properties in a file in target/ somewhere.
   That would be part of a.) in my previous mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary build artifact with a 
  shaded one.
 
  Build 2 sees that nothing has changed, but shade doesn't know, and it
  reshades, eating its own output with a ton of messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
+0 for auto detecting changed scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm thinking it would be awesome (but
   maybe difficult) if plugins could determine if its configuration has
   changed, and then handle this automatically. If there are to many
   cases where a manual clean build is required, I believe people will
   continue to do mvn clean install (which I see all the time
  with
   developers), which I think is what we try to get away from.
 
   /Anders
 
 
LieGrue,
strub
 
 
 
 
- Original Message -
From: Anders Hammar and...@hammar.net
To: Maven Developers List dev@maven.apache.org
Cc:
Sent: Monday, August 27, 2012 9:57 AM
Subject: Re: improving incremental builds
 
 I already started tweaking the m-compiler-plugin and
  found quite
   scary
issues. There is e.g. MCOMPILER-21 (open since 2005) which
  prevents
   incremental
build and would kick in in your scenario.
 
This is interesting. I've looked a bit at Mojo's JAXB
  plugin in
   the
context of detecting stale generated files (i.e. need to
  re-generate)
and it's similar to this. It would extremely nice if there
  would be
   a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just
  browsed it
quickly), we have cases when includes/excludes change, the
  sourceDir
changes, etc which should trigger cleanup and re-compilation.
 
/Anders
 
 
 I talked about 2 scenarios
 
 a.) all phases = package, e.g. mvn verify, mvn
  install, ...
   Here we
have an artifact on the disc and could test for the md5 of
  them, right?
 
 b.) all phases  package. This is e.g. mvn compile or
  mvn test.
   In that
case we don't produce a jar/war/ear/... artifact but only
  get the
   files on
the disk linked in MavenProject#getProjectArtifacts()...
  file(). This
   is the
case where the maven-compiler-plugin kicks in. I'm
  currently in the
   process
of rewriting big parts of it, mainly I introduced
   b.1 a check for project.artifacts/project.testArtifacts
  .file()
   is a
local file path .isDirectory() and has files which are newer
  (actually
   =)
than the buildStarted timestamp.
   b.2 check whether there are any *.java (sourceincludes)
  files
   which are
newer than their class files.
 
 In both cases I now force a FULL recompile of the module!
   Compiling only
parts produced classes which are actually broken!
 
 
 My 

Re: improving incremental builds

2012-08-27 Thread Stephen Connolly
On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:

 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
  build1 and build 2 are different modules or different mvn invocations
 with some time inbetween?
 
  Of course we will need to test all plugins to behave incremental like!
 Means the maven-shade-plugin should check itself whether it needs shading
 or not at all.

 Two builds, separated in time, of exactly the same module.

 The problem here is that the jar plugin has already decided not to
 rebuild the jar by the time the shade plugin gets there, and I have no
 idea how to make the shade plugin play along.


Any chance we can get the jar plugin to inspect some of the artifacts that
it generates into the jar to see if they are consistent with what the jar
plugin produces...

I'm looking at you META-INF/MANIFEST.MF

I.O.W. if the

Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)

is switched to

Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)

Then the Maven JAR plugin can infer that the timestamp check is pointless,
and force regen

-Stephen




 
  But the worst thing happening would be that we compile too much. Thats
 still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de
 wrote:
   We might implement this by storing the list of all activated profiles
 + all
  resolved environment properties in a file in target/ somewhere.
   That would be part of a.) in my previous mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary build artifact with a
 shaded one.
 
  Build 2 sees that nothing has changed, but shade doesn't know, and it
  reshades, eating its own output with a ton of messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
+0 for auto detecting changed scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm thinking it would be awesome (but
   maybe difficult) if plugins could determine if its configuration has
   changed, and then handle this automatically. If there are to many
   cases where a manual clean build is required, I believe people will
   continue to do mvn clean install (which I see all the time
  with
   developers), which I think is what we try to get away from.
 
   /Anders
 
 
LieGrue,
strub
 
 
 
 
- Original Message -
From: Anders Hammar and...@hammar.net
To: Maven Developers List dev@maven.apache.org
Cc:
Sent: Monday, August 27, 2012 9:57 AM
Subject: Re: improving incremental builds
 
 I already started tweaking the m-compiler-plugin and
  found quite
   scary
issues. There is e.g. MCOMPILER-21 (open since 2005) which
  prevents
   incremental
build and would kick in in your scenario.
 
This is interesting. I've looked a bit at Mojo's JAXB
  plugin in
   the
context of detecting stale generated files (i.e. need to
  re-generate)
and it's similar to this. It would extremely nice if there
  would be
   a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just
  browsed it
quickly), we have cases when includes/excludes change, the
  sourceDir
changes, etc which should trigger cleanup and re-compilation.
 
/Anders
 
 
 I talked about 2 scenarios
 
 a.) all phases = package, e.g. mvn verify, mvn
  install, ...
   Here we
have an artifact on the disc and could test for the md5 of
  them, right?
 
 b.) all phases  package. This is e.g. mvn compile or
  mvn test.
   In that
case we don't produce a jar/war/ear/... artifact but only
  get the
   files on
the disk linked in MavenProject#getProjectArtifacts()...
  file(). This
   is the
case where the maven-compiler-plugin kicks in. I'm
  currently in the
   process
of rewriting big parts of it, mainly I introduced
   b.1 a check for project.artifacts/project.testArtifacts
  .file()
   is a
local file path .isDirectory() and has files which are newer
  (actually
   =)
than the buildStarted timestamp.
   b.2 check whether there are any *.java (sourceincludes)
  files
   which are
newer than their class files.
 
 In both cases I now force a FULL recompile of the module!
   Compiling 

Re: improving incremental builds

2012-08-27 Thread Stephen Connolly
On 27 August 2012 19:10, Stephen Connolly
stephen.alan.conno...@gmail.comwrote:

 On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:

 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de
 wrote:
  build1 and build 2 are different modules or different mvn invocations
 with some time inbetween?
 
  Of course we will need to test all plugins to behave incremental like!
 Means the maven-shade-plugin should check itself whether it needs shading
 or not at all.

 Two builds, separated in time, of exactly the same module.

 The problem here is that the jar plugin has already decided not to
 rebuild the jar by the time the shade plugin gets there, and I have no
 idea how to make the shade plugin play along.


 Any chance we can get the jar plugin to inspect some of the artifacts that
 it generates into the jar to see if they are consistent with what the jar
 plugin produces...

 I'm looking at you META-INF/MANIFEST.MF

 I.O.W. if the

 Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)

 is switched to

 Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)

 Then the Maven JAR plugin can infer that the timestamp check is pointless,
 and force regen


And people customizing that header can just live with the issues that
creates.


 -Stephen




 
  But the worst thing happening would be that we compile too much. Thats
 still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de
 wrote:
   We might implement this by storing the list of all activated
 profiles + all
  resolved environment properties in a file in target/ somewhere.
   That would be part of a.) in my previous mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary build artifact with a
 shaded one.
 
  Build 2 sees that nothing has changed, but shade doesn't know, and it
  reshades, eating its own output with a ton of messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
+0 for auto detecting changed scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm thinking it would be awesome (but
   maybe difficult) if plugins could determine if its configuration has
   changed, and then handle this automatically. If there are to many
   cases where a manual clean build is required, I believe people will
   continue to do mvn clean install (which I see all the time
  with
   developers), which I think is what we try to get away from.
 
   /Anders
 
 
LieGrue,
strub
 
 
 
 
- Original Message -
From: Anders Hammar and...@hammar.net
To: Maven Developers List dev@maven.apache.org
Cc:
Sent: Monday, August 27, 2012 9:57 AM
Subject: Re: improving incremental builds
 
 I already started tweaking the m-compiler-plugin and
  found quite
   scary
issues. There is e.g. MCOMPILER-21 (open since 2005) which
  prevents
   incremental
build and would kick in in your scenario.
 
This is interesting. I've looked a bit at Mojo's JAXB
  plugin in
   the
context of detecting stale generated files (i.e. need to
  re-generate)
and it's similar to this. It would extremely nice if there
  would be
   a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just
  browsed it
quickly), we have cases when includes/excludes change, the
  sourceDir
changes, etc which should trigger cleanup and re-compilation.
 
/Anders
 
 
 I talked about 2 scenarios
 
 a.) all phases = package, e.g. mvn verify, mvn
  install, ...
   Here we
have an artifact on the disc and could test for the md5 of
  them, right?
 
 b.) all phases  package. This is e.g. mvn compile or
  mvn test.
   In that
case we don't produce a jar/war/ear/... artifact but only
  get the
   files on
the disk linked in MavenProject#getProjectArtifacts()...
  file(). This
   is the
case where the maven-compiler-plugin kicks in. I'm
  currently in the
   process
of rewriting big parts of it, mainly I introduced
   b.1 a check for project.artifacts/project.testArtifacts
  .file()
   is a
local file path .isDirectory() and has files which are newer
  (actually
   =)
than the buildStarted timestamp.
   b.2 check 

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
Not sure if I get the problem.

The timestamp of the input files is still  than the timestamp of the jar file. 
Regardless if it later got modified by the shade-plugin or not.

LieGrue,
strub





 From: Stephen Connolly stephen.alan.conno...@gmail.com
To: Maven Developers List dev@maven.apache.org 
Cc: Mark Struberg strub...@yahoo.de 
Sent: Monday, August 27, 2012 8:11 PM
Subject: Re: improving incremental builds
 

On 27 August 2012 19:10, Stephen Connolly stephen.alan.conno...@gmail.com 
wrote:

On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:

On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
 build1 and build 2 are different modules or different mvn invocations with 
 some time inbetween?

 Of course we will need to test all plugins to behave incremental like! 
 Means the maven-shade-plugin should check itself whether it needs shading 
 or not at all.

Two builds, separated in time, of exactly the same module.

The problem here is that the jar plugin has already decided not to
rebuild the jar by the time the shade plugin gets there, and I have no
idea how to make the shade plugin play along.



Any chance we can get the jar plugin to inspect some of the artifacts that it 
generates into the jar to see if they are consistent with what the jar plugin 
produces...


I'm looking at you META-INF/MANIFEST.MF


I.O.W. if the 


Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)


is switched to 


Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)


Then the Maven JAR plugin can infer that the timestamp check is pointless, 
and force regen



And people customizing that header can just live with the issues that creates.
 
-Stephen
 



 But the worst thing happening would be that we compile too much. Thats 
 still better than a full mvn clean install :)

 LieGrue,
 strub



 - Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 5:07 PM
 Subject: Re: improving incremental builds

 On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
  We might implement this by storing the list of all activated profiles + 
 all
 resolved environment properties in a file in target/ somewhere.
  That would be part of a.) in my previous mail to Romain.

 How about the situation with shade?

 Build 1 runs shade and it replaces the primary build artifact with a 
 shaded one.

 Build 2 sees that nothing has changed, but shade doesn't know, and it
 reshades, eating its own output with a ton of messages.

 Can I fix this in shade with current technologies?




  LieGrue,
  strub



  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 12:24 PM
  Subject: Re: improving incremental builds

   +0 for auto detecting changed scenarios. If someone changes a
 profile or
  the whole pom, then I'd expect he invokes a clean manually.  We
 have to
  document this expectation of course.

  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time
 with
  developers), which I think is what we try to get away from.

  /Anders


   LieGrue,
   strub




   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Monday, August 27, 2012 9:57 AM
   Subject: Re: improving incremental builds

    I already started tweaking the m-compiler-plugin and
 found quite
  scary
   issues. There is e.g. MCOMPILER-21 (open since 2005) which
 prevents
  incremental
   build and would kick in in your scenario.

   This is interesting. I've looked a bit at Mojo's JAXB
 plugin in
  the
   context of detecting stale generated files (i.e. need to
 re-generate)
   and it's similar to this. It would extremely nice if there
 would be
  a
   common framework for handling incremental builds.
   In addition to what's been mentioned in the jira (I just
 browsed it
   quickly), we have cases when includes/excludes change, the
 sourceDir
   changes, etc which should trigger cleanup and re-compilation.

   /Anders


    I talked about 2 scenarios

    a.) all phases = package, e.g. mvn verify, mvn
 install, ...
  Here we
   have an artifact on the disc and could test for the md5 of
 them, right?

    b.) all phases  package. This is e.g. mvn compile or
 mvn test.
  In that
   case we don't produce a jar/war/ear/... artifact but only
 get the
  files on
   the disk linked in MavenProject#getProjectArtifacts()...
 file(). This
  is the
   case where the 

Re: improving incremental builds

2012-08-27 Thread Benson Margulies
On Mon, Aug 27, 2012 at 1:27 PM, Martin Gainty mgai...@hotmail.com wrote:

 Benson

 any chance of *forcing* the second iteration to re-jar with 
 forceCreationtrue/forceCreation
  http://maven.apache.org/plugins/maven-jar-plugin/jar-mojo.html#forceCreation

Yes, in my personal projects. That does not solve the real problem, in
my opinion, which is that somehow the core should allow these plugins
to communicate and 'just get it right'. It's complex -- changes to
dependencies that require re-shading would need to trigger re-jarring.



 Martin
 __
 ..place long-winded disclaimer here..


 Date: Mon, 27 Aug 2012 13:09:59 -0400
 Subject: Re: improving incremental builds
 From: bimargul...@gmail.com
 To: dev@maven.apache.org; strub...@yahoo.de

 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
  build1 and build 2 are different modules or different mvn invocations with 
  some time inbetween?
 
  Of course we will need to test all plugins to behave incremental like! 
  Means the maven-shade-plugin should check itself whether it needs shading 
  or not at all.

 Two builds, separated in time, of exactly the same module.

 The problem here is that the jar plugin has already decided not to
 rebuild the jar by the time the shade plugin gets there, and I have no
 idea how to make the shade plugin play along.


 
  But the worst thing happening would be that we compile too much. Thats 
  still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
  strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de wrote:
   We might implement this by storing the list of all activated profiles + 
  all
  resolved environment properties in a file in target/ somewhere.
   That would be part of a.) in my previous mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary build artifact with a 
  shaded one.
 
  Build 2 sees that nothing has changed, but shade doesn't know, and it
  reshades, eating its own output with a ton of messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
+0 for auto detecting changed scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm thinking it would be awesome (but
   maybe difficult) if plugins could determine if its configuration has
   changed, and then handle this automatically. If there are to many
   cases where a manual clean build is required, I believe people will
   continue to do mvn clean install (which I see all the time
  with
   developers), which I think is what we try to get away from.
 
   /Anders
 
 
LieGrue,
strub
 
 
 
 
- Original Message -
From: Anders Hammar and...@hammar.net
To: Maven Developers List dev@maven.apache.org
Cc:
Sent: Monday, August 27, 2012 9:57 AM
Subject: Re: improving incremental builds
 
 I already started tweaking the m-compiler-plugin and
  found quite
   scary
issues. There is e.g. MCOMPILER-21 (open since 2005) which
  prevents
   incremental
build and would kick in in your scenario.
 
This is interesting. I've looked a bit at Mojo's JAXB
  plugin in
   the
context of detecting stale generated files (i.e. need to
  re-generate)
and it's similar to this. It would extremely nice if there
  would be
   a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just
  browsed it
quickly), we have cases when includes/excludes change, the
  sourceDir
changes, etc which should trigger cleanup and re-compilation.
 
/Anders
 
 
 I talked about 2 scenarios
 
 a.) all phases = package, e.g. mvn verify, mvn
  install, ...
   Here we
have an artifact on the disc and could test for the md5 of
  them, right?
 
 b.) all phases  package. This is e.g. mvn compile or
  mvn test.
   In that
case we don't produce a jar/war/ear/... artifact but only
  get the
   files on
the disk linked in MavenProject#getProjectArtifacts()...
  file(). This
   is the
case where the maven-compiler-plugin kicks in. I'm
  currently in the
   process
of rewriting big parts of it, mainly I introduced
   b.1 a check for project.artifacts/project.testArtifacts
  .file()
   is a
local file path 

Re: [VOTE] Maven Skins parent 7 and Maven Fluido skin 1.3.0

2012-08-27 Thread Mirko Friedenhagen
+1 (non-binding). Tested this with one of my multi-module projects, looks good.

Regards Mirko

On Mon, Aug 27, 2012 at 3:13 PM, Olivier Lamy ol...@apache.org wrote:
 Hi,

 We solved 10 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11430styleName=Htmlversion=18713

 Staging repo:
 https://repository.apache.org/content/repositories/maven-015/

 Staging site:
 http://maven.apache.org/skins/maven-fluido-skin-1.3.0/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

 --
 Olivier Lamy
 Talend: http://coders.talend.com
 http://twitter.com/olamy | http://linkedin.com/in/olamy

 -
 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



Re: [VOTE] Maven Skins parent 7 and Maven Fluido skin 1.3.0

2012-08-27 Thread Tony Chemit
On Mon, 27 Aug 2012 15:13:21 +0200
Olivier Lamy ol...@apache.org wrote:

+1 (none binding),

works fine to me.

well done guys,

tony.

 Hi,
 
 We solved 10 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11430styleName=Htmlversion=18713
 
 Staging repo:
 https://repository.apache.org/content/repositories/maven-015/
 
 Staging site:
 http://maven.apache.org/skins/maven-fluido-skin-1.3.0/
 
 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html
 
 Vote open for 72 hours.
 
 [ ] +1
 [ ] +0
 [ ] -1
 



-- 
Tony Chemit

tél: +33 (0) 2 40 50 29 28
email: che...@codelutin.com
http://www.codelutin.com

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



Re: [VOTE] Maven Skins parent 7 and Maven Fluido skin 1.3.0

2012-08-27 Thread Robert Scholte

+1 and thanks for the great teamwork!

Robert

Op Mon, 27 Aug 2012 21:36:20 +0200 schreef Tony Chemit  
che...@codelutin.com:



On Mon, 27 Aug 2012 15:13:21 +0200
Olivier Lamy ol...@apache.org wrote:

+1 (none binding),

works fine to me.

well done guys,

tony.


Hi,

We solved 10 issues:
http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11430styleName=Htmlversion=18713

Staging repo:
https://repository.apache.org/content/repositories/maven-015/

Staging site:
http://maven.apache.org/skins/maven-fluido-skin-1.3.0/

Guide to testing staged releases:
http://maven.apache.org/guides/development/guide-testing-releases.html

Vote open for 72 hours.

[ ] +1
[ ] +0
[ ] -1






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



Re: [VOTE] Release Maven Surefire version 2.12.3

2012-08-27 Thread Mirko Friedenhagen
+1 (non-binding)

Regards Mirko


On Mon, Aug 27, 2012 at 6:57 PM, Hervé BOUTEMY herve.bout...@free.fr wrote:
 +1

 Hervé

 Le samedi 25 août 2012 00:11:55 Kristian Rosenvold a écrit :
 Hi,

 We solved 11 issues:
 https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10541version=18
 704

 2.12.3 should be slightly faster than previous versions, but don't
 expect too much.

 There are still lots of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truemode=hidejql
 Query=project+%3D+SUREFIRE+AND+resolution+%3D+Unresolved+ORDER+BY+updated+DE
 SC

 Staging repo:
 https://repository.apache.org/content/repositories/maven-011/

 Staging site: (Sync pending)
  http://maven.apache.org/surefire/staging/ (Links to sub-sites work
 when transfered to production)

   http://maven.apache.org/plugins/maven-failsafe-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-plugin-2.12.3/
   http://maven.apache.org/plugins/maven-surefire-reports-plugin-2.12.3/



 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1


 And here's my +1

 Kristian

 -
 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



Re: improving incremental builds

2012-08-27 Thread Stephen Connolly
The issue (for benson) is when the shade plugin modifies after the class
files have changed... the jar plugin will currently skip recreating the
jar, and he has no way of knowing if the jar file has been shaded or
not the solution is to have the manifest.mf include an entry that
indicates created by shade, so that shade can safely skip

On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:

 Not sure if I get the problem.

 The timestamp of the input files is still  than the timestamp of the jar
 file. Regardless if it later got modified by the shade-plugin or not.

 LieGrue,
 strub




 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 To: Maven Developers List dev@maven.apache.org
 Cc: Mark Struberg strub...@yahoo.de
 Sent: Monday, August 27, 2012 8:11 PM
 Subject: Re: improving incremental builds
 
 
 On 27 August 2012 19:10, Stephen Connolly 
 stephen.alan.conno...@gmail.com wrote:
 
 On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:
 
 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de
 wrote:
  build1 and build 2 are different modules or different mvn invocations
 with some time inbetween?
 
  Of course we will need to test all plugins to behave incremental
 like! Means the maven-shade-plugin should check itself whether it needs
 shading or not at all.
 
 Two builds, separated in time, of exactly the same module.
 
 The problem here is that the jar plugin has already decided not to
 rebuild the jar by the time the shade plugin gets there, and I have no
 idea how to make the shade plugin play along.
 
 
 
 Any chance we can get the jar plugin to inspect some of the artifacts
 that it generates into the jar to see if they are consistent with what the
 jar plugin produces...
 
 
 I'm looking at you META-INF/MANIFEST.MF
 
 
 I.O.W. if the
 
 
 Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)
 
 
 is switched to
 
 
 Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)
 
 
 Then the Maven JAR plugin can infer that the timestamp check is
 pointless, and force regen
 
 
 
 And people customizing that header can just live with the issues that
 creates.
 
 -Stephen
 
 
 
 
  But the worst thing happening would be that we compile too much.
 Thats still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de
 wrote:
   We might implement this by storing the list of all activated
 profiles + all
  resolved environment properties in a file in target/ somewhere.
   That would be part of a.) in my previous mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary build artifact with a
 shaded one.
 
  Build 2 sees that nothing has changed, but shade doesn't know, and it
  reshades, eating its own output with a ton of messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
+0 for auto detecting changed scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm thinking it would be awesome
 (but
   maybe difficult) if plugins could determine if its configuration
 has
   changed, and then handle this automatically. If there are to many
   cases where a manual clean build is required, I believe people
 will
   continue to do mvn clean install (which I see all the time
  with
   developers), which I think is what we try to get away from.
 
   /Anders
 
 
LieGrue,
strub
 
 
 
 
- Original Message -
From: Anders Hammar and...@hammar.net
To: Maven Developers List dev@maven.apache.org
Cc:
Sent: Monday, August 27, 2012 9:57 AM
Subject: Re: improving incremental builds
 
 I already started tweaking the m-compiler-plugin and
  found quite
   scary
issues. There is e.g. MCOMPILER-21 (open since 2005) which
  prevents
   incremental
build and would kick in in your scenario.
 
This is interesting. I've looked a bit at Mojo's JAXB
  plugin in
   the
context of detecting stale generated files (i.e. need to
  re-generate)
and it's similar to this. It would extremely nice if there
  would be
   a
common framework for handling incremental builds.
In addition to what's been mentioned in the jira (I just
  browsed it
quickly), we have cases when includes/excludes 

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
the shade plugin would just need to store a local status file with the md5 of 
the created result.
Or add the info to the manifest as you proposed.

The main point is that this should be up to the maven-shade-plugin, as it is 
the only one who knows when to repeat this step.

LieGrue,
strub





 From: Stephen Connolly stephen.alan.conno...@gmail.com
To: Maven Developers List dev@maven.apache.org; Mark Struberg 
strub...@yahoo.de 
Sent: Monday, August 27, 2012 9:53 PM
Subject: Re: improving incremental builds
 

The issue (for benson) is when the shade plugin modifies after the class files 
have changed... the jar plugin will currently skip recreating the jar, and he 
has no way of knowing if the jar file has been shaded or not the solution 
is to have the manifest.mf include an entry that indicates created by shade, 
so that shade can safely skip


On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:

Not sure if I get the problem.

The timestamp of the input files is still  than the timestamp of the jar 
file. Regardless if it later got modified by the shade-plugin or not.

LieGrue,
strub





 From: Stephen Connolly stephen.alan.conno...@gmail.com

To: Maven Developers List dev@maven.apache.org
Cc: Mark Struberg strub...@yahoo.de
Sent: Monday, August 27, 2012 8:11 PM

Subject: Re: improving incremental builds


On 27 August 2012 19:10, Stephen Connolly stephen.alan.conno...@gmail.com 
wrote:

On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:

On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
 build1 and build 2 are different modules or different mvn invocations 
 with some time inbetween?

 Of course we will need to test all plugins to behave incremental like! 
 Means the maven-shade-plugin should check itself whether it needs 
 shading or not at all.

Two builds, separated in time, of exactly the same module.

The problem here is that the jar plugin has already decided not to
rebuild the jar by the time the shade plugin gets there, and I have no
idea how to make the shade plugin play along.



Any chance we can get the jar plugin to inspect some of the artifacts that 
it generates into the jar to see if they are consistent with what the jar 
plugin produces...


I'm looking at you META-INF/MANIFEST.MF


I.O.W. if the 


Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)


is switched to 


Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)


Then the Maven JAR plugin can infer that the timestamp check is pointless, 
and force regen



And people customizing that header can just live with the issues that 
creates.
 
-Stephen
 



 But the worst thing happening would be that we compile too much. Thats 
 still better than a full mvn clean install :)

 LieGrue,
 strub



 - Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 5:07 PM
 Subject: Re: improving incremental builds

 On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de 
 wrote:
  We might implement this by storing the list of all activated profiles 
 + all
 resolved environment properties in a file in target/ somewhere.
  That would be part of a.) in my previous mail to Romain.

 How about the situation with shade?

 Build 1 runs shade and it replaces the primary build artifact with a 
 shaded one.

 Build 2 sees that nothing has changed, but shade doesn't know, and it
 reshades, eating its own output with a ton of messages.

 Can I fix this in shade with current technologies?




  LieGrue,
  strub



  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 12:24 PM
  Subject: Re: improving incremental builds

   +0 for auto detecting changed scenarios. If someone changes a
 profile or
  the whole pom, then I'd expect he invokes a clean manually.  We
 have to
  document this expectation of course.

  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time
 with
  developers), which I think is what we try to get away from.

  /Anders


   LieGrue,
   strub




   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   Sent: Monday, August 27, 2012 9:57 AM
   Subject: Re: improving incremental builds

    I already started tweaking the m-compiler-plugin and
 found quite
  scary
   issues. There is e.g. MCOMPILER-21 (open since 2005) which
 prevents
  incremental
   build and would kick in in 

Re: [VOTE] Release Maven Project Info Reports Plugin version 2.5.1

2012-08-27 Thread Mirko Friedenhagen
+1 (non-binding) tested on one multi-module project.

Regards Mirko

On Sun, Aug 26, 2012 at 10:11 PM, Hervé BOUTEMY herve.bout...@free.fr wrote:
 Hi,

 We solved 5 issues:
 http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11142version=18715styleName=Html

 There are still a couple of issues left in JIRA:
 http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=truepid=11142status=1

 Staging repo:
 https://repository.apache.org/content/repositories/maven-013/
 https://repository.apache.org/content/repositories/maven-013/org/apache/maven/plugins/maven-
 project-info-reports-plugin/2.5.1/maven-project-info-reports-plugin-2.5.1-
 source-release.zip

 Staging site: (sync pending)
 http://maven.apache.org/plugins/maven-project-info-reports-plugin-2.5.1/

 Guide to testing staged releases:
 http://maven.apache.org/guides/development/guide-testing-releases.html

 Vote open for 72 hours.

 [ ] +1
 [ ] +0
 [ ] -1

 -
 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



Re: improving incremental builds

2012-08-27 Thread Mark Struberg
I've wrote up some stuff in our Wiki:

https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds

Feel free to add more info/ideas.

LieGrue,
strub

PS: a small test app can be found on https://github.com/struberg/maventest
Try this with the latest compiler plugin 2.6-SNAPSHOT from trunk



- Original Message -
 From: Mark Struberg strub...@yahoo.de
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Monday, August 27, 2012 10:04 PM
 Subject: Re: improving incremental builds
 
t he shade plugin would just need to store a local status file with the md5 of 
 the created result.
 Or add the info to the manifest as you proposed.
 
 The main point is that this should be up to the maven-shade-plugin, as it is 
 the 
 only one who knows when to repeat this step.
 
 LieGrue,
 strub
 
 
 
 
 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de 
 Sent: Monday, August 27, 2012 9:53 PM
 Subject: Re: improving incremental builds
 
 
 The issue (for benson) is when the shade plugin modifies after the class 
 files have changed... the jar plugin will currently skip recreating the jar, 
 and 
 he has no way of knowing if the jar file has been shaded or not the 
 solution 
 is to have the manifest.mf include an entry that indicates created by shade, 
 so 
 that shade can safely skip
 
 
 On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:
 
 Not sure if I get the problem.
 
 The timestamp of the input files is still  than the timestamp of the 
 jar file. Regardless if it later got modified by the shade-plugin or not.
 
 LieGrue,
 strub
 
 
 
 
 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 
 To: Maven Developers List dev@maven.apache.org
 Cc: Mark Struberg strub...@yahoo.de
 Sent: Monday, August 27, 2012 8:11 PM
 
 Subject: Re: improving incremental builds
 
 
 On 27 August 2012 19:10, Stephen Connolly 
 stephen.alan.conno...@gmail.com wrote:
 
 On 27 August 2012 18:09, Benson Margulies 
 bimargul...@gmail.com wrote:
 
 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg 
 strub...@yahoo.de wrote:
  build1 and build 2 are different modules or different 
 mvn invocations with some time inbetween?
 
  Of course we will need to test all plugins to behave 
 incremental like! Means the maven-shade-plugin should check itself whether it 
 needs shading or not at all.
 
 Two builds, separated in time, of exactly the same module.
 
 The problem here is that the jar plugin has already decided 
 not to
 rebuild the jar by the time the shade plugin gets there, and 
 I have no
 idea how to make the shade plugin play along.
 
 
 
 Any chance we can get the jar plugin to inspect some of the 
 artifacts that it generates into the jar to see if they are consistent with 
 what 
 the jar plugin produces...
 
 
 I'm looking at you META-INF/MANIFEST.MF
 
 
 I.O.W. if the 
 
 
 Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)
 
 
 is switched to 
 
 
 Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)
 
 
 Then the Maven JAR plugin can infer that the timestamp check is 
 pointless, and force regen
 
 
 
 And people customizing that header can just live with the issues 
 that creates.
  
 -Stephen
  
 
 
 
  But the worst thing happening would be that we compile 
 too much. Thats still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies 
 bimargul...@gmail.com
  To: Maven Developers List 
 dev@maven.apache.org; Mark Struberg strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg 
 strub...@yahoo.de wrote:
   We might implement this by storing the list of 
 all activated profiles + all
  resolved environment properties in a file in 
 target/ somewhere.
   That would be part of a.) in my previous mail 
 to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary 
 build artifact with a shaded one.
 
  Build 2 sees that nothing has changed, but shade 
 doesn't know, and it
  reshades, eating its own output with a ton of 
 messages.
 
  Can I fix this in shade with current technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar 
 and...@hammar.net
   To: Maven Developers List 
 dev@maven.apache.org; Mark Struberg
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 12:24 PM
   Subject: Re: improving incremental builds
 
    +0 for auto detecting changed 
 scenarios. If someone changes a
  profile or
   the whole pom, then I'd expect he 
 invokes a clean manually.  We
  have to
   document this expectation of course.
 
   What do others think of this? I'm 
 thinking it would be awesome (but
   maybe difficult) if plugins could 
 determine if its configuration has
   changed, and 

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
There are some plugins which should not act incremental by default. Mainly the 
test stuff. People would not like it if they invoke

$ mvn test 

and their test would not run because they already did run some time before and 
no code/dependency changed since.

Thus I propose to introduce 2 new MavenCLI parameters:

$ mvn -i test
-i for 'build Incrementally'

resp xor

$ mvn -ni test
-ni for 'build Non-Incrementally'

Not sure what the default should be though...
From the backward compat point probably -ni

LieGrue,
strub


- Original Message -
 From: Mark Struberg strub...@yahoo.de
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Monday, August 27, 2012 10:33 PM
 Subject: Re: improving incremental builds
 
 I've wrote up some stuff in our Wiki:
 
 https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds
 
 Feel free to add more info/ideas.
 
 LieGrue,
 strub
 
 PS: a small test app can be found on https://github.com/struberg/maventest
 Try this with the latest compiler plugin 2.6-SNAPSHOT from trunk
 
 
 
 - Original Message -
  From: Mark Struberg strub...@yahoo.de
  To: Maven Developers List dev@maven.apache.org
  Cc: 
  Sent: Monday, August 27, 2012 10:04 PM
  Subject: Re: improving incremental builds
 
 t he shade plugin would just need to store a local status file with the md5 
 of 
  the created result.
  Or add the info to the manifest as you proposed.
 
  The main point is that this should be up to the maven-shade-plugin, as it 
 is the 
  only one who knows when to repeat this step.
 
  LieGrue,
  strub
 
 
 
 
  
   From: Stephen Connolly stephen.alan.conno...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
  strub...@yahoo.de 
  Sent: Monday, August 27, 2012 9:53 PM
  Subject: Re: improving incremental builds
 
 
  The issue (for benson) is when the shade plugin modifies after the 
 class 
  files have changed... the jar plugin will currently skip recreating the 
 jar, and 
  he has no way of knowing if the jar file has been shaded or not the 
 solution 
  is to have the manifest.mf include an entry that indicates created by 
 shade, so 
  that shade can safely skip
 
 
  On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:
 
  Not sure if I get the problem.
 
  The timestamp of the input files is still  than the timestamp 
 of the 
  jar file. Regardless if it later got modified by the shade-plugin or not.
 
  LieGrue,
  strub
 
 
 
 
  
   From: Stephen Connolly stephen.alan.conno...@gmail.com
 
  To: Maven Developers List dev@maven.apache.org
  Cc: Mark Struberg strub...@yahoo.de
  Sent: Monday, August 27, 2012 8:11 PM
 
  Subject: Re: improving incremental builds
 
 
  On 27 August 2012 19:10, Stephen Connolly 
  stephen.alan.conno...@gmail.com wrote:
 
  On 27 August 2012 18:09, Benson Margulies 
  bimargul...@gmail.com wrote:
 
  On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg 
  strub...@yahoo.de wrote:
   build1 and build 2 are different modules or 
 different 
  mvn invocations with some time inbetween?
 
   Of course we will need to test all plugins to 
 behave 
  incremental like! Means the maven-shade-plugin should check itself whether 
 it 
  needs shading or not at all.
 
  Two builds, separated in time, of exactly the same 
 module.
 
  The problem here is that the jar plugin has already 
 decided 
  not to
  rebuild the jar by the time the shade plugin gets 
 there, and 
  I have no
  idea how to make the shade plugin play along.
 
 
 
  Any chance we can get the jar plugin to inspect some of the 
 
  artifacts that it generates into the jar to see if they are consistent with 
 what 
  the jar plugin produces...
 
 
  I'm looking at you META-INF/MANIFEST.MF
 
 
  I.O.W. if the 
 
 
  Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)
 
 
  is switched to 
 
 
  Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)
 
 
  Then the Maven JAR plugin can infer that the timestamp 
 check is 
  pointless, and force regen
 
 
 
  And people customizing that header can just live with the 
 issues 
  that creates.
   
  -Stephen
   
 
 
 
   But the worst thing happening would be that we 
 compile 
  too much. Thats still better than a full mvn clean install :)
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Benson Margulies 
  bimargul...@gmail.com
   To: Maven Developers List 
  dev@maven.apache.org; Mark Struberg strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 5:07 PM
   Subject: Re: improving incremental builds
 
   On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg 
 
  strub...@yahoo.de wrote:
    We might implement this by storing the 
 list of 
  all activated profiles + all
   resolved environment properties in a file in 
  target/ somewhere.
    That would be part of a.) in my previous 
 mail 
  to Romain.
 
   How about the situation with shade?
 
   Build 1 runs shade and it replaces the primary 
 
  build 

Re: improving incremental builds

2012-08-27 Thread Benson Margulies
Mark, I don't see how this helps. If the jar plugin hasn't rebuilt the
jar, the shade plugin can't rebuild the jar, even if, for other
reasons, it needs to. It has knowledge that the jar plugin lacks.



On Mon, Aug 27, 2012 at 4:04 PM, Mark Struberg strub...@yahoo.de wrote:
 the shade plugin would just need to store a local status file with the md5 of 
 the created result.
 Or add the info to the manifest as you proposed.

 The main point is that this should be up to the maven-shade-plugin, as it is 
 the only one who knows when to repeat this step.

 LieGrue,
 strub





 From: Stephen Connolly stephen.alan.conno...@gmail.com
To: Maven Developers List dev@maven.apache.org; Mark Struberg 
strub...@yahoo.de
Sent: Monday, August 27, 2012 9:53 PM
Subject: Re: improving incremental builds


The issue (for benson) is when the shade plugin modifies after the class 
files have changed... the jar plugin will currently skip recreating the jar, 
and he has no way of knowing if the jar file has been shaded or not the 
solution is to have the manifest.mf include an entry that indicates created 
by shade, so that shade can safely skip


On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:

Not sure if I get the problem.

The timestamp of the input files is still  than the timestamp of the jar 
file. Regardless if it later got modified by the shade-plugin or not.

LieGrue,
strub





 From: Stephen Connolly stephen.alan.conno...@gmail.com

To: Maven Developers List dev@maven.apache.org
Cc: Mark Struberg strub...@yahoo.de
Sent: Monday, August 27, 2012 8:11 PM

Subject: Re: improving incremental builds


On 27 August 2012 19:10, Stephen Connolly stephen.alan.conno...@gmail.com 
wrote:

On 27 August 2012 18:09, Benson Margulies bimargul...@gmail.com wrote:

On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg strub...@yahoo.de wrote:
 build1 and build 2 are different modules or different mvn invocations 
 with some time inbetween?

 Of course we will need to test all plugins to behave incremental like! 
 Means the maven-shade-plugin should check itself whether it needs 
 shading or not at all.

Two builds, separated in time, of exactly the same module.

The problem here is that the jar plugin has already decided not to
rebuild the jar by the time the shade plugin gets there, and I have no
idea how to make the shade plugin play along.



Any chance we can get the jar plugin to inspect some of the artifacts that 
it generates into the jar to see if they are consistent with what the jar 
plugin produces...


I'm looking at you META-INF/MANIFEST.MF


I.O.W. if the


Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)


is switched to


Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)


Then the Maven JAR plugin can infer that the timestamp check is pointless, 
and force regen



And people customizing that header can just live with the issues that 
creates.

-Stephen




 But the worst thing happening would be that we compile too much. Thats 
 still better than a full mvn clean install :)

 LieGrue,
 strub



 - Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 5:07 PM
 Subject: Re: improving incremental builds

 On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg strub...@yahoo.de 
 wrote:
  We might implement this by storing the list of all activated 
 profiles + all
 resolved environment properties in a file in target/ somewhere.
  That would be part of a.) in my previous mail to Romain.

 How about the situation with shade?

 Build 1 runs shade and it replaces the primary build artifact with a 
 shaded one.

 Build 2 sees that nothing has changed, but shade doesn't know, and it
 reshades, eating its own output with a ton of messages.

 Can I fix this in shade with current technologies?




  LieGrue,
  strub



  - Original Message -
  From: Anders Hammar and...@hammar.net
  To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 12:24 PM
  Subject: Re: improving incremental builds

   +0 for auto detecting changed scenarios. If someone changes a
 profile or
  the whole pom, then I'd expect he invokes a clean manually.  We
 have to
  document this expectation of course.

  What do others think of this? I'm thinking it would be awesome (but
  maybe difficult) if plugins could determine if its configuration has
  changed, and then handle this automatically. If there are to many
  cases where a manual clean build is required, I believe people will
  continue to do mvn clean install (which I see all the time
 with
  developers), which I think is what we try to get away from.

  /Anders


   LieGrue,
   strub




   - Original Message -
   From: Anders Hammar and...@hammar.net
   To: Maven Developers List dev@maven.apache.org
   Cc:
   

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
It's a chain.
The maven-compiler-plugin sees that there are stale sources or changed 
dependencies and compiles the sources. 
The jar plugin sees that there are changed classes which have a newer timestamp 
than the jar file, so it creates the jar again.
The maven-shade-plugin will see the md5 of the jar changed (or detect otherwise 
that this is not a shaded jar) and trigger the shading.

Of course, most of those plugins do not yet support this. But there is nothing 
stopping us from hacking that ;)

LieGrue,
strub




- Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc: 
 Sent: Monday, August 27, 2012 11:13 PM
 Subject: Re: improving incremental builds
 
 Mark, I don't see how this helps. If the jar plugin hasn't rebuilt the
 jar, the shade plugin can't rebuild the jar, even if, for other
 reasons, it needs to. It has knowledge that the jar plugin lacks.
 
 
 
 On Mon, Aug 27, 2012 at 4:04 PM, Mark Struberg strub...@yahoo.de wrote:
  the shade plugin would just need to store a local status file with the md5 
 of the created result.
  Or add the info to the manifest as you proposed.
 
  The main point is that this should be up to the maven-shade-plugin, as it 
 is the only one who knows when to repeat this step.
 
  LieGrue,
  strub
 
 
 
 
 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Sent: Monday, August 27, 2012 9:53 PM
 Subject: Re: improving incremental builds
 
 
 The issue (for benson) is when the shade plugin modifies after the class 
 files have changed... the jar plugin will currently skip recreating the jar, 
 and 
 he has no way of knowing if the jar file has been shaded or not the 
 solution 
 is to have the manifest.mf include an entry that indicates created by shade, 
 so 
 that shade can safely skip
 
 
 On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:
 
 Not sure if I get the problem.
 
 The timestamp of the input files is still  than the timestamp of 
 the jar file. Regardless if it later got modified by the shade-plugin or not.
 
 LieGrue,
 strub
 
 
 
 
 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 
 To: Maven Developers List dev@maven.apache.org
 Cc: Mark Struberg strub...@yahoo.de
 Sent: Monday, August 27, 2012 8:11 PM
 
 Subject: Re: improving incremental builds
 
 
 On 27 August 2012 19:10, Stephen Connolly 
 stephen.alan.conno...@gmail.com wrote:
 
 On 27 August 2012 18:09, Benson Margulies 
 bimargul...@gmail.com wrote:
 
 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg 
 strub...@yahoo.de wrote:
  build1 and build 2 are different modules or 
 different mvn invocations with some time inbetween?
 
  Of course we will need to test all plugins to 
 behave incremental like! Means the maven-shade-plugin should check itself 
 whether it needs shading or not at all.
 
 Two builds, separated in time, of exactly the same 
 module.
 
 The problem here is that the jar plugin has already 
 decided not to
 rebuild the jar by the time the shade plugin gets there, 
 and I have no
 idea how to make the shade plugin play along.
 
 
 
 Any chance we can get the jar plugin to inspect some of the 
 artifacts that it generates into the jar to see if they are consistent with 
 what 
 the jar plugin produces...
 
 
 I'm looking at you META-INF/MANIFEST.MF
 
 
 I.O.W. if the
 
 
 Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)
 
 
 is switched to
 
 
 Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)
 
 
 Then the Maven JAR plugin can infer that the timestamp check 
 is pointless, and force regen
 
 
 
 And people customizing that header can just live with the issues 
 that creates.
 
 -Stephen
 
 
 
 
  But the worst thing happening would be that we 
 compile too much. Thats still better than a full mvn clean install :)
 
  LieGrue,
  strub
 
 
 
  - Original Message -
  From: Benson Margulies 
 bimargul...@gmail.com
  To: Maven Developers List 
 dev@maven.apache.org; Mark Struberg strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg 
 strub...@yahoo.de wrote:
   We might implement this by storing the 
 list of all activated profiles + all
  resolved environment properties in a file in 
 target/ somewhere.
   That would be part of a.) in my previous 
 mail to Romain.
 
  How about the situation with shade?
 
  Build 1 runs shade and it replaces the primary 
 build artifact with a shaded one.
 
  Build 2 sees that nothing has changed, but 
 shade doesn't know, and it
  reshades, eating its own output with a ton of 
 messages.
 
  Can I fix this in shade with current 
 technologies?
 
 
 
 
   LieGrue,
   strub
 
 
 
   - Original Message -
   From: Anders Hammar 
 

Re: improving incremental builds

2012-08-27 Thread Benson Margulies
On Mon, Aug 27, 2012 at 5:56 PM, Mark Struberg strub...@yahoo.de wrote:
 It's a chain.
 The maven-compiler-plugin sees that there are stale sources or changed 
 dependencies and compiles the sources.
 The jar plugin sees that there are changed classes which have a newer 
 timestamp than the jar file, so it creates the jar again.
 The maven-shade-plugin will see the md5 of the jar changed (or detect 
 otherwise that this is not a shaded jar) and trigger the shading.

Not good enough. Let me describe the failure mode.

No sources have changed. So the compiler plugin doesn't recompile.

So, no .class files have changed, so the jar plugin doesn't jar.

However, a dependency *has* changed, so the shade plugin needs a clean
input. But it doesn't have a clean input, since the only thing around
is the jar it shaded last time around.

The only fix I can see is if the shade plugin keeps around a copy of
the original unshaded jar when it shades, and uses that to redo the
shade when all of this happens.




 Of course, most of those plugins do not yet support this. But there is 
 nothing stopping us from hacking that ;)

 LieGrue,
 strub




 - Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc:
 Sent: Monday, August 27, 2012 11:13 PM
 Subject: Re: improving incremental builds

 Mark, I don't see how this helps. If the jar plugin hasn't rebuilt the
 jar, the shade plugin can't rebuild the jar, even if, for other
 reasons, it needs to. It has knowledge that the jar plugin lacks.



 On Mon, Aug 27, 2012 at 4:04 PM, Mark Struberg strub...@yahoo.de wrote:
  the shade plugin would just need to store a local status file with the md5
 of the created result.
  Or add the info to the manifest as you proposed.

  The main point is that this should be up to the maven-shade-plugin, as it
 is the only one who knows when to repeat this step.

  LieGrue,
  strub




 
  From: Stephen Connolly stephen.alan.conno...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg
 strub...@yahoo.de
 Sent: Monday, August 27, 2012 9:53 PM
 Subject: Re: improving incremental builds


 The issue (for benson) is when the shade plugin modifies after the class
 files have changed... the jar plugin will currently skip recreating the jar, 
 and
 he has no way of knowing if the jar file has been shaded or not the 
 solution
 is to have the manifest.mf include an entry that indicates created by shade, 
 so
 that shade can safely skip


 On 27 August 2012 19:39, Mark Struberg strub...@yahoo.de wrote:

 Not sure if I get the problem.

 The timestamp of the input files is still  than the timestamp of
 the jar file. Regardless if it later got modified by the shade-plugin or not.

 LieGrue,
 strub




 
  From: Stephen Connolly stephen.alan.conno...@gmail.com

 To: Maven Developers List dev@maven.apache.org
 Cc: Mark Struberg strub...@yahoo.de
 Sent: Monday, August 27, 2012 8:11 PM

 Subject: Re: improving incremental builds


 On 27 August 2012 19:10, Stephen Connolly
 stephen.alan.conno...@gmail.com wrote:

 On 27 August 2012 18:09, Benson Margulies
 bimargul...@gmail.com wrote:

 On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg
 strub...@yahoo.de wrote:
  build1 and build 2 are different modules or
 different mvn invocations with some time inbetween?

  Of course we will need to test all plugins to
 behave incremental like! Means the maven-shade-plugin should check itself
 whether it needs shading or not at all.

 Two builds, separated in time, of exactly the same
 module.

 The problem here is that the jar plugin has already
 decided not to
 rebuild the jar by the time the shade plugin gets there,
 and I have no
 idea how to make the shade plugin play along.



 Any chance we can get the jar plugin to inspect some of the
 artifacts that it generates into the jar to see if they are consistent with 
 what
 the jar plugin produces...


 I'm looking at you META-INF/MANIFEST.MF


 I.O.W. if the


 Created-By: Apache Maven 3.0.4 (Maven JAR Plugin)


 is switched to


 Created-By: Apache Maven 3.0.4 (Maven Shade Plugin)


 Then the Maven JAR plugin can infer that the timestamp check
 is pointless, and force regen



 And people customizing that header can just live with the issues
 that creates.

 -Stephen




  But the worst thing happening would be that we
 compile too much. Thats still better than a full mvn clean install :)

  LieGrue,
  strub



  - Original Message -
  From: Benson Margulies
 bimargul...@gmail.com
  To: Maven Developers List
 dev@maven.apache.org; Mark Struberg strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 5:07 PM
  Subject: Re: improving incremental builds

  On Mon, Aug 27, 2012 at 8:40 AM, Mark Struberg
 strub...@yahoo.de wrote:
   We might implement this by storing the
 list of all activated profiles + all
  resolved 

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
Hi Benson!

 However, a dependency *has* changed,

Yea, thanks for the example! I think I kind of know what you mean now (I hope). 
That is why I introduced point A.) in the WiKi description [1].

If any of those tests indicate a change then we force a 'clean' on the module 
and on all depending downstream modules.

This will kind of make an intelligent mvn clean install, where the 'clean' 
lifecycle only gets invoked if an external change got detected. And only on the 
modules which are affected, others will remain untouched. I'm even trying to 
spare running the tests for those unaffected modules. Just need to figure a way 
to force running the tests manually. Thats why I thought about -ni and -i ...

What makes it a bit more complicated is that there is a slightly different 
behaviour for all phases  package and = package in maven. But by combining 
A.) and B.) we should get this working as well.

LieGrue,
strub


[1] https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds


- Original Message -
 From: Benson Margulies bimargul...@gmail.com
 To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
 Cc: 
 Sent: Monday, August 27, 2012 11:58 PM
 Subject: Re: improving incremental builds
 
 On Mon, Aug 27, 2012 at 5:56 PM, Mark Struberg strub...@yahoo.de wrote:
  It's a chain.
  The maven-compiler-plugin sees that there are stale sources or changed 
 dependencies and compiles the sources.
  The jar plugin sees that there are changed classes which have a newer 
 timestamp than the jar file, so it creates the jar again.
  The maven-shade-plugin will see the md5 of the jar changed (or detect 
 otherwise that this is not a shaded jar) and trigger the shading.
 
 Not good enough. Let me describe the failure mode.
 
 No sources have changed. So the compiler plugin doesn't recompile.
 
 So, no .class files have changed, so the jar plugin doesn't jar.
 
 However, a dependency *has* changed, so the shade plugin needs a clean
 input. But it doesn't have a clean input, since the only thing around
 is the jar it shaded last time around.
 
 The only fix I can see is if the shade plugin keeps around a copy of
 the original unshaded jar when it shades, and uses that to redo the
 shade when all of this happens.
 
 
 
 
  Of course, most of those plugins do not yet support this. But there is 
 nothing stopping us from hacking that ;)
 
  LieGrue,
  strub
 
 
 
 
  - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc:
  Sent: Monday, August 27, 2012 11:13 PM
  Subject: Re: improving incremental builds
 
  Mark, I don't see how this helps. If the jar plugin hasn't 
 rebuilt the
  jar, the shade plugin can't rebuild the jar, even if, for other
  reasons, it needs to. It has knowledge that the jar plugin lacks.
 
 
 
  On Mon, Aug 27, 2012 at 4:04 PM, Mark Struberg 
 strub...@yahoo.de wrote:
   the shade plugin would just need to store a local status file with 
 the md5
  of the created result.
   Or add the info to the manifest as you proposed.
 
   The main point is that this should be up to the 
 maven-shade-plugin, as it
  is the only one who knows when to repeat this step.
 
   LieGrue,
   strub
 
 
 
 
  
   From: Stephen Connolly stephen.alan.conno...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark 
 Struberg
  strub...@yahoo.de
  Sent: Monday, August 27, 2012 9:53 PM
  Subject: Re: improving incremental builds
 
 
  The issue (for benson) is when the shade plugin modifies after 
 the class
  files have changed... the jar plugin will currently skip recreating the 
 jar, and
  he has no way of knowing if the jar file has been shaded or not the 
 solution
  is to have the manifest.mf include an entry that indicates created by 
 shade, so
  that shade can safely skip
 
 
  On 27 August 2012 19:39, Mark Struberg 
 strub...@yahoo.de wrote:
 
  Not sure if I get the problem.
 
  The timestamp of the input files is still  than the 
 timestamp of
  the jar file. Regardless if it later got modified by the shade-plugin 
 or not.
 
  LieGrue,
  strub
 
 
 
 
  
   From: Stephen Connolly 
 stephen.alan.conno...@gmail.com
 
  To: Maven Developers List dev@maven.apache.org
  Cc: Mark Struberg strub...@yahoo.de
  Sent: Monday, August 27, 2012 8:11 PM
 
  Subject: Re: improving incremental builds
 
 
  On 27 August 2012 19:10, Stephen Connolly
  stephen.alan.conno...@gmail.com wrote:
 
  On 27 August 2012 18:09, Benson Margulies
  bimargul...@gmail.com wrote:
 
  On Mon, Aug 27, 2012 at 12:07 PM, Mark Struberg
  strub...@yahoo.de wrote:
   build1 and build 2 are different modules 
 or
  different mvn invocations with some time inbetween?
 
   Of course we will need to test all plugins 
 to
  behave incremental like! Means the maven-shade-plugin should check 
 itself
  whether it needs shading or 

Re: improving incremental builds

2012-08-27 Thread Mark Struberg
Oh I think I'm slowly catching what you meant. 


You were not talking about dependency but the configurationartifactSet 
inside the maven-shade-plugin declaration, right?
In that case A.) doesn't kick in, true. Guess the easiest way would be to keep 
the original jar somewhere as you already proposed.


LieGrue,
strub


- Original Message -
 From: Mark Struberg strub...@yahoo.de
 To: Maven Developers List dev@maven.apache.org
 Cc: 
 Sent: Tuesday, August 28, 2012 12:10 AM
 Subject: Re: improving incremental builds
 
 Hi Benson!
 
  However, a dependency *has* changed,
 
 Yea, thanks for the example! I think I kind of know what you mean now (I 
 hope). 
 That is why I introduced point A.) in the WiKi description [1].
 
 If any of those tests indicate a change then we force a 'clean' on 
 the module and on all depending downstream modules.
 
 This will kind of make an intelligent mvn clean install, where the 
 'clean' lifecycle only gets invoked if an external change got detected. 
 And only on the modules which are affected, others will remain untouched. 
 I'm even trying to spare running the tests for those unaffected modules. 
 Just need to figure a way to force running the tests manually. Thats why I 
 thought about -ni and -i ...
 
 What makes it a bit more complicated is that there is a slightly different 
 behaviour for all phases  package and = package in maven. But by 
 combining A.) and B.) we should get this working as well.
 
 LieGrue,
 strub
 
 
 [1] https://cwiki.apache.org/confluence/display/MAVEN/Incremental+Builds
 
 
 - Original Message -
  From: Benson Margulies bimargul...@gmail.com
  To: Maven Developers List dev@maven.apache.org; Mark Struberg 
 strub...@yahoo.de
  Cc: 
  Sent: Monday, August 27, 2012 11:58 PM
  Subject: Re: improving incremental builds
 
  On Mon, Aug 27, 2012 at 5:56 PM, Mark Struberg strub...@yahoo.de 
 wrote:
   It's a chain.
   The maven-compiler-plugin sees that there are stale sources or changed 
 
  dependencies and compiles the sources.
   The jar plugin sees that there are changed classes which have a newer 
  timestamp than the jar file, so it creates the jar again.
   The maven-shade-plugin will see the md5 of the jar changed (or detect 
  otherwise that this is not a shaded jar) and trigger the shading.
 
  Not good enough. Let me describe the failure mode.
 
  No sources have changed. So the compiler plugin doesn't recompile.
 
  So, no .class files have changed, so the jar plugin doesn't jar.
 
  However, a dependency *has* changed, so the shade plugin needs a clean
  input. But it doesn't have a clean input, since the only thing around
  is the jar it shaded last time around.
 
  The only fix I can see is if the shade plugin keeps around a copy of
  the original unshaded jar when it shades, and uses that to redo the
  shade when all of this happens.
 
 
 
 
   Of course, most of those plugins do not yet support this. But there is 
 
  nothing stopping us from hacking that ;)
 
   LieGrue,
   strub
 
 
 
 
   - Original Message -
   From: Benson Margulies bimargul...@gmail.com
   To: Maven Developers List dev@maven.apache.org; Mark 
 Struberg 
  strub...@yahoo.de
   Cc:
   Sent: Monday, August 27, 2012 11:13 PM
   Subject: Re: improving incremental builds
 
   Mark, I don't see how this helps. If the jar plugin hasn't 
 
  rebuilt the
   jar, the shade plugin can't rebuild the jar, even if, for 
 other
   reasons, it needs to. It has knowledge that the jar plugin lacks.
 
 
 
   On Mon, Aug 27, 2012 at 4:04 PM, Mark Struberg 
  strub...@yahoo.de wrote:
    the shade plugin would just need to store a local status file 
 with 
  the md5
   of the created result.
    Or add the info to the manifest as you proposed.
 
    The main point is that this should be up to the 
  maven-shade-plugin, as it
   is the only one who knows when to repeat this step.
 
    LieGrue,
    strub
 
 
 
 
   
    From: Stephen Connolly 
 stephen.alan.conno...@gmail.com
   To: Maven Developers List dev@maven.apache.org; 
 Mark 
  Struberg
   strub...@yahoo.de
   Sent: Monday, August 27, 2012 9:53 PM
   Subject: Re: improving incremental builds
 
 
   The issue (for benson) is when the shade plugin modifies 
 after 
  the class
   files have changed... the jar plugin will currently skip 
 recreating the 
  jar, and
   he has no way of knowing if the jar file has been shaded or 
 not the 
  solution
   is to have the manifest.mf include an entry that indicates created 
 by 
  shade, so
   that shade can safely skip
 
 
   On 27 August 2012 19:39, Mark Struberg 
  strub...@yahoo.de wrote:
 
   Not sure if I get the problem.
 
   The timestamp of the input files is still  than 
 the 
  timestamp of
   the jar file. Regardless if it later got modified by the 
 shade-plugin 
  or not.
 
   LieGrue,
   strub
 
 
 
 
   
    From: Stephen Connolly 
  stephen.alan.conno...@gmail.com
 
   To: Maven 

Re: Why do the core its fail massively when using mirrorOf in settings.xml ?

2012-08-27 Thread Brian Fox
There are lots of tests that are trying to use file based repositories
for certain conditions. This is why in 2.0.9 I had added the
external:* :

external:* matches all repositories except those using localhost or
file based repositories. This is used in conjunction with a repository
manager when you want to exclude redirecting repositories that are
defined for Integration Testing.

Maybe we should update the default setting.xml in the book, but it's
pretty rare that people are using file repos for their ITs (read:
pretty much only maven ;-)  )

On Thu, Aug 23, 2012 at 2:44 PM, Kristian Rosenvold
kristian.rosenv...@gmail.com wrote:
 When I try to run the maven core IT's with a mirrorOf setting in my
 settings.xml (copy-paste from
 http://www.sonatype.com/books/nexus-book/reference/maven-sect-single-group.html)
 I get all sorts of
 weird  wonderful artifact resolution failures for snapshots inside
 the forked test processes; this happens regardless of which maven 3.x
 version I try to test.

 Removing the the setup from settings.xml clearly fixes the problem.
 Can someone explain what is going on, is this a jira issue or WTF ?

 Kristian

 -
 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



Re: Why do the core its fail massively when using mirrorOf in settings.xml ?

2012-08-27 Thread Jason van Zyl
I definitely use external:*

I didn't even notice the book doesn't. 

On Aug 27, 2012, at 9:11 PM, Brian Fox wrote:

 There are lots of tests that are trying to use file based repositories
 for certain conditions. This is why in 2.0.9 I had added the
 external:* :
 
 external:* matches all repositories except those using localhost or
 file based repositories. This is used in conjunction with a repository
 manager when you want to exclude redirecting repositories that are
 defined for Integration Testing.
 
 Maybe we should update the default setting.xml in the book, but it's
 pretty rare that people are using file repos for their ITs (read:
 pretty much only maven ;-)  )
 
 On Thu, Aug 23, 2012 at 2:44 PM, Kristian Rosenvold
 kristian.rosenv...@gmail.com wrote:
 When I try to run the maven core IT's with a mirrorOf setting in my
 settings.xml (copy-paste from
 http://www.sonatype.com/books/nexus-book/reference/maven-sect-single-group.html)
 I get all sorts of
 weird  wonderful artifact resolution failures for snapshots inside
 the forked test processes; this happens regardless of which maven 3.x
 version I try to test.
 
 Removing the the setup from settings.xml clearly fixes the problem.
 Can someone explain what is going on, is this a jira issue or WTF ?
 
 Kristian
 
 -
 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
 

Thanks,

Jason

--
Jason van Zyl
Founder  CTO, Sonatype
Founder,  Apache Maven
http://twitter.com/jvanzyl
-

First, the taking in of scattered particulars under one Idea,
so that everyone understands what is being talked about ... Second,
the separation of the Idea into parts, by dividing it at the joints,
as nature directs, not breaking any limb in half as a bad carver might.

  -- Plato, Phaedrus (Notes on the Synthesis of Form by C. Alexander)







[RESULT][VOTE] Release Maven Surefire version 2.12.3

2012-08-27 Thread Kristian Rosenvold
Hi,
The vote has passed with the following result :

+1 (binding): Olivier Lamy, Hervé Boutemy, Kristian Rosenvold
+1 (non binding): Tony Chemit, Mirko Friedenhagen

I will promote the artifacts to the central repo.

Kristian

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