+1 Thanks Vladimir!

--
Michael Mior
mm...@apache.org


Le sam. 15 sept. 2018 à 14:37, Vladimir Sitnikov <
sitnikov.vladi...@gmail.com> a écrit :

> Hi,
>
> I'm sure lots of us have seen during Maven build even though the sources
> were not changed:
>    Compiling 1155 source files to .../code/calcite/core/target/classes
>
> The issue there is FMPP generates Parser.jj no matter what, and it causes
> JavaCC to re-generate parser which causes maven-compiler-plugin to compile
> calcite-core again.
> Note: Maven sends all the files to javac and it assumes javac is
> intelligent enough to identify which files were modified and which need to
> be recompiled.
>
> Unfortunately, regular javac is not incremental, and it basically builds
> the whole source tree (see
> https://issues.apache.org/jira/browse/MCOMPILER-209 )
>
> I propose to use org.apache.drill.tools:drill-fmpp-maven-plugin instead of
> com.googlecode.fmpp-maven-plugin:fmpp-maven-plugin.
> Drill's fmpp plugin compares outputs, thus it skips overwrite of Parser.jj,
> and it improves Calcite Core build times.
> I'm sure IDEs would be happier since Parser.jj and the generated parser are
> quite big and IDE won't have to re-parse it.
>
> JIRA: https://issues.apache.org/jira/browse/CALCITE-2558
> PR: https://github.com/apache/calcite/pull/832
>
> From my point of view this is an improvement with no drawbacks.
> Any thoughts? Objections?
>
> Vladimir
>

Reply via email to