incubator-cassandra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eric Evans <eev...@rackspace.com>
Subject Re: Thoughts on issue 697 (Mitigate unpublished dependencies when using Cassandra with Maven)
Date Fri, 09 Apr 2010 02:54:14 GMT
On Thu, 2010-04-08 at 17:42 -0700, Hannes Schmidt wrote:
> In a nutshell, I disagree with the decision to resolve
> 
> https://issues.apache.org/jira/browse/CASSANDRA-697
> 
> as Won't Fix. Here's why:
> 
> One of the central motivations behind Maven was to once and for all
> get rid
> of binary dependencies in source repositories. You, the Cassandra
> committers
> operating under the Apache umbrella should have no difficulty getting
> those
> lib/*.jar dependencies into the official repository. It shouldn't take
> more
> than half an hour to "mvn deploy" a handful of jars. On that note, it
> should
> be a no-brainer to actually deploy the *Apache* Cassandra JAR to the
> *Apache* Maven repository.

Are you suggesting that we push cassandra into the maven repo with
unsatisfiable dependencies? How will that satisfy your dependency on
cassandra?

> Sorry for the rant but taking shortcuts like this forces every Maven
> user
> down the stream to either do the work for you, e.g to deploy the
> Cassandra
> JAR and its dependencies to their local repository or take the very
> same
> shortcut. The Hector client, for example, has a dependency on the
> Thrift and
> Cassandra JARs and it takes the shortcut of having both JARs in the
> repository. If I want to use the client in my own Maven-built project,
> I
> can't do so without manually deploying those two JARs along with the
> Hector
> JAR to my local repository.

It might be reasonable to break out the bits of cassandra that are
useful to libraries like Hector, and put them into a separate jar which
doesn't rely on the problematic libs... except that Thrift is one of
those problematic libs (it isn't in a repo). :/

> To add fuel to the fire, I don't think that there is a real need for
> two coexisting build systems for Cassandra (I'm speaking of Ant/Ivy
> and
> Maven) but even if you decide to go with Ant/Ivy, the resulting
> artifacts
> should all be accessible in a public Maven repository. This is pretty
> much a
> convention for any OS project of Cassandra's reach and maturity. 

Which reminds me, you might want to have a look at
https://issues.apache.org/jira/browse/CASSANDRA-850.

-- 
Eric Evans
eevans@rackspace.com


Mime
View raw message