ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brett Porter <>
Subject Re: suggestion refactor SCM
Date Thu, 29 Sep 2005 01:44:53 GMT
On 9/29/05, Kev Jackson <> wrote:
> Just a worry about dependencies.  If Ant has to rely on other code
> from within maven for a set of maven plugins to run, we end up with a
> horrible interdependency (Maven needs Ant <-> Ant needs some % of
> Maven) just to compile ant.  Could get nasty.  But I agree if the
> work is there and the code can be taken and made common between
> projects, why not?

Mavne, in general, doesn't need ant. Of course, ant tasks in this code
would require ant, but if they are here I assumed they would be an
antlib, not a part of the ant build.

> (When you first replied Brett, I checked out the source in svn web
> thingy and I saw a fair bit of codehaus imports - I personally don't
> have any good experience (as a user) of anything from codehaus so I'm
> wary of that code, but you obviously have a more in depth view)

The main part should only require plexus-utils, which we are trying to
migrate to unify under commons-exec and commons-io.

> My thoughts were that in the future you'd download a base-ant, and
> then depending on the SCM you use you'd download the scm-provider-
> ant.jar
> eg
> base-ant1.8.jar + svn-ant.jar
> Each antlib is going to be tiny compared to the amount you have to
> download for all SCM functionality that we currently have (I'm still
> on dial-up here so download speed and size of code is important to
> me :) )

All the providers together aren't that large, though you do need the
option to add other providers later.

> The hard part is defining a consistent interface which is applicable
> to all SCM systems, without dropping down to lowest common denominator.

Yep, we've held some discussions around this and there is still some
work to do to get to a good common api. Other things particular to an
SCM should then be exposed by extensions.

- Brett

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message