From notifications-return-11359-apmail-ant-notifications-archive=ant.apache.org@ant.apache.org Thu Feb 04 00:35:08 2010 Return-Path: Delivered-To: apmail-ant-notifications-archive@minotaur.apache.org Received: (qmail 99168 invoked from network); 4 Feb 2010 00:35:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 4 Feb 2010 00:35:07 -0000 Received: (qmail 79207 invoked by uid 500); 4 Feb 2010 00:35:07 -0000 Delivered-To: apmail-ant-notifications-archive@ant.apache.org Received: (qmail 79145 invoked by uid 500); 4 Feb 2010 00:35:07 -0000 Mailing-List: contact notifications-help@ant.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ant.apache.org Delivered-To: mailing list notifications@ant.apache.org Received: (qmail 79136 invoked by uid 99); 4 Feb 2010 00:35:07 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Feb 2010 00:35:07 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Feb 2010 00:34:53 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 89BB7238897F; Thu, 4 Feb 2010 00:34:30 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: svn commit: r906303 [2/3] - /ant/core/trunk/docs/external.html Date: Thu, 04 Feb 2010 00:34:30 -0000 To: notifications@ant.apache.org From: antoine@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100204003430.89BB7238897F@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Added: ant/core/trunk/docs/external.html URL: http://svn.apache.org/viewvc/ant/core/trunk/docs/external.html?rev=906303&view=auto ============================================================================== --- ant/core/trunk/docs/external.html (added) +++ ant/core/trunk/docs/external.html Thu Feb 4 00:34:29 2010 @@ -0,0 +1,7446 @@ + + + + + + + + + Apache Ant - External Tools and Tasks + + + + + + + + +
+ + + + + + +
Apache Ant siteApache Ant logo +
+ + + + + + + + + + + + + + +
+ + + + +
+ the Apache Ant site +
+
+
+
+ +
+ + + + + +
+ + + + +
Home
+
+ + + + +
Projects
+
+
+ +
+ + +
 
+
+
+

External Tools and Tasks

+

+ + External Tools and Tasks +

+

This page lists external resources for Apache Ant: Tasks, Compiler Implementations, + IDE integration + tools, Source Control + Systems, loggers, you name it. If you've written + something that should be included, please post all relevant + information to one of the mailing lists. For details, see the + FAQ.

+

Nothing listed here is directly supported by the Ant + developers (therefore 'external tools and tasks'), + if you encounter any problems with them, please use + the contact information.

+

+ + Tasks +

+

+ + AJC +

+

AspectJ is an + aspect-oriented extension to Java. This task compiles a + source tree using the AspectJ compiler -- AJC.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.3 +
+ URL: + + http://www.eclipse.org/aspectj/ +
+ Contact: + + project mailing lists +
+ License: + + Eclipse Public License +
+

+ + Anakia +

+

Actually, Anakia is more than just an Ant task, it is a an + XML transformation tool based on JDOM, Velocity and Ant.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.2 and later +
+ URL: + + http://velocity.apache.org/anakia/devel/ +
+ Contact: + + Velocity mailing lists +
+ License: + + Apache License 2.0 +
+

+ + Andariel +

+

Andariel is a set of tasks designed to help the generation of HTML + (and other markup languages) pages from Ant. Includes a XPath processor, + an image information retriever, and others.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5.4 and newer +
+ URL: + + http://andariel.uworks.net/ +
+ Contact: + + josep DOT rio AT uworks DOT net +
+ License: + + Apache Software License 1.1 +
+

+ + ant4eclipse +

+

ant4eclipse provides a set of Ant tasks to make several + configurations from the Eclipse IDE available in Ant + buildscripts. The tasks are aimed to avoid redundancy between + Eclipse and Ant configurations in order to build small but + powerful build systems for the continuous integration + process

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.1 and higher +
+ URL: + + http://ant4eclipse.sf.net +
+ Contact: + + + ant4eclipse user mailing list + +
+ License: + + Sun Public License +
+

+ + Antcount +

+

Antcount is a set of filters that can be used to gather statistics + from files or resources. It is mainly used for log files analysis. + It allows to:

    +
  • count inputs (lines, strings)
  • +
  • count occurrences of each input
  • +
  • calculate average, max and min values of floats in input
  • +
