incubator-easyant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jean-Louis Boudart <jeanlouis.boud...@gmail.com>
Subject Re: Third Party Jars
Date Wed, 09 Mar 2011 07:31:07 GMT
2011/3/9 Stefan Bodewig <bodewig@apache.org>
>
> On 2011-03-09, Jean-Louis Boudart wrote:
>
> > I'll try to clarify some points.
>
> Thank you.
>
> > EasyAnt core it self depends on Apache Ant, Apache Ivy and antcontrib.
>
> > Those dependencies came from repository/third-party-lib for conveniance.
>
> > Then come the problem of plugins. As you should know easyant a plugin
based
> > architecture. A plugin is a reusable ant script answering a given need
such
> > as "compile-java" or "package-jar". Some plugins additionnal relies on
> > existing ant tasks such as :
>
> >    - Checkstyle
>
> Such a plugin cannot be distributed as ASF software since it is in
> Categoy X - apache-extras.org might be an option.

Just to be sure is this kind of plugin really forbidden in ASF  ?
I guess the plugin basically uses checkstyle ant task and require a given
version of checkstyle as a dependency.
For example ant's build.xml uses checkstyle task, isn't it? The problem is
probably about distributing checkstyle jars.

To resolve plugins and their dependecies we rely on Apache Ivy. So we can
have multiple repository.
My idea would be to have at least 3 repository :
one local shipped in easyant distribution and storing core plugins
(compile-java, package-jar, etc...)
one official public repository ideally hosted @apache (hosting all easyant
plugins)
and maven public repository (where easyant will fetch plugin dependencies)
So plugins could be released under apache licenses and specify in their
dependencies such as :
<dependency org="checkstyle" module="checkstyle" revision="xxx"/>
Plugin dependencies will then be downloaded on the fly at runtime if end
users use this kind of plugins.

What do you think ?


>
>
> >    - Antunit
> >    - compile-groovy (using groovy.jar)
> >    - compile-scala (usign scala-compiler.jar)
> >    - scm-svn (using svnant.jar)
> >    - cobertura
> >    - emma
> >    - ogsi-bundle (using bnd.jar)
> >    - jetty-deploy (using jetty.jar)
>
> We'll need to review their licenses as well.
>
> > Like i mentioned in an other thread, between 0.7 and 0.8 there was
around 6
> > month, this was mostly due to new additionnal  plugin (maven-publication
for
> > example). Those additionnal plugin should not "lock" the release. Having
an
> > online repository should allow us to make release of plugins
independently
> > of easyant core (except if a plugin needs to use a recent feature of
> > easyant-core).
>
> Having different release cycles for core and plugins seems to be a good
> idea.
Then, we need to clarify how we could host plugins in a public repository. I
ll open a thread on this.

-- 
Jean Louis Boudart
Independent consultant
Project Lead http://www.easyant.org

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message