+1 (binding) One caveat to the second part of this vote. I think we need to elaborate a clear list of criteria that Gradle must clear before any processes are migrated off of Maven.
On Tue, Nov 28, 2017 at 12:51 PM, Romain Manni-Bucau <rmannibu...@gmail.com> wrote: > -1 (non binding) gradle discourages contributions which is a big pitfall > for an asf project and maven/gradle comparison is unfair due to the > threading setup of maven (hardcoded thread count and no parallelize builder > tusage). > > > Le 28 nov. 2017 19:38, "Jason Kuster" <jasonkus...@google.com> a écrit : > >> +1 >> >> From the perspective of Beam's infrastructure, I've found that Gradle >> provides us a good amount more flexibility to do the kinds of builds we >> want. Additionally, the shorter run times (while not the only factor here) >> will allow us to stretch our finite executor resources further, leading to >> fewer instances where people are waiting for other builds to finish for >> their presubmits to start. >> >> On Tue, Nov 28, 2017 at 10:22 AM, Chamikara Jayalath < >> chamik...@google.com> wrote: >> >>> +1 >>> >>> And thanks Luke for clearly mentioning the migration process. Let's make >>> sure that all major use cases of Maven are properly addressed before >>> removing Maven support. >>> >>> Thanks, >>> Cham >>> >>> >>> On Tue, Nov 28, 2017 at 10:09 AM Wesley Tanaka <wtanaka+b...@wtanaka.com> >>> wrote: >>> >>>> +1 >>>> >>>> >>>> On 11/28/2017 07:55 AM, Lukasz Cwik wrote: >>>> >>>> This is a procedural vote for migrating to use Gradle for all our >>>> development related processes (building, testing, and releasing). A >>>> majority vote will signal that: >>>> * Gradle build files will be supported and maintained alongside any >>>> remaining Maven files. >>>> * Once Gradle is able to replace Maven in a specific process (or >>>> portion thereof), Maven will no longer be maintained for said process (or >>>> portion thereof) and will be removed. >>>> >>>> +1 I support the process change >>>> 0 I am indifferent to the process change >>>> -1 I would like to remain with our current processes >>>> >>>> ------------------------------------------------------------ >>>> ---------------------------------------- >>>> >>>> Below is a summary of information contained in the disucssion thread >>>> comparing Gradle and Maven: https://lists.apache.org/threa >>>> d.html/225dddcfc78f39bbb296a0d2bbef1caf37e17677c7e5573f0b6fe >>>> 253@%3Cdev.beam.apache.org%3E >>>> >>>> Gradle (mins) >>>> min: 25.04 >>>> max: 160.14 >>>> median: 45.78 >>>> average: 52.19 >>>> stdev: 30.80 >>>> >>>> Maven (mins) >>>> min: 56.86 >>>> max: 216.55 (actually > 240 mins because this data does not include >>>> timeouts) >>>> median: 87.93 >>>> average: 109.10 >>>> stdev: 48.01 >>>> >>>> Maven >>>> Java Support: Mature >>>> Python Support: None (via mvn exec plugin) >>>> Go Support: Rudimentary (via mvn plugin) >>>> Protobuf Support: Rudimentary (via mvn plugin) >>>> Docker Support: Rudimentary (via mvn plugin) >>>> ASF Release Automation: Mature >>>> Jenkins Support: Mature >>>> Configuration Language: XML >>>> Multiple Java Versions: Yes >>>> Static Analysis Tools: Some >>>> ASF Release Audit Tool (RAT): Rudimentary (plugin complete and >>>> longstanding but poor) >>>> IntelliJ Integration: Mature >>>> Eclipse Integration: Mature >>>> Extensibility: Mature (updated per JB from discuss thread) >>>> Number of GitHub Projects Using It: 146k >>>> Continuous build daemon: None >>>> Incremental build support: None (note that this is not the same as >>>> incremental compile support offered by the compiler plugin) >>>> Intra-module dependencies: Rudimentary (requires the use of many >>>> profiles to get per runner dependencies) >>>> >>>> Gradle >>>> Java Support: Mature >>>> Python Support: Rudimentary (pygradle, lacks pypi support) >>>> Go Support: Rudimentary (gogradle plugin) >>>> Protobuf Support: Rudimentary (via protobuf plugin) >>>> Docker Support: Rudimentary (via docker plugin) >>>> ASF Release Automation: ? >>>> Jenkins Support: Mature >>>> Configuration Language: Groovy >>>> Multiple Java Versions: Yes >>>> Static Analysis Tools: Some >>>> ASF Release Audit Tool (RAT): Rudimentary (plugin just calls Apache >>>> Maven ANT plugin) >>>> IntelliJ Integration: Mature >>>> Eclipse Integration: Mature >>>> Extensibility: Mature >>>> Number of GitHub Projects Using It: 122k >>>> Continuous build daemon: Mature >>>> Incremental build support: Mature >>>> Intra-module dependencies: Mature (via configurations) >>>> >>>> >>>> -- >>>> Wesley Tanakahttps://wtanaka.com/ >>>> >>>> >> >> >> -- >> ------- >> Jason Kuster >> Apache Beam / Google Cloud Dataflow >> >