+ Antcount also includes some useful filters to:
    +
  • stop filtering: read everything but write nothing
  • +
  • echo input to the console or to a file. This allows users to create + several files at once
  • +
  • split the stream in two for parallel processing
  • +
+

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.2 and higher +
+ URL: + + http://antcount.sourceforge.net/ +
+ Contact: + + Patrick Martin +
+ License: + + LGPL +
+

+ + AntDoc +

+

AntDoc is a tool that generates HTML documentation from Ant + buildfiles; the generated HTML is inspired from what javadoc + yields. AntDocGUI offers a simple Ant target launcher named + AntDoc GUI. Ant targets may be launched from the generated + AntDoc HTML pages. Integration to various IDEs is in + progress.

+

AntDoc can be run via an Ant task, AntDoc GUI can be run + via an Ant task, or via a JVM launch.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4.1 and higher +
+ URL: + + http://antdoc.free.fr/ +
+ Contact: + + Edouard Mercier +
+ License: + + Apache Software License 1.1 +
+

+ + AntDoclet +

+

AntDoclet is a tool to automatically generate documentation out of + your Ant Tasks' source code.

+

It is implemented as a Javadoc doclet, and generates reference + documentation and other deliverables from the source code of your + custom Ant Tasks/Types.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6+ (not tested on earlier versions) +
+ URL: + + http://antdoclet.neuroning.com/ +
+ Contact: + + Fernando Dobladez +
+ License: + + GPL +
+

+ + Anteater +

+

Anteater is a set of Ant tasks for the functional testing of websites + and web services (functional testing being; hit a URL and ensure the + response meets certain criteria). Can test HTTP params, response + codes, XPath, regexp and Relax NG expressions. Includes HTML reporting + (based on junitreport) and a hierarchical grouping system for quickly + configuring large test scripts. +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5 and later +
+ URL: + + http://aft.sourceforge.net/ +
+ Contact: + + developer + mailing list +
+ License: + + Apache Software License 1.1 +
+

+ + AntForm +

+

Provides a java/swing form-based input scheme for + configuring ant properties and launching ant targets.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.2. +
+ URL: + + http://antforms.sourceforge.net/ +
+ Contact: + + René Ghosh +
+ License: + + GNU General Public License +
+

+ + Antmerge +

+

Provides simple inheritance between ant files

+

As noted on the website, this project is deprected.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Tested with 1.5. Should work with all versions. +
+ URL: + + http://www.russet.org.uk/antmerge.html +
+ Contact: + + Phillip Lord +
+ License: + + GNU Lesser General Public License +
+

+ + Antomology +

+

Antomology is an analysis tool suite for Ant. It includes:

    +
  • StatisticsListener - an Ant BuildListener which can be used to gather + statistics while an Ant build is executed. Statistics on the targets + and tasks executed are written to the console after the build completes.
  • +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + unknown +
+ URL: + + http://antomology.codehaus.org +
+ Contact: + + contact page +
+ License: + + Apache License V2.0 +
+

+ + AntPrettyBuild +

+

+ Ant Pretty Build is a tool to easily show and run Ant buildfiles directly from + within a browser window. It consists of a single XSL file that will generate, + on the fly, in the browser, from the .xml buildfile, a pretty interface showing + project name, description, properties and targets, etc. sorted or unsorted, + allowing to load/modify/add properties, run the whole project, or run selected + set of targets in a specific order, with the ability to modify logger/logfile, + mode and add more libs or command line arguments. +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + All Ant versions +
+ URL: + + Ant Pretty Build Homepage +
+ Contact: + + Charbel BITAR +
+ License: + + Apache License V2.0 +
+

+ + AntRunner +

+

AntRunner is an easy to use and free GUI application for running + Ant build files. It's written for .NET so it should run on any Windows + Platform.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6 and newer +
+ URL: + + http://visualdrugs.net/antrunner/ +
+ Contact: + + Andre Fiedler +
+ License: + + GPL +
+

+ + AntSpaces +

+

AntSpaces provides Ant integration with JavaSpaces. This + allows you to coordinate Ant tasks via JavaSpaces, pull out + work units from a JavaSpace for distributed Ant tasks to work + on, and so forth.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5 and later +
+ URL: + + + http://www.oopsconsultancy.com/software/antspaces/ + +
+ Contact: + + antspaces at oopsconsultancy.com +
+ License: + + Apache Software License 1.1 +
+

