+1 to bump the compiler to 3.0 with this change On Fri, Oct 19, 2012 at 12:30 PM, Olivier Lamy <ol...@apache.org> wrote:
> So as no objections it's now merged. > I bumped plexus-compiler version to 2.0-SNAPSHOT. > > As maven-compiler-plugin has a lot of changes (including incremental > stuff) I wonder about bump version to 3.0-SNAPSHOT ? > > 2012/10/18 Olivier Lamy <ol...@apache.org>: > > just FYI I have created a branch here > > https://github.com/sonatype/plexus-compiler/tree/PLXCOMP-1 > > This supports 1.5 and javax.tools if available in the user env. > > > > I have noticed some perf degradation testing the pull request > > https://github.com/sonatype/plexus-compiler/pull/6. > > Using JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); > > for each compilation is very slower. > > > > So I have tried to mimic similar stuff as done with current Javacc > > (the reuseStrategy see > > > http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#compilerReuseStrategy > > ). NOTE that's a *very* basic pool mechanism :-). > > > > As I have no idea if the compiler is threadsafe or not (it's not > > documented to be thread safe in javadoc but at least javadoc samples > > says it can be reused for future compilation). Tests on my env (osx + > > java 1.6.0_37) looks to say yes. > > > > In compiler plugin (not committed yet), I have added a flag to disable > > use of javax.tools usage (as it if that breaks on some os/jdk users > > will be able to disable it even if that's detected to be usable) > > > > WDYT ? > > > > 2012/10/1 Stephen Connolly <stephen.alan.conno...@gmail.com>: > >> On 28 September 2012 18:15, John Casey <jdca...@commonjava.org> wrote: > >> > >>> On 9/28/12 12:08 PM, Mark Struberg wrote: > >>> > >>>> +1 > >>>> > >>>> Imo this comes hand in hand with moving maven-core to 1.6 as well and > a > >>>> version bump to mvn-3.2.0 or even mvn-3.5.0 > >>>> > >>>> We might create a documentation page about "Strategies for targeting > >>>> older Java versions" which outlines the animal-sniffer, etc > >>>> > >>>> LieGrue, > >>>> strub > >>>> > >>> > >>> I think the plugin could be a sort of advance guard for the core > itself, > >>> since people can still use the core + the older version of the compiler > >>> plugin to run on 1.5... > >>> > >>> I wouldn't want to get mired in a discussion about when we're going to > >>> move the core up to 1.6, since that's a bit more work. > >>> > >>> > >> There is the Toolchains issue. > >> > >> At present, AFAIK we can use Toolchains to run Maven with Java 1.6 and > >> compile with Java 1.3. > >> > >> Surefire supports running tests via toolchains down to Java 1.3 IIRC > >> > >> If we are doing something that makes this kind of thing impossible *even > >> via toolchains* then my feeling is that I am -1. > >> > >> If we can find a way (more indirection please, it solves all problems > don't > >> you know) to allow this to work *and* retain toolchains support for > >> compiling with JDK 1.3 then +1. > >> > >> > >>> > >>> > >>>> > >>>> > >>>> > >>>> ----- Original Message ----- > >>>> > >>>>> From: John Casey <jdca...@commonjava.org> > >>>>> To: Maven Developers List <dev@maven.apache.org> > >>>>> Cc: > >>>>> Sent: Friday, September 28, 2012 6:53 PM > >>>>> Subject: PLXCOMP-1 and improving compiler-message parsing > >>>>> > >>>>> Hi everyone, > >>>>> > >>>>> There's a new patch to the plexus-compiler libraries which improves > the > >>>>> parsing of the output messages, especially for annotation processing. > >>>>> Previously, a lot of non-error messages caused plexus-compiler (and > >>>>> thereby, > >>>>> Maven) to think a compilation error had occurred. The patch fixes > this > >>>>> by using > >>>>> the javax.tools APIs to work with in-process compilation. > >>>>> > >>>>> The patch is here: > >>>>> > >>>>> https://github.com/sonatype/**plexus-compiler/pull/6< > https://github.com/sonatype/plexus-compiler/pull/6> > >>>>> > >>>>> > >>>>> The issue is here (it's been out there for a LONG time, as you can > see: > >>>>> > >>>>> http://jira.codehaus.org/**browse/PLXCOMP-1< > http://jira.codehaus.org/browse/PLXCOMP-1> > >>>>> > >>>>> > >>>>> The javax.tools APIs are JDK 1.6+ IIRC, so merging this patch would > >>>>> effectively > >>>>> drag the future of the maven-compiler-plugin up to requiring JDK 1.6. > >>>>> Personally, since JDK 1.5 has been out almost as long as I've been > coding > >>>>> (well, not too far), I don't see the problem. Remember, we're not > asking > >>>>> people to upgrade their production VM, only the build-time > version...and > >>>>> we have > >>>>> documented strategies for targeting older VM versions successfully. > >>>>> > >>>>> We might look at strategies for degrading gracefully in case someone > is > >>>>> using > >>>>> JDK 1.5, but IMO we need to be very careful about this. For > instance, I > >>>>> wouldn't want people to wind up with unexplained, random new errors > >>>>> because > >>>>> they accidentally set their $PATH wrong. But maybe we could give > them a > >>>>> large > >>>>> warning then switch over to forked-mode compilation in this case? > >>>>> > >>>>> I'd really hate to see this patch go unmerged because we're stuck > >>>>> supporting JDK 1.5...or if we do reject it on these grounds, maybe we > >>>>> need to > >>>>> talk about when it's reasonable to jump ship on 1.5 if not now? > >>>>> > >>>>> I'd LIKE to merge this patch, release plexus-compiler, and document > how > >>>>> to > >>>>> use it as a plugin-level dependency...then make the move to 1.6 for > the > >>>>> compiler > >>>>> plugin. > >>>>> > >>>>> Thoughts? > >>>>> > >>>>> -john > >>>>> > >>>>> -- John Casey > >>>>> Developer, PMC Member - Apache Maven (http://maven.apache.org) > >>>>> GitHub - http://github.com/jdcasey > >>>>> > >>>>> ------------------------------**------------------------------** > >>>>> --------- > >>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.**org< > dev-unsubscr...@maven.apache.org> > >>>>> For additional commands, e-mail: dev-h...@maven.apache.org > >>>>> > >>>>> > >>>> > ------------------------------**------------------------------**--------- > >>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.**org< > dev-unsubscr...@maven.apache.org> > >>>> For additional commands, e-mail: dev-h...@maven.apache.org > >>>> > >>>> > >>> > >>> -- > >>> John Casey > >>> Developer, PMC Member - Apache Maven (http://maven.apache.org) > >>> GitHub - http://github.com/jdcasey > >>> > >>> > ------------------------------**------------------------------**--------- > >>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.**org< > 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 > > > > -- > 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 > > -- ----- Arnaud Héritier 06-89-76-64-24 http://aheritier.net Mail/GTalk: aherit...@gmail.com Twitter/Skype : aheritier