+1 on having only a single build system. Maintaining two of them is a
useless burden.

--
Gianmarco


On 23 December 2013 16:04, Matt Franklin <[email protected]> wrote:

> On Sat, Dec 21, 2013 at 12:14 AM, James Xu <[email protected]> wrote:
>
> > Leiningen is the best build tool for Clojure projects, while Maven is the
> > first class citizen in ASF Infrastructure. Can we keep them both? Just
> like
> > Nathan’s storm-starter: https://github.com/nathanmarz/storm-starter ,
> the
> > project itself is managed by Leiningen, but storm user who knows only
> maven
> > can use the
> > https://github.com/nathanmarz/storm-starter/blob/master/m2-pom.xml there
> > to build.
> >
>
> The concerns Ted has mostly stem from the activities that need to happen
> during the release process.  It is technically possible to build with
> Leiningen and only do release builds with Maven, but I would recommend
> against having two build strategies for the project.
>
>
> >
> > On 2013年12月21日, at 上午5:26, Ted Dunning <[email protected]> wrote:
> >
> > > The difference between Maven and Leiningen in the Apache context hasn't
> > > even really come into view.  When it comes to IP clearance, packaging
> in
> > > standard ways, signing and interfacing with Nexus, Maven is going to be
> > > worlds easier.  It isn't so much about doing the things that most
> > > developers know and care about better, it is about doing the things
> that
> > > most developers don't care about, but which are *really* important to
> get
> > > right.  Because few developers care, very few developers will get these
> > > things right.  Maven helps with this in two ways.  First, many Apache
> > > projects use maven so there is a tribal knowledge available to help
> out.
> > > Second, Maven incorporates community development into normal practice.
> > > This means that if one project makes project signing better, everybody
> > > wins.  This community focus means that enough resources actually get
> > spent
> > > on the frictional parts of releasing code to make them much less
> painful.
> > >
> > >
> > >
> > >
> > >
> > > On Fri, Dec 20, 2013 at 12:29 PM, Brian O'Neill <[email protected]
> > >wrote:
> > >
> > >> +1 for a switch to maven
> > >>
> > >> I¹m all for lowering the hurdles for other developers to get involved.
> > >>
> > >> By eliminating the zeromq dependency and converting to maven, we¹ll
> > lower
> > >> those barriers, and increase the base of people capable of/willing to
> > >> contribute.
> > >>
> > >> (the cost of submitting a small fix/enhancement right now is too high
> > for
> > >> the casual java developer)
> > >>
> > >> -brian
> > >>
> > >> ---
> > >> Brian O'Neill
> > >> Chief Architect
> > >> Health Market Science
> > >> The Science of Better Results
> > >> 2700 Horizon Drive € King of Prussia, PA € 19406
> > >> M: 215.588.6024 € @boneill42 <http://www.twitter.com/boneill42>  €
> > >> healthmarketscience.com
> > >>
> > >> This information transmitted in this email message is for the intended
> > >> recipient only and may contain confidential and/or privileged
> material.
> > If
> > >> you received this email in error and are not the intended recipient,
> or
> > >> the person responsible to deliver it to the intended recipient, please
> > >> contact the sender at the email above and delete this email and any
> > >> attachments and destroy any copies thereof. Any review,
> retransmission,
> > >> dissemination, copying or other use of, or taking any action in
> reliance
> > >> upon, this information by persons or entities other than the intended
> > >> recipient is strictly prohibited.
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > >> On 12/20/13, 3:19 PM, "P. Taylor Goetz" <[email protected]> wrote:
> > >>
> > >>> I was hoping not to have to ask this question, since it¹s likely to
> > start
> > >>> a heated debate. But here goesŠ
> > >>>
> > >>> How would Storm developers feel about switching the build system from
> > >>> Leiningen to Maven?
> > >>>
> > >>> This has nothing to do with personal preference (I¹m fine with
> > either). I
> > >>> ask in the context of release management and integration with the ASF
> > >>> infrastructure.
> > >>>
> > >>> I know Leiningen is very concise (since it uses clojure) and Maven is
> > >>> often looked at as a ³mess of xml². And there are a lot of other
> > >>> differences that people feel passionate about. So I¹d like to put
> > ³minor²
> > >>> differences aside for a minute and focus on a few points that are
> > >>> important from a release management perspective.
> > >>>
> > >>>
> > >>> 1. ASF infrastructure support
> > >>>
> > >>> This is probably the biggest factor. From what I can tell (I could be
> > >>> wrong) Storm is the first ASF project to use Clojure and Leiningen,
> so
> > it
> > >>> is not well supported from an infrastructure perspective. For
> example,
> > >>> although there is a Leiningen plugin for Jenkins, it¹s not installed
> on
> > >>> builds.apache.org, so we¹d have to ask INFRA to install it which
> could
> > >>> take a long time. To work around that, the build would have to do a
> > >>> temporary install of Leiningen with each build. We¹d probably have to
> > add
> > >>> a bunch of support scripts as well to do things like detect test
> > >>> failures, etc.
> > >>>
> > >>> Maven on the other hand is pretty much a first class citizen in terms
> > of
> > >>> ASF infrastructure, and using Maven makes it easy to build/sign
> > releases,
> > >>> stage to Sonatype, etc. There are a wealth of plugins as well that
> > >>> integrate well with infra for such things as publishing docs, project
> > >>> websites, etc.
> > >>>
> > >>> 2. Developer productivity
> > >>> One thing lot of people seem to like about Lieningen is the ability
> to
> > >>> quickly bring up a REPL and start hacking away. For this experiment,
> I
> > >>> used to the clojure maven plugin
> > >>> (https://github.com/talios/clojure-maven-plugin) and found it (for
> > me) to
> > >>> be on par with Leiningen. To bring up a REPL you just type:
> > >>>
> > >>> `mvn clojure:repl`
> > >>>
> > >>>
> > >>> To do a comparison, I put together a quick and dirty experimental
> > branch
> > >>> with Leiningen replaced with Maven:
> > >>>
> > >>> https://github.com/ptgoetz/incubator-storm/tree/maven-test
> > >>>
> > >>> I¹d encourage anyone to check it out play around to see what
> developing
> > >>> Storm with Maven would be like.
> > >>>
> > >>>
> > >>> I¹d like to hear opinions from other committers and developers. If
> > >>> switching to Maven is something we want to do, I¹ll volunteer to do
> the
> > >>> work.
> > >>>
> > >>> Thanks,
> > >>>
> > >>> Taylor
> > >>>
> > >>>
> > >>
> > >>
> > >>
> >
> >
>

Reply via email to