+ + AntTimerTask +

+

Timer + is task for measuring the time elapsed to complete other + tasks

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6 +
+ URL: + + + http://www.jeckle.de/freeStuff/AntTimerTask/index.html + +
+ Contact: + + mario@jeckle.de +
+ License: + + Lesser GNU Public License +
+

+ + Ant Web Start Task +

+

Ant Web Start Task is an Ant task allowing developers to + package a desktop application as a WAR (Web Application + Archive) to be distributed over the net via Java Web Start

+ + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5 and above +
+ URL: + + http://ant-jnlp-war.sourceforge.net/ +
+ License: + + Apache License 2.0 +
+

+ + AntXtras +

+

A collection of powerful Ant extensions components + organized into five categories: fixture-control, + execution-rules, flow-control, feedback, and helpers.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.5 +
+ URL: + + AntXtras Home +
+ Contact: + + SSMC +
+ License: + + GNU Lesser General Public License (LGPL 2.1) +
+

+ + Build Number +

+

Build Number is a tool to track software artifacts such as files and automatically assign + proper version/build numbers to them. It ensures that two different artifacts will have different + version/build numbers, but identical artifacts/builds will be assigned the same number. It doesn't + take version management away from you and doesn't replace your build process, but rather plugs + into the process and introduces version/build number governance by defining who is in charge of + which part of version number. With Build Number you are still in charge of the head of the version + number. E.g. you may decide to have 4 numbers in your version (major, minor, interface, implementation) + and you want to manage the two first numbers (major and minor). Build Number will take care of the + tedium of managing the last two numbers (interface and implementation).

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Tested with Ant 1.5.4 and 1.6.5 +
+ URL: + + http://www.hammurapi.biz/hammurapi-biz/ef/xmenu/hammurapi-group/products/build-number/ +
+ Contact: + + Project Contact Page +
+ License: + + Commercial +
+

+ + Checkstyle +

+

Checkstyle is a development tool to help programmers write + Java code that adheres to a coding standard. Its purpose is to + automate the process of checking Java code, and to spare + humans of this boring (but important) task.

+

Checkstyle can be run via an Ant task or a command line + utility.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4.1 and later +
+ URL: + + http://checkstyle.sourceforge.net/ +
+ Contact: + + Oliver Burn +
+ License: + + Starting with release 2.0 the license is the GNU + Lesser General Public License. Prior releases were under + the GNU General Public License. +
+

+ + ChownTask +

+

ChownTask is an Ant task to change ownership of files on Unix.

+

Note: As the Sourceforge project site + shows, the last update was on Feb 16 2003. (jhm)

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.3 and up +
+ URL: + + + http://sourceforge.net/projects/chowntask/ + +
+ Contact: + + Wilfred Springer + +
+ License: + + GNU General Public License +
+

+ + CleanImports +

+

Removes unneeded imports. Formats your import + sections. Flags ambiguous imports.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.3 and up +
+ URL: + + http://www.cleanimports.tombrus.nl +
+ Contact: + + Tom Brus +
+ License: + + Apache Software License 1.1 +
+

+ + Clover +

+

Clover is an Ant-based Code Coverage tool. It can be used + seamlessly with Ant-based projects. It provides method, + statement, and branch coverage analysis, and has rich + reporting in XML, HTML or via a Swing GUI.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4.1 or greater +
+ URL: + + http://www.cenqua.com/clover/ +
+ Contact: + + clover-support@cenqua.com +
+ License: + + Commercial, free licenses available for open source + projects. +
+

+ + CMSDeploy +

+

CMSDeploy is + an Apache Ant Task to submit files and templates to Vignette + CMS.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5.1 and later +
+ URL: + + http://cmsdeploy.sourceforge.net +
+ Contact: + + masogato@users.sourceforge.net +
+ License: + + GNU Lesser General Public License +
+

+ + Cocoon Task +

+

This task allows the generation of static web pages and + sites using Apache Cocoon in off-line mode.

+

It allows the configuration information for Cocoon to be + included within the Ant build file, and is thus + able to take advantage of Ant properties.

+

The task shares its code with the Cocoon Command Line, which + means that this task will instantly take + advantage of any new functionality added there.

+ + + + + + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5.3 and above +
+ URL: + + http://cocoon.apache.org +
+ Documentation: + + http://cocoon.apache.org/2.1/userdocs/offline/ant.html +
+ Contact: + + users at cocoon.apache.org +
+ License: + + Apache License 2.0 +
+

+ + Configure +

+

Recursive build support (call ant on every package level, + and only build files in that package or in that package and + everything below) with seperation of source and output.

+

The task generates build files in any subdirectory (except + for CVS-directories) for you. Only place one build.xml file in + the top and call target 'setup' or + 'rescan'.

+

As of 2009-03-06 this site was offline due database problems. So we do not know + if this still longer exist. But you could also try Ants own <subant> task.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.2 and 1.3 +
+ URL: + + http://www.dsdelft.nl/~lemval/ant/ +
+ Contact: + + M.J.P. van Leeuwen +
+ License: + + License derived from Apache Software License 1.1 +
+

+ + CVSGrab +

+

A little CVS client that can be useful when people are + behind corporate firewall that blocks any cvs + communications. It uses the ViewCVS web interface to access + the CVS repository via standard http, and downloads all the + files present in it.

+

It works from the command line or as an Ant task.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.3 or higher +
+ URL: + + http://cvsgrab.sourceforge.net/ +
+ Contact: + + CVSGrab + user mailing list +
+ License: + + LGPL +
+

+ + Dependencies +

+

The dependencies task manages a set of external dependencies which + may be downloaded from a remote repository, + such as ibiblio.org. Uses a local cache to avoid repeated + downloads.

+

Note: While the HttpUnit site is still active, the referenced URL is not available. + You could also try Ivy.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Tested with 1.5.1, should work with 1.4+. +
+ URL: + + http://www.httpunit.org/doc/dependencies.html +
+ Contact: + + Russell Gold +
+ License: + + MIT License +
+

+ + Dependency Finder +

+

Dependency Finder extracts dependencies and OO metrics from + Java class files produced by most Java compilers. It can compute + API differences between versions; no sources needed. It includes + Ant tasks, web, Swing, and command-line interfaces, with XSL + stylesheets for formatting output.

+

You can use it to extract dependencies between packages, classes, + or even methods, or any combination thereof. You can use Perl + regular expressions to filter the information and pinpoint only + what you need. There is even a Web Application version (WAR file) + so a whole group of developers can share a common view.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Tested with 1.5.3, should work with 1.4+. +
+ URL: + + http://depfind.sourceforge.net/ +
+ Contact: + + Jean Tessier +
+ License: + + BSD-like License +
+

+ + Doxygen task +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5 and later +
+ URL: + + http://ant-doxygen.blogspot.com +
+ Contact: + + Karthik A Kumar +
+ License: + + Apache License 2.0 +
+

+ + DTDDoc +

+

DTDDoc is here to help you to document your DTD's efficiently. It is a + straightforward extension of the javadoc concept to the DTD file format.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4 and later +
+ URL: + + http://dtddoc.sourceforge.net/ +
+ Contact: + + Project Mailing List +
+ License: + + X11 (Open Source) +
+

+ + EnvGen +

+

+ EnvGen is an Ant task for generating + different versions of the same file parameterized for different environments (i.e. + development, test, and production). File generation is done using + FreeMarker, a template engine with a full-featured + templating language. +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.5 or higher (not tested on earlier versions) +
+ URL: + + http://www.basilv.com/software +
+ Contact: + + EnvGen Feedback Page +
+ License: + + GPL +
+

+ + EMMA +

+

EMMA is an open-source toolkit for measuring and reporting + Java code coverage. EMMA distinguishes itself from other tools + by going after a unique feature combination: support large-scale + enterprise software development while keeping individual developers + work fast and iterative at the same time.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4 and later +
+ URL: + + http://emma.sourceforge.net/ +
+ Contact: + + Mailinglist +
+ License: + + Common Public License 1.0 +
+

+ + EPP Task +

+

EPP Task is an easy preprocessor ant task. + The next directives are supported: #ifdef, #ifndef, #else, + #endif and #include.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4 and higher +
+ URL: + + + http://sourceforge.net/projects/epptask/ +
+ Contact: + + Dmitriy Rykov +
+ License: + + Apache License 2.0 +
+

+ + FMPP +

+

FMPP is a general-purpose text file preprocessor tool that + uses FreeMarker templates. It is particularly designed for + HTML preprocessor, for the generation of complete (static) + homepages: directory structure that contains HTML-s, image + files, etc. But of course it can be used to generate source + code or whatever text files. FMPP is extendable with Java + classes to pull data from any data sources (XML file, + database, etc.) and embed the data into the generated + files.

+ + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5.1 +
+ URL: + + http://fmpp.sourceforge.net/ +
+ License: + + BSD License +
+

+ + GenJar +

+

Builds a JAR file based on class dependencies rather than simply the contents of a directory

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4 alpha (built after 2001/08/04) and later +
+ URL: + + http://genjar.sourceforge.net/ +
+ Contact: + + Jesse Stockall +
+ License: + + Apache Software License 1.1 +
+

+ + Grand +

+

Grand is a set of tools to create a visual representation of Ant target + dependencies. It works by taking an Ant build file and creating a "dot" file. It + differs from the existing tools by relying on the Ant API rather than XML parsing to + get the dependencies. It includes many advanced features such as filtering or + rendering depending on the target's nature. Also features a SWT based GUI.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6 and later +
+ URL: + + http://www.ggtools.net/grand/ +
+ Contact: + + Christophe Labouisse +
+ License: + + BSD License +
+

+ + Greebo +

+

Greebo is an Ant-task for downloading dependency files + (currently only jars) from a network to a specified directory, + much like Maven. It supports multiple local and remote + repositories with either flat or maven-like structures. It can + read the dependency list from a Maven project file, a + maven-like dependency file, or directly from the build.xml + file.

+

Note: As the Sourceforge project site + shows, the last update was on Mar 12 2003 . + You could also try Ivy. (jhm)

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5 +
+ URL: + + http://greebo.sourceforge.net/ +
+ Contact: + + project mailing lists +
+ License: + + Apache Software License 1.1 +
+

+ + GroboUtils CodeCoverage +

+

The CodeCoverage sub-project of GroboUtils provides a 100% + pure Java code coverage tool. It uses pre-execution class file + recompilation, and generates XML files containing the coverage + statistics. It does not require any advanced VM setup to generate + coverage numbers. +

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.5.1 +
+ URL: + + http://groboutils.sourceforge.net/codecoverage/ +
+ Contact: + + project mailing lists +
+ License: + + MIT License +
+

+ + Hammurapi +

+

Java code review tool. Performs automated code + review. Contains 111 inspectors which check different aspects + of code quality including coding standards, EJB, threading, + ...

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Tested with Ant 1.5.x and 1.6.5 +
+ URL: + + http://www.hammurapi.biz/hammurapi-biz/ef/xmenu/hammurapi-group/products/hammurapi/index.html +
+ Contact: + + Support adress +
+ License: + +   +
+

+ + HelpStudioAnt +

+

This task allows for HelpStudio projects to be created via Ant.

+ + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.6.0 and later +
+ URL: + + http://helpstudioant.sourceforge.net +
+ License: + + GNU General Public License +
+

+ + IDLDepend +

+

idldepend is a task that (re)generates Java sources to be + created from CORBA/IDL files.

+

It parses the IDL file and determines the Java files that + must be generated, taking in account the modifications that + can happen due to command line parameters. If any of the Java + files are missing or older than the source IDL specification, + it launches the specified compiler. The compilers of Orbacus, + Jacorb, OpenORB, Orbix2k and Sun'JDK distributions are + supported.

+

To speed up the process and avoid unnecesary re-parsing, it + keeps the dependencies in intermediate files. This task does + not launch the javac compiler as well, that is, its output are + Java files and not the final bytecode.

+ + + + + + + + + + + + + + + + + +
+ Compatibility: + + Ant 1.4 or later +
+ URL: + + http://www.byteslooser.com/idldepend +
+ Contact: + + byteslooser@gmail.com +
+ License: + + free source, no license restrictions +
+

+ + Image +

+

Image task generates and transforms images. It exposes the + imaging capability available in Java2D, Java Advanced Imaging, + ImageIO, etc., as set of nested elements.

+

Image transformations such as "resize" + (scale),"overlay" (one image on another), + "border" (add a border), "text" (text on + image), "crop" (a sub-image of a bigger image), [... 5122 lines stripped ...]