The gitflow plugin looks promising. It seems to address the problem of the tests being run twice head-on <https://www.atlassian.com/blog/software-teams/maven-git-flow-plugin-for-better-releases> :
> > - Only builds your project once in the finish goal. e.g. if you do > release-start and release-finish together, your tests only run once > > It also seems to open up possibilities for streamlining our release procedures: since all changes are made on a branch and not on master, a rollback becomes very easy (just delete a branch). Would this allow us to eliminate the first step in our release procedure? I assume we currently have `mvn clean install` as a first step <https://wiki.apache.org/logging/Log4j2ReleaseGuide> to detect problems in advance. If a rollback is easy we can just try to optimistically build the release. It would be great we can reduce 3 test runs to 1. I'm still interested in Gradle's incremental compilation for normal log4j development but no rush here. On Sat, May 6, 2017 at 4:42 AM, Matt Sicker <boa...@gmail.com> wrote: > Yeah, it seems a bit easier to try experimenting with different Maven > plugins first before going all in on Gradle or something else. > > On 5 May 2017 at 13:26, Ralph Goers <ralph.go...@dslextreme.com> wrote: > > > We could try using the maven gitflow plugin instead of the release > plugin. > > > > Ralph > > > > > On May 5, 2017, at 11:22 AM, Gary Gregory <garydgreg...@gmail.com> > > wrote: > > > > > > Is it possible to do mvn test and then the rest with -DskipTests? > > > > > > G > > > > > > On May 5, 2017 11:11 AM, "Ralph Goers" <ralph.go...@dslextreme.com> > > wrote: > > > > > >> Probably both. > > >> > > >> Ralph > > >> > > >>> On May 5, 2017, at 10:13 AM, Matt Sicker <boa...@gmail.com> wrote: > > >>> > > >>> It seems like it. I'm not sure if it's in release:prepare or > > >>> release:perform. > > >>> > > >>> On 5 May 2017 at 12:12, Gary Gregory <garydgreg...@gmail.com> wrote: > > >>> > > >>>> Are the tests run 3 times from within the same mvn call? > > >>>> > > >>>> Gary > > >>>> > > >>>> On May 5, 2017 5:54 AM, "Remko Popma" <remko.po...@gmail.com> > wrote: > > >>>> > > >>>>> I don't oppose breaking things up into modules, but I'm not sure > that > > >> we > > >>>>> want to move modules into separate repos: I've seen this in > practice > > at > > >>>>> work and I worry we'll end up with a very complicated build. > > >>>>> > > >>>>> Are we open to the idea of using a different build tool that > supports > > >>>>> incremental builds and lets us fix one of the root causes of the > slow > > >>>> build > > >>>>> where we need to run the tests three times to do a release? > > >>>>> > > >>>>> I'm willing to put in the time to investigate and prototype a > Gradle > > >>>> build > > >>>>> but I don't want to waste my time if we know upfront we want to > stick > > >>>> with > > >>>>> Maven. > > >>>>> > > >>>>> Remko > > >>>>> > > >>>>> (Shameless plug) Every java main() method deserves > > http://picocli.info > > >>>>> > > >>>>>> On May 5, 2017, at 21:11, Mikael Ståldal < > mikael.stal...@magine.com > > > > > >>>>> wrote: > > >>>>>> > > >>>>>> ...but the main reason for breaking up into modules is not build > > >> speed. > > >>>>>> > > >>>>>> On Fri, May 5, 2017 at 9:40 AM, Mikael Ståldal < > > >>>>> mikael.stal...@magine.com> > > >>>>>> wrote: > > >>>>>> > > >>>>>>> I think we should continue to break up things into modules, but > > keep > > >>>>> them > > >>>>>>> in the same repo. > > >>>>>>> > > >>>>>>>> On Fri, May 5, 2017 at 2:16 AM, Remko Popma < > > remko.po...@gmail.com> > > >>>>> wrote: > > >>>>>>>> > > >>>>>>>> Why don't we focus on making the build faster instead of this > > module > > >>>> & > > >>>>>>>> repo break-up? > > >>>>>>>> > > >>>>>>>> We know this breakup is adding all kinds of complexity but we > are > > >>>> only > > >>>>>>>> *hoping* (not sure) that it will make the build faster. > > >>>>>>>> > > >>>>>>>> The way I've heard Ralph and Matt describe it, the build > currently > > >>>>>>>> requires the most time consuming part (running the tests) to be > > >>>>> repeated > > >>>>>>>> three times! Wouldn't that be the first thing to look at? > > >>>>>>>> > > >>>>>>>> Is this a Maven issue? Can it be fixed? Are we open to > considering > > >>>>>>>> alternatives like Gradle? > > >>>>>>>> > > >>>>>>>> I'm concerned we're focusing on the wrong problem. We can break > up > > >>>> the > > >>>>>>>> modules later for the right reasons (dependencies etc). > > >>>>>>>> > > >>>>>>>> Remko > > >>>>>>>> > > >>>>>>>> > > >>>>>>>> > > >>>>>>>> (Shameless plug) Every java main() method deserves > > >>>> http://picocli.info > > >>>>>>>> > > >>>>>>>>> On May 5, 2017, at 1:58, Ralph Goers < > ralph.go...@dslextreme.com > > > > > >>>>>>>> wrote: > > >>>>>>>>> > > >>>>>>>>> Because the build takes forever. > > >>>>>>>>> > > >>>>>>>>> Ralph > > >>>>>>>>> > > >>>>>>>>>> On May 4, 2017, at 9:00 AM, Mikael Ståldal < > > >>>>> mikael.stal...@magine.com> > > >>>>>>>> wrote: > > >>>>>>>>>> > > >>>>>>>>>> I am not sure it is worth the effort to keep things in > different > > >>>>> repos > > >>>>>>>> at > > >>>>>>>>>> this point. > > >>>>>>>>>> > > >>>>>>>>>> I can see a point in keeping the Scala stuff in its own repo > > since > > >>>> it > > >>>>>>>> needs > > >>>>>>>>>> Java 8 and scala compiler for building. The same goes for > > >>>>> log4j-kotlin > > >>>>>>>> and > > >>>>>>>>>> any other language bindings we might want to do. > > >>>>>>>>>> > > >>>>>>>>>> But for logging-log4j-tools, why? It has no other build > > >>>> requirements > > >>>>>>>> than > > >>>>>>>>>> the main repo. > > >>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>>>>>> On Thu, May 4, 2017 at 5:55 PM, Gary Gregory < > > >>>>> garydgreg...@gmail.com> > > >>>>>>>> wrote: > > >>>>>>>>>>> > > >>>>>>>>>>>>> On Thu, May 4, 2017 at 8:08 AM, Matt Sicker < > > boa...@gmail.com> > > >>>>>>>> wrote: > > >>>>>>>>>>>> > > >>>>>>>>>>>> I think we should really get the other git repos released > > before > > >>>> we > > >>>>>>>> make > > >>>>>>>>>>> a > > >>>>>>>>>>>> 2.9 release. The thing holding that back, in my opinion, is > > >>>>> figuring > > >>>>>>>> out > > >>>>>>>>>>>> how to manage the website and documentation for all these > > >>>> separate > > >>>>>>>>>>> modules > > >>>>>>>>>>>> that aren't even in the same Maven project anymore. > > >>>>>>>>>>> > > >>>>>>>>>>> Which makes it harder to work with... :-( > > >>>>>>>>>>> > > >>>>>>>>>>> Gary > > >>>>>>>>>>> > > >>>>>>>>>>> > > >>>>>>>>>>>> > > >>>>>>>>>>>>> On 4 May 2017 at 09:44, Mikael Ståldal < > > >>>> mikael.stal...@magine.com > > >>>>>> > > >>>>>>>>>>>> wrote: > > >>>>>>>>>>>> > > >>>>>>>>>>>>> I have extracted the SocketServer stuff from log4j-core to > > new > > >>>>>>>>>>>> log4j-server > > >>>>>>>>>>>>> module: > > >>>>>>>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1851 > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> That module is in the new logging-log4j-tools repo. > However, > > >>>> that > > >>>>>>>> repo > > >>>>>>>>>>> is > > >>>>>>>>>>>>> not ready for making a release. Is anyone going to do that > > >>>> before > > >>>>>>>> the > > >>>>>>>>>>> 2.9 > > >>>>>>>>>>>>> release, or should we move the log4j-server module back to > > the > > >>>>> main > > >>>>>>>>>>> repo > > >>>>>>>>>>>>> for the time being? > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> -- > > >>>>>>>>>>>>> [image: MagineTV] > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> *Mikael Ståldal* > > >>>>>>>>>>>>> Senior software developer > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> *Magine TV* > > >>>>>>>>>>>>> mikael.stal...@magine.com > > >>>>>>>>>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | > > >>>> www.magine.com > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> Privileged and/or Confidential Information may be contained > > in > > >>>>> this > > >>>>>>>>>>>>> message. If you are not the addressee indicated in this > > message > > >>>>>>>>>>>>> (or responsible for delivery of the message to such a > > person), > > >>>> you > > >>>>>>>> may > > >>>>>>>>>>>> not > > >>>>>>>>>>>>> copy or deliver this message to anyone. In such case, > > >>>>>>>>>>>>> you should destroy this message and kindly notify the > sender > > by > > >>>>>>>> reply > > >>>>>>>>>>>>> email. > > >>>>>>>>>>>> > > >>>>>>>>>>>> > > >>>>>>>>>>>> > > >>>>>>>>>>>> -- > > >>>>>>>>>>>> Matt Sicker <boa...@gmail.com> > > >>>>>>>>>>> > > >>>>>>>>>>> > > >>>>>>>>>>> > > >>>>>>>>>>> -- > > >>>>>>>>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org > > >>>>>>>>>>> Java Persistence with Hibernate, Second Edition > > >>>>>>>>>>> <https://www.amazon.com/gp/product/1617290459/ref=as_li_ > > >>>>>>>>>>> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459& > > >>>>>>>>>>> linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b > > >>>>>>>> 1af9fe6a2b8> > > >>>>>>>>>>> > > >>>>>>>>>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l= > > >>>>>>>> am2&o=1&a= > > >>>>>>>>>>> 1617290459> > > >>>>>>>>>>> JUnit in Action, Second Edition > > >>>>>>>>>>> <https://www.amazon.com/gp/product/1935182021/ref=as_li_ > > >>>>>>>>>>> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021& > > >>>>>>>>>>> linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac > > >>>>>>>> 902a24de418%22 > > >>>>>>>>>>> > > >>>>>>>>>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l= > > >>>>>>>> am2&o=1&a= > > >>>>>>>>>>> 1935182021> > > >>>>>>>>>>> Spring Batch in Action > > >>>>>>>>>>> <https://www.amazon.com/gp/product/1935182951/ref=as_li_ > > >>>>>>>>>>> tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951& > > >>>>>>>>>>> linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B% > > >>>>>>>>>>> 7Blink_id%7D%7D%22%3ESpring+Batch+in+Action> > > >>>>>>>>>>> <http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l= > > >>>>>>>> am2&o=1&a= > > >>>>>>>>>>> 1935182951> > > >>>>>>>>>>> Blog: http://garygregory.wordpress.com > > >>>>>>>>>>> Home: http://garygregory.com/ > > >>>>>>>>>>> Tweet! http://twitter.com/GaryGregory > > >>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>>>> -- > > >>>>>>>>>> [image: MagineTV] > > >>>>>>>>>> > > >>>>>>>>>> *Mikael Ståldal* > > >>>>>>>>>> Senior software developer > > >>>>>>>>>> > > >>>>>>>>>> *Magine TV* > > >>>>>>>>>> mikael.stal...@magine.com > > >>>>>>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | > > www.magine.com > > >>>>>>>>>> > > >>>>>>>>>> Privileged and/or Confidential Information may be contained in > > >> this > > >>>>>>>>>> message. If you are not the addressee indicated in this > message > > >>>>>>>>>> (or responsible for delivery of the message to such a person), > > you > > >>>>> may > > >>>>>>>> not > > >>>>>>>>>> copy or deliver this message to anyone. In such case, > > >>>>>>>>>> you should destroy this message and kindly notify the sender > by > > >>>> reply > > >>>>>>>>>> email. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>> > > >>>>>>> > > >>>>>>> > > >>>>>>> > > >>>>>>> -- > > >>>>>>> [image: MagineTV] > > >>>>>>> > > >>>>>>> *Mikael Ståldal* > > >>>>>>> Senior software developer > > >>>>>>> > > >>>>>>> *Magine TV* > > >>>>>>> mikael.stal...@magine.com > > >>>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com > > >>>>>>> > > >>>>>>> Privileged and/or Confidential Information may be contained in > this > > >>>>>>> message. If you are not the addressee indicated in this message > > >>>>>>> (or responsible for delivery of the message to such a person), > you > > >> may > > >>>>> not > > >>>>>>> copy or deliver this message to anyone. In such case, > > >>>>>>> you should destroy this message and kindly notify the sender by > > reply > > >>>>>>> email. > > >>>>>>> > > >>>>>> > > >>>>>> > > >>>>>> > > >>>>>> -- > > >>>>>> [image: MagineTV] > > >>>>>> > > >>>>>> *Mikael Ståldal* > > >>>>>> Senior software developer > > >>>>>> > > >>>>>> *Magine TV* > > >>>>>> mikael.stal...@magine.com > > >>>>>> Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com > > >>>>>> > > >>>>>> Privileged and/or Confidential Information may be contained in > this > > >>>>>> message. If you are not the addressee indicated in this message > > >>>>>> (or responsible for delivery of the message to such a person), you > > may > > >>>>> not > > >>>>>> copy or deliver this message to anyone. In such case, > > >>>>>> you should destroy this message and kindly notify the sender by > > reply > > >>>>>> email. > > >>>>> > > >>>> > > >>> > > >>> > > >>> > > >>> -- > > >>> Matt Sicker <boa...@gmail.com> > > >> > > >> > > >> > > > > > > > > > -- > Matt Sicker <boa...@gmail.com> >