ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nick Chalko <n...@chalko.com>
Subject Proposal: Ant AntLet(s) : Subproject or New Feature
Date Tue, 04 Nov 2003 07:39:38 GMT
http://nagoya.apache.org/wiki/apachewiki.cgi?AntProjectPages/AntletProposal

= (0) rationale =

With Ant 1.6 there are new features of <import> and <macrodef> that 
support re-use. Still, however, Ant is a framework/toolkit for building, 
but it does not provide any out-of-the-box build solution. Simple tasks 
are repeated many fold by ant users, and re-use would improve community 
benefit.

A solution is needed for building java projects, creating 
JARs/distributions, and so forth. If these solutions (part include, part 
macrodef, part normal ant tasks, part properties) are called "antlets", 
then a standard set of antlets ought be provided and maintain by the ant 
community.

Ant 1.6 has the technologies in place to make antlets a viable (and 
configurable) addition to ant.

== (0.1) criteria ==

Meritocracy:

Community:
 
Alignment:

Scope:

== (0.2) warning signs ==

The sponsors and core developers are seasoned developers with a history 
of Open Source Development, and are avid Ant users.

* Nick Chalko is a memeber of the Jakarta Gump project, has contributed 
to Ant, and on the PMC of Krysalis.
* Adam Jack is spearheading the Jakarta Gump rewrite in Python, and is 
on the PMC of Krysalis.

= (1) scope of the subproject =

* AntLet: A technology framework for antlets (including 
development/debugging/maintenance)
* StandardAntLets: A standard set of antlets for re-usable tasks

== Overlap ==

Antlet are "AntLibs written in Ant, not Java". An implmentation would 
likely leverage <include and <macrodef (and other parts of Ant 1.6) it 
is not attempting to be replacement. AntLibs and <taskdef allow for Ant 
tasks to be included/called, and Antlets are attempt to formalize this 
for Ant script. Antlets communicate via properties/types. [Note: 
<include is a powerful new feature in Ant, and antlets is primarily 
this, plus some conventions.]

AntLet has potential overlap with Maven, because some antlets could deal 
with build aspects, that Maven provides. That said, '' Maven's primary 
goal is to allow a developer to comprehend the complete state of a 
development effort in the shortest period of time.''  This is 
accomplised by ''using its project object model (POM) and a single set 
of Ant build files that are shared by all projects using Maven thus 
providing a uniform build system''. Antlets takes a more conservative 
approach, staying closer to the Ant Feel.  Antlets do not rely on a 
Project Object Model, but use standard ant properties.  Antlets are 
desinged to be plugged into existing build.xml files as needed. 
Theoretically Maven could leverage Antlets or Antlets call Maven plugins.

== Not in Scope ==

* Project Metadata

= (2) identify the initial source from which the subproject is to be 
populated =

The Krysalis antlib project has a set of standard ant targets that are 
suitable for conversion to antlets.

* http://cvs.sourceforge.net/viewcvs.py/krysalis/krysalis-antlibs/
* http://cvs.sourceforge.net/viewcvs.py/krysalis/krysalis-antlibs-sandbox/

An ImportAntletTask is available at
* 
http://cvs.sourceforge.net/viewcvs.py/metamorphosis/centipede2/src/java/org/krysalis/centipede2/ant/ImportAntletTask.java?view=markup

= (3) identify the ASF resources to be created =

* Sub-project or sub-directory on Ant website
* cvs module  (antlets)
* mailing list  (antlets)

= (4) identify the initial set of committers =

* All Ant Committers
* Nick Chalko (nickchalko@apache.org)
* Adam Jack (ajack@apache.org)

These would be the core developers initially "responsible" of the 
project, that are willing to actively help.

= (5) identify apache sponsoring individual =

* Nick Chalko (nickchalko@apache.org)
* Adam Jack (ajack@apache.org)

= (6) open issues for discussion =

* The name is still to be defined. AntLets is a placeholder for now.




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Mime
View raw message