(this is another topic so we can maybe open another thread) issue is not much about python but more about the fact the build is not self contained. it is a maven build and maven should be sufficient without having to install python + dependencies. I don't see any technical blockers to do it (except time ;)) but it is always a bit annoying to git clone then not be able to build.
Romain Manni-Bucau @rmannibucau | Blog | Old Blog | Github | LinkedIn 2017-11-09 18:07 GMT+01:00 Lukasz Cwik <[email protected]>: > Hmm, I have had good luck when following the Python quick start setup > <https://beam.apache.org/get-started/quickstart-py/> on multiple machines > by ensuring the installed version of setuptools, virtualenv and pip are new > enough versions. > > You can always skip the Python portion of the build by excluding the build > task as so: > ./gradlew build -x ":beam-sdks-parent:beam-sdks-python:build" > > On Thu, Nov 9, 2017 at 8:58 AM, Romain Manni-Bucau <[email protected]> > wrote: > >> The 1.3.5 file is when i installed the python dependencies manually >> to make the build passing (the pip command never passed on my computer >> and therefore the build always has been broken until i installed it >> manually - independently from the build tool). >> >> Romain Manni-Bucau >> @rmannibucau | Blog | Old Blog | Github | LinkedIn >> >> >> 2017-11-09 17:51 GMT+01:00 Lukasz Cwik <[email protected]>: >> > It turns out that the Apache Rat Ant task and the Apache Rat Maven plugin >> > differ in that the plugin automatically excludes certain files by default >> > while the Ant task does not. >> > See: >> > http://creadur.apache.org/rat/apache-rat-plugin/check-mojo. >> html#useDefaultExcludes >> > >> > I fixed the list to exclude ".idea/" instead of "idea/" since there was a >> > typo. >> > >> > I have no idea what the file "=1.3.5" is. Can you take a look at the >> > contents? >> > >> > On Thu, Nov 9, 2017 at 12:03 AM, Romain Manni-Bucau < >> [email protected]> >> > wrote: >> > >> >> Ok, the rat issues I got were: >> >> >> >> == File: /home/rmannibucau/1_dev/beam/.idea/* >> >> == File: /home/rmannibucau/1_dev/beam/sdks/python/=1.3.5 >> >> >> >> The first one could be in my default exclude - even if eclipse/idea >> >> files should be in the default exclude set of beam rat config IMHO, >> >> the last one is more a "?" can probably be exclude as well if created >> >> by the build at some point. >> >> >> >> >> >> Romain Manni-Bucau >> >> @rmannibucau | Blog | Old Blog | Github | LinkedIn >> >> >> >> >> >> 2017-11-08 19:17 GMT+01:00 Jean-Baptiste Onofré <[email protected]>: >> >> > Thanks for the update. I was swamped on some meetings. I'm back to >> test >> >> the latest changes. >> >> > >> >> > Regards >> >> > JB >> >> > >> >> > On Nov 8, 2017, 18:56, at 18:56, Lukasz Cwik <[email protected] >> > >> >> wrote: >> >> >>Thanks everyone for trying this build out in different workspaces / >> >> >>configurations. This will help make sure the build works for more >> >> >>people >> >> >>and will get rid of any rough edges. >> >> >> >> >> >>Performance (All): >> >> >>Maven performs parallelization at the module level, an entire module >> >> >>needs >> >> >>to complete before any dependent modules can start, this means running >> >> >>all >> >> >>the checks like findbugs, checkstyle, tests need to finish. Gradle has >> >> >>task >> >> >>level parallelism between subprojects which means that as soon as the >> >> >>compile and shade steps are done for a project, and dependent >> >> >>subprojects >> >> >>can typically start. This means that we get increased parallelism due >> >> >>to >> >> >>not needing to wait for findbugs, checkstyle, tests to run. I >> typically >> >> >>see >> >> >>~20 tasks (at peak) running on my desktop in parallel. >> >> >> >> >> >>Apache Rat (JB / Romain): >> >> >>What files are in the rat report that fail (its likely that I'm >> missing >> >> >>some exclusion for a build time artifact)? Also, please try the build >> >> >>again >> >> >>after running `git clean -fdx` in your workspace. >> >> >> >> >> >>Python (JB): >> >> >>As for the Python SDK, you'll need to share more details about the >> >> >>failure. >> >> >> >> >> >>Gradle 4.3: >> >> >>I would like to defer the swap to Gradle 4.3 until after this PR since >> >> >>it >> >> >>will be a much smaller set of changes. >> >> >> >> >> >>On Wed, Nov 8, 2017 at 12:54 AM, Jean-Baptiste Onofré < >> [email protected]> >> >> >>wrote: >> >> >> >> >> >>> Same for me for rat and python build too: >> >> >>> >> >> >>> FAILURE: Build completed with 2 failures. >> >> >>> >> >> >>> 1: Task failed with an exception. >> >> >>> ----------- >> >> >>> * What went wrong: >> >> >>> Execution failed for task ':rat'. >> >> >>> > Found 905 files with unapproved/unknown licenses. See >> >> >>> file:/home/jbonofre/Workspace/beam/build/reports/rat/rat-report.txt >> >> >>> >> >> >>> * Try: >> >> >>> Run with --stacktrace option to get the stack trace. Run with --info >> >> >>or >> >> >>> --debug option to get more log output. >> >> >>> ============================================================ >> >> >>> ================== >> >> >>> >> >> >>> 2: Task failed with an exception. >> >> >>> ----------- >> >> >>> * Where: >> >> >>> Build file '/home/jbonofre/Workspace/beam/sdks/python/build.gradle' >> >> >>line: >> >> >>> 64 >> >> >>> >> >> >>> * What went wrong: >> >> >>> Execution failed for task ':beam-sdks-parent:beam-sdks- >> python:lint'. >> >> >>> > Process 'command 'tox'' finished with non-zero exit value 1 >> >> >>> >> >> >>> >> >> >>> >> >> >>> On 11/08/2017 09:51 AM, Romain Manni-Bucau wrote: >> >> >>> >> >> >>>> gradle branch doesnt build for me (some rat issues) >> >> >>>> >> >> >>>> Romain Manni-Bucau >> >> >>>> @rmannibucau | Blog | Old Blog | Github | LinkedIn >> >> >>>> >> >> >>>> >> >> >>>> 2017-11-08 5:41 GMT+01:00 Jean-Baptiste Onofré <[email protected]>: >> >> >>>> >> >> >>>>> Great ! >> >> >>>>> >> >> >>>>> What explain these difference ? I'm curious especially for the >> >> >>clean >> >> >>>>> build >> >> >>>>> all Java modules: is it a question of parallel execution ? >> >> >>>>> >> >> >>>>> Regards >> >> >>>>> JB >> >> >>>>> >> >> >>>>> >> >> >>>>> On 11/08/2017 02:59 AM, Lukasz Cwik wrote: >> >> >>>>> >> >> >>>>>> >> >> >>>>>> The Gradle POC has made significant advances since last week >> >> >>(shading, >> >> >>>>>> Python, Go, Docker builds, ...). I believe the current state is >> >> >>close >> >> >>>>>> enough to the Maven build system to warrant a comparison. >> >> >>>>>> >> >> >>>>>> The largest build differences I noticed are: >> >> >>>>>> * Full build takes about ~22mins using Gradle (parallelizing the >> >> >>three >> >> >>>>>> rounds of Python tests would reduce this to ~17mins) compared to >> >> >>~38mins >> >> >>>>>> in >> >> >>>>>> Maven >> >> >>>>>> * Clean build all Java modules (skipping over Go/Python >> >> >>>>>> <https://goto.google.com/Python>) takes ~8mins in >> >> >>>>>> Gradle which takes ~36mins in Maven >> >> >>>>>> * Build output is cached allowing for faster subsequent builds >> >> >>with >> >> >>>>>> "gradle >> >> >>>>>> buildDependents" allowing for most single module changes taking >> >> >>~2mins >> >> >>>>>> to >> >> >>>>>> build and test without needing to rely on "mvn install" >> >> >>>>>> >> >> >>>>>> I have opened PR 4096 <https://github.com/apache/beam/pull/4096> >> >> >>so >> >> >>>>>> that >> >> >>>>>> the Gradle build files merged and then follow up with new Jenkins >> >> >>>>>> precommits which are powered by Gradle. This will allow the >> >> >>community to >> >> >>>>>> continuing contributing to the Gradle build and also allow for a >> >> >>>>>> comparison >> >> >>>>>> of the precommit times on the Jenkins executor when using >> >> >>Maven/Gradle. >> >> >>>>>> I >> >> >>>>>> suggest that those who are interested try out the PR. >> >> >>>>>> >> >> >>>>>> On Fri, Nov 3, 2017 at 10:29 PM, Jean-Baptiste Onofré >> >> >><[email protected]> >> >> >>>>>> wrote: >> >> >>>>>> >> >> >>>>>> That makes sense. The point is that we have to compare >> >> >>equivalently. I'm >> >> >>>>>>> also curious about Gradle PoC assuming it does the same actions >> >> >>as >> >> >>>>>>> Maven. >> >> >>>>>>> >> >> >>>>>>> Regards >> >> >>>>>>> JB >> >> >>>>>>> >> >> >>>>>>> On Nov 3, 2017, 20:41, at 20:41, Kenneth Knowles >> >> >>>>>>> <[email protected]> >> >> >>>>>>> wrote: >> >> >>>>>>> >> >> >>>>>>>> >> >> >>>>>>>> I'm confident that any choice will speed things up dramatically >> >> >>even >> >> >>>>>>>> beyond >> >> >>>>>>>> a fast profile, even if the new tool runs all the extra stuff. >> >> >>But >> >> >>>>>>>> that >> >> >>>>>>>> is >> >> >>>>>>>> a question that we can answer empirically anyhow. Let's see how >> >> >>it >> >> >>>>>>>> goes! >> >> >>>>>>>> >> >> >>>>>>>> Incidentally, my experiments with Bazel have led me to the >> >> >>conclusion >> >> >>>>>>>> that >> >> >>>>>>>> it is not the right choice for us so I'm not going to be >> >> >>proposing any >> >> >>>>>>>> completed POC of that right now. I'm interested in the outcome >> >> >>of the >> >> >>>>>>>> Gradle POC. >> >> >>>>>>>> >> >> >>>>>>>> Kenn >> >> >>>>>>>> >> >> >>>>>>>> >> >> >>>>>>>> On Fri, Nov 3, 2017 at 3:30 AM, Jean-Baptiste Onofré >> >> >><[email protected] >> >> >>>>>>>> > >> >> >>>>>>>> wrote: >> >> >>>>>>>> >> >> >>>>>>>> Hi >> >> >>>>>>>>> >> >> >>>>>>>>> It's what I said in a previous e-mail: I don't think that just >> >> >>>>>>>>> >> >> >>>>>>>> >> >> >>>>>>>> changing >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>> the build tool will improve a lot the build time. >> >> >>>>>>>>> >> >> >>>>>>>>> We already know (and discussed while ago) that plugins like >> >> >>findbugs, >> >> >>>>>>>>> checkstyle, etc are taking time. >> >> >>>>>>>>> >> >> >>>>>>>>> So, I think we can already have a fast profile. >> >> >>>>>>>>> >> >> >>>>>>>>> Regards >> >> >>>>>>>>> JB >> >> >>>>>>>>> >> >> >>>>>>>>> On Nov 3, 2017, 11:16, at 11:16, Romain Manni-Bucau >> >> >>>>>>>>> >> >> >>>>>>>> >> >> >>>>>>>> <[email protected]> >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>> wrote: >> >> >>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> Hi guys, >> >> >>>>>>>>>> >> >> >>>>>>>>>> when you check the duration of each mojo of the build (almost >> >> >>since >> >> >>>>>>>>>> python part of the build just breaks it locally) you see that >> >> >>there >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> is >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> no real link with maven for the perf issues beam can >> >> >>encounter: >> >> >>>>>>>>>> https://gist.github.com/rmannibucau/f65fdde28d5dab0fdac50633 >> >> >>>>>>>>>> f84554c9 >> >> >>>>>>>>>> (generated from the profiling of tesla-profile and parsed >> with >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>> >> >> >>https://gist.github.com/rmannibucau/e329d54b8af6c009f46fd151d10037ad >> >> >>>>>>>>> ) >> >> >>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> Before PoC-ing other tools which will end up to either have >> >> >>the same >> >> >>>>>>>>>> issues if the other builds do the same things (test, >> >> >>checkstyle, >> >> >>>>>>>>>> enforcer, findbugs, ...) or have a less reliable build >> (trying >> >> >>to >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> skip >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> some parts of the build if "untouched" - note that this is a >> >> >>very >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> hard >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> issue since static code anaylizis doesn't give you any >> >> >>guarantee of >> >> >>>>>>>>>> what it does with modern code - then maybe some action can be >> >> >>taken >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> on >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> the current build: >> >> >>>>>>>>>> >> >> >>>>>>>>>> - testing >> >> >>https://github.com/vackosar/gitflow-incremental-builder >> >> >>>>>>>>>> or >> >> >>>>>>>>>> https://github.com/khmarbaise/incremental-module-builder >> maybe >> >> >>or >> >> >>>>>>>>>> do >> >> >>>>>>>>>> the same kind of extension including the beam needs (/!\ the >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> previous >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> warning is still accurate and requires a full run at some >> >> >>point to >> >> >>>>>>>>>> validate the graph detection algorithm didn't get abused by >> >> >>some >> >> >>>>>>>>>> indirect code dependency) >> >> >>>>>>>>>> - maybe try to get rid of some shades (it is a bit crazy ATM >> >> >>to have >> >> >>>>>>>>>> so much shades no?) >> >> >>>>>>>>>> - the CI can have profiles based on a PR convention (name of >> >> >>the >> >> >>>>>>>>>> branch?) to select the build profile, for instance >> >> >>>>>>>>>> fb/elasticsearch_super-nice-PR would build only the >> >> >>elasticsearch >> >> >>>>>>>>>> modules, jenkins/travis have this ability since they support >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> scripting >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> - document how to setup a "fastBuild" profile in its >> >> >>settings.xml >> >> >>>>>>>>>> which bypasses checkstyle, enforcer plugin, findbugs, etc... >> >> >>for >> >> >>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>> fast >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> development iterations >> >> >>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> Romain Manni-Bucau >> >> >>>>>>>>>> @rmannibucau | Blog | Old Blog | Github | LinkedIn >> >> >>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> 2017-11-01 21:02 GMT+01:00 Kenneth Knowles >> >> >><[email protected] >> >> >>>>>>>>>> >: >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> I have started one, here: >> >> >>>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> https://github.com/kennknowles/beam/commits/bazel. >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> It is not nearly as far along as Luke's. For the POC I am >> >> >>just >> >> >>>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> putting >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> things in one root BUILD, and learning where we might find >> >> >>the >> >> >>>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> necessary >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> plugins as I go. I am happy to grant push access to this >> >> >>branch. >> >> >>>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>> It >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> would >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> be superb if you had some time to work through the Python >> >> >>steps. >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> On Wed, Nov 1, 2017 at 10:09 AM, Ahmet Altay >> >> >>>>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> <[email protected]> >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> wrote: >> >> >>>>>>>>>>> >> >> >>>>>>>>>>> Has anyone started a POC with Bazel? I would be interested >> in >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>> helping that >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> effort. >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>> On Wed, Nov 1, 2017 at 9:27 AM, Lukasz Cwik >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>> <[email protected]> >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>> I have started a POC for using Gradle here: >> >> >>>>>>>>>>>>> https://github.com/lukecwik/incubator-beam/tree/gradle >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> Things that work: >> >> >>>>>>>>>>>>> * compiling all Java code (src/main and src/test) >> >> >>>>>>>>>>>>> * generating source from protos >> >> >>>>>>>>>>>>> * generating source from avro >> >> >>>>>>>>>>>>> * running rat, checkstyle >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> Partially working: >> >> >>>>>>>>>>>>> * generating maven pom (albeit with wrong dependencies for >> >> >>some >> >> >>>>>>>>>>>>> subprojects) >> >> >>>>>>>>>>>>> * running tests (~80% pass, remainder seem to be >> dependency >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>>>> related but >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> are >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> uninvestigated) >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> Things that don't work: >> >> >>>>>>>>>>>>> * anything Python/Go/Docker compilation related >> >> >>>>>>>>>>>>> * many tests fail because I messed up dependencies >> >> >>>>>>>>>>>>> * anything shading related >> >> >>>>>>>>>>>>> * minor plugins like eclipse code formatter/... >> >> >>>>>>>>>>>>> * running @NeedsRunner/@ValidatesRunner/integration tests >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> Feel free to reach out to me on Slack if you would like to >> >> >>try >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>> to >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> tackle >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> a >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> piece of the POC to prevent duplication of effort from >> >> >>anyone >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>>>> working on >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>> it. >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> On Tue, Oct 31, 2017 at 10:25 PM, Jean-Baptiste Onofré >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>>>> <[email protected]> >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> Agree to move forward on a PoC. >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> Thanks Reuven for bringing discussion on the mailing list >> >> >>! >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> Regards >> >> >>>>>>>>>>>>>> JB >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> On Nov 1, 2017, 03:20, at 03:20, Reuven Lax >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>> <[email protected]> >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Some good discussion here, and thanks to JB and Romain >> >> >>for >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> adding to >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> it! >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> JB makes the good point that we still need to release >> >> >>Maven >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> artifacts, >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> as >> >> >>>>>>>>>>>>>>> many Beam users want to develop using Maven. So none of >> >> >>this >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>> discussion >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> will affect our release process, as we still need Maven >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> "releases." >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> At this point, if people are interested, I see no harm >> in >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> prototyping. >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Having working alternatives will give us a better basis >> >> >>for >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> comparison >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> to >> >> >>>>>>>>>>>>>>> understand whether these other build systems give us >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>> anything >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> over >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> what >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Maven does. >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Reuven >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> On Tue, Oct 31, 2017 at 11:05 AM, Charles Chen >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>> <[email protected] >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> As a contributor to the Beam Python SDK, I noticed that >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>> many >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> of the >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> points >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> above regarding Maven and Gradle pertain mostly to Java >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>> SDK >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>>>>> development. >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> For Python development, Maven is much less natural, and >> >> >>we >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>> end up >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> just >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> shelling out to perform builds and tests. For Python >> >> >>SDK >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>> (and >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> upcoming Go >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> SDK development), an option to use Bazel would be quite >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>> useful. >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> On Tue, Oct 31, 2017 at 10:42 AM Robert Bradshaw >> >> >>>>>>>>>>>>>>>> <[email protected]> wrote: >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> +1, Maven is both a build tool and a repository, and >> the >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>> latter is >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> essential to keep. Both Gradel and Bazel can interface >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>> with >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> this >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> repository. >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> I am, however, very supportive of moving away from >> >> >>Maven >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>> to >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> a tool >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> that supports correct incremental, hermetic, >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>> dependency-driven, >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> multi-langauge, and hopefully fast builds for our own >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>> development. >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> On Tue, Oct 31, 2017 at 10:00 AM, Kenneth Knowles >> >> >>>>>>>>>>>>>>>>> <[email protected]> wrote: >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> Echoing what JB and Reuven said, we absolutely must >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> provide >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> maven >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> central >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> artifacts for Java users, just as we provide pypi >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> artifacts for >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Python >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> users. >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> I see Maven as still a viable tool for single-module >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>> Java >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>> builds, >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> especially considering its rich plugin ecosystem. >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> On Mon, Oct 30, 2017 at 11:27 PM, Reuven Lax >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> <[email protected] >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> I think that's a very good point. No matter what >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>> build >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> system >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> we >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> use >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> for >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> our own personal development, we still need to >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>> release >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> Maven >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> artifacts >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> and >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> releases as we need to support our users using >> Maven. >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> On Mon, Oct 30, 2017 at 11:26 PM, Jean-Baptiste >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>> Onofré < >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>>>>>> [email protected] >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> Generally speaking, it's interesting to evaluate >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>> alternatives, >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> especially >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> Gradle. My point is also to keep Maven artifacts >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> and >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>>>>> "releases" as >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> most >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> of >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> our users will use Maven. >> >> >>>>>>>>>>>>>>>>>>>> For incremental build, afair, there's some >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> enhancements on >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> Maven >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> but I >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> have to take a look. >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> Regards >> >> >>>>>>>>>>>>>>>>>>>> JB >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> On Oct 31, 2017, 07:22, at 07:22, Eugene Kirpichov >> >> >>>>>>>>>>>>>>>>>>>> <[email protected]> wrote: >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> Hi! >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> Many of these points sound valid, but AFAICT Maven >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> doesn't >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> really >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> do >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> incremental builds [1]. The best it can do is, it >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> seems, >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> recompile >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> only >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> changed files, but Java compilation is a tiny part >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> of >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> the >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> overall >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> build. >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> Almost all time is taken by other plugins, such as >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> unit >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> testing or >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> findbugs >> >> >>>>>>>>>>>>>>>>>>>>> - and Maven does not seem to currently support >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> features such >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> as "do >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> not >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> rerun unit tests of a module if the code didn't >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> change". >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> The fact that the surefire plugin has existed for >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>> 11 >> >> >>>>>>>>> >> >> >>>>>>>>>> >> >> >>>>>>>>>> years >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> (version >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> 2.0 >> >> >>>>>>>>>>>>>>>>>>>>> was released in 2006) and still doesn't have this >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> feature >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> makes me >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> think >> >> >>>>>>>>>>>>>>>>>>>>> that it's unlikely to be supported in the next few >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> years >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> either. >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> I suspect most PRs affect a very small number of >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> modules, so >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> I >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> think >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> the >> >> >>>>>>>>>>>>>>>>>>>>> performance advantage of a build system truly >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> supporting >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> incremental >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> builds >> >> >>>>>>>>>>>>>>>>>>>>> may be so overwhelming as to trump many other >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> factors. Of >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> course, >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> we'd >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> need >> >> >>>>>>>>>>>>>>>>>>>>> to prototype and have hard numbers in hand to >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> discuss >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> this >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> with >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> more >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> substance. >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> [1] >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>https://stackoverflow.com/questions/8918165/does-maven- >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> support-incremental-builds >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> On Mon, Oct 30, 2017 at 10:57 PM Romain >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> Manni-Bucau >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> <[email protected]> >> >> >>>>>>>>>>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> Hi >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> Even if not a commiter or even PMC, I'd like to >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> mention a >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> few >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> points >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> from >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> an external eye: >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - Maven stays the most common build tool and >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> easier >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> one >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> for >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> any >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> user. >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> It >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> means it is the best one to hope contributions >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> IMHO. >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - Maven has incremental support but if there is >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> any >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>> blocker >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> the >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> community >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> is probably ready to enhance it (has been done >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> for >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>> compiler >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> plugin >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> for >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> instance) >> >> >>>>>>>>>>>>>>>>>>>>>> - Gradle hides issues easily with its daemon so >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> a >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> build >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> without >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> daemon is >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> needed >> >> >>>>>>>>>>>>>>>>>>>>>> - Gradle doesnt isolate plugins well enough so >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> ensure your >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> planned >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> plugins >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> doesnt conflict >> >> >>>>>>>>>>>>>>>>>>>>>> - Only Maven is correctly supported in >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> mainstream >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> and >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> OS/free IDE >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> This is the reasons why I think Maven is better >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> - >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> not even >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> entering >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> into >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> the ASF points. >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> Now Maven is not perfect but some quick >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> enhancements can >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> be >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> done: >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - A fast build profile can be created >> >> >>>>>>>>>>>>>>>>>>>>>> - Takari scheduler can be used yo enhance the >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> parallel >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> build >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - Scripts can be provided to build a subpart of >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> the >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>> project >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - A beam extension can surely be done to >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> optimize >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> or >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> compute the >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> reactors >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> more easily based on module names >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> Romain >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> Le 31 oct. 2017 06:42, "Jean-Baptiste Onofré" >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> <[email protected]> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> a >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> écrit : >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> -0 >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> For the following reasons reasons: >> >> >>>>>>>>>>>>>>>>>>>>>> - maven is a Apache project and we can have >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> support/improvement >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - I don't see how another build tool would speed >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> up >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>> the >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> build by >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> itself >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> - Apache default release process is based on >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>> Maven >> >> >>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> On the other hand, Gradle could be interesting. >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> Anyway >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>> it's >> >> >>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> something >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> to >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> evaluate. >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> Regards >> >> >>>>>>>>>>>>>>>>>>>>>> JB >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> On Oct 30, 2017, 18:46, at 18:46, Ted Yu >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>> <[email protected]> >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> wrote: >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>>> I agree with Ben's comment. >> >> >>>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>>> Recently I have been using gradle in another >> >> >>>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>> Apache >> >> >>>>>>>>>> >> >> >>>>>>>>>>> >> >> >>>>>>>>>>>>>>> project and >> >> >>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>> found >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>>> it >> >> >>>>>>>>>>>>>>>>>>>>>>> interesting. >> >> >>>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>>> Cheers >> >> >>>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>>>> >> >> >>>>>>>>>>>>>> >> >> >>>>>>>>>>>>> >> >> >>>>>>>>>>>> >> >> >>>>>>>>> >> >> >>>>>>> >> >> >>>>>> >> >> >>>>> -- >> >> >>>>> Jean-Baptiste Onofré >> >> >>>>> [email protected] >> >> >>>>> http://blog.nanthrax.net >> >> >>>>> Talend - http://www.talend.com >> >> >>>>> >> >> >>>> >> >> >>> -- >> >> >>> Jean-Baptiste Onofré >> >> >>> [email protected] >> >> >>> http://blog.nanthrax.net >> >> >>> Talend - http://www.talend.com >> >> >>> >> >> >> >>
