From e458b498824ab0ecf898503bdc8e682dfc272ce8 Mon Sep 17 00:00:00 2001 From: wisberg Date: Wed, 11 May 2005 08:40:10 +0000 Subject: Ant 1.6.3 (again? hmm.) --- lib/ant/INSTALL | 2 + lib/ant/KEYS | 310 +++ lib/ant/LICENSE | 203 ++ lib/ant/LICENSE.dom | 71 + lib/ant/LICENSE.sax | 20 + lib/ant/LICENSE.xerces | 56 + lib/ant/NOTICE | 15 + lib/ant/README | 70 + lib/ant/TODO | 9 + lib/ant/WHATSNEW | 2901 ++++++++++++++++++++++++++ lib/ant/bin/ant.cmd | 92 + lib/ant/bin/antenv.cmd | 99 + lib/ant/bin/envset.cmd | 130 ++ lib/ant/bin/runrc.cmd | 59 + lib/ant/etc/ant-bootstrap.jar | Bin 0 -> 15988 bytes lib/ant/etc/changelog.xsl | 147 ++ lib/ant/etc/checkstyle/checkstyle-frames.xsl | 293 +++ lib/ant/etc/checkstyle/checkstyle-text.xsl | 33 + lib/ant/etc/checkstyle/checkstyle-xdoc.xsl | 129 ++ lib/ant/etc/coverage-frames.xsl | 496 +++++ lib/ant/etc/jdepend-frames.xsl | 485 +++++ lib/ant/etc/jdepend.xsl | 275 +++ lib/ant/etc/junit-frames-xalan1.xsl | 716 +++++++ lib/ant/etc/junit-frames.xsl | 712 +++++++ lib/ant/etc/junit-noframes.xsl | 461 ++++ lib/ant/etc/log.xsl | 210 ++ lib/ant/etc/maudit-frames.xsl | 510 +++++ lib/ant/etc/mmetrics-frames.xsl | 1033 +++++++++ lib/ant/etc/tagdiff.xsl | 177 ++ lib/ant/lib/README | 14 + lib/ant/lib/ant-antlr.jar | Bin 0 -> 5667 bytes lib/ant/lib/ant-apache-bcel.jar | Bin 0 -> 8617 bytes lib/ant/lib/ant-apache-bsf.jar | Bin 0 -> 12597 bytes lib/ant/lib/ant-apache-log4j.jar | Bin 0 -> 3022 bytes lib/ant/lib/ant-apache-oro.jar | Bin 0 -> 48034 bytes lib/ant/lib/ant-apache-regexp.jar | Bin 0 -> 3724 bytes lib/ant/lib/ant-apache-resolver.jar | Bin 0 -> 4082 bytes lib/ant/lib/ant-commons-logging.jar | Bin 0 -> 3864 bytes lib/ant/lib/ant-commons-net.jar | Bin 0 -> 35303 bytes lib/ant/lib/ant-icontract.jar | Bin 0 -> 9721 bytes lib/ant/lib/ant-jai.jar | Bin 0 -> 21359 bytes lib/ant/lib/ant-javamail.jar | Bin 0 -> 6761 bytes lib/ant/lib/ant-jdepend.jar | Bin 0 -> 8160 bytes lib/ant/lib/ant-jmf.jar | Bin 0 -> 6605 bytes lib/ant/lib/ant-jsch.jar | Bin 0 -> 22726 bytes lib/ant/lib/ant-junit.jar | Bin 0 -> 74237 bytes lib/ant/lib/ant-launcher.jar | Bin 0 -> 9180 bytes lib/ant/lib/ant-netrexx.jar | Bin 0 -> 9998 bytes lib/ant/lib/ant-nodeps.jar | Bin 0 -> 420930 bytes lib/ant/lib/ant-starteam.jar | Bin 0 -> 35472 bytes lib/ant/lib/ant-stylebook.jar | Bin 0 -> 2328 bytes lib/ant/lib/ant-swing.jar | Bin 0 -> 6763 bytes lib/ant/lib/ant-trax.jar | Bin 0 -> 68841 bytes lib/ant/lib/ant-vaj.jar | Bin 0 -> 49742 bytes lib/ant/lib/ant-weblogic.jar | Bin 0 -> 14363 bytes lib/ant/lib/ant-xalan1.jar | Bin 0 -> 4465 bytes lib/ant/lib/ant-xslp.jar | Bin 0 -> 2244 bytes lib/ant/lib/ant.jar | Bin 717666 -> 1033496 bytes lib/ant/lib/junit.jar | Bin 0 -> 121070 bytes lib/ant/lib/xercesImpl.jar | Bin 831473 -> 1010675 bytes lib/ant/lib/xml-apis.jar | Bin 108484 -> 124724 bytes lib/ant/welcome.html | 352 ++++ 62 files changed, 10080 insertions(+) create mode 100644 lib/ant/INSTALL create mode 100644 lib/ant/KEYS create mode 100644 lib/ant/LICENSE create mode 100644 lib/ant/LICENSE.dom create mode 100644 lib/ant/LICENSE.sax create mode 100644 lib/ant/LICENSE.xerces create mode 100644 lib/ant/NOTICE create mode 100644 lib/ant/README create mode 100644 lib/ant/TODO create mode 100644 lib/ant/WHATSNEW create mode 100644 lib/ant/bin/ant.cmd create mode 100644 lib/ant/bin/antenv.cmd create mode 100644 lib/ant/bin/envset.cmd create mode 100644 lib/ant/bin/runrc.cmd create mode 100644 lib/ant/etc/ant-bootstrap.jar create mode 100644 lib/ant/etc/changelog.xsl create mode 100644 lib/ant/etc/checkstyle/checkstyle-frames.xsl create mode 100644 lib/ant/etc/checkstyle/checkstyle-text.xsl create mode 100644 lib/ant/etc/checkstyle/checkstyle-xdoc.xsl create mode 100644 lib/ant/etc/coverage-frames.xsl create mode 100644 lib/ant/etc/jdepend-frames.xsl create mode 100644 lib/ant/etc/jdepend.xsl create mode 100644 lib/ant/etc/junit-frames-xalan1.xsl create mode 100644 lib/ant/etc/junit-frames.xsl create mode 100644 lib/ant/etc/junit-noframes.xsl create mode 100644 lib/ant/etc/log.xsl create mode 100644 lib/ant/etc/maudit-frames.xsl create mode 100644 lib/ant/etc/mmetrics-frames.xsl create mode 100644 lib/ant/etc/tagdiff.xsl create mode 100644 lib/ant/lib/README create mode 100644 lib/ant/lib/ant-antlr.jar create mode 100644 lib/ant/lib/ant-apache-bcel.jar create mode 100644 lib/ant/lib/ant-apache-bsf.jar create mode 100644 lib/ant/lib/ant-apache-log4j.jar create mode 100644 lib/ant/lib/ant-apache-oro.jar create mode 100644 lib/ant/lib/ant-apache-regexp.jar create mode 100644 lib/ant/lib/ant-apache-resolver.jar create mode 100644 lib/ant/lib/ant-commons-logging.jar create mode 100644 lib/ant/lib/ant-commons-net.jar create mode 100644 lib/ant/lib/ant-icontract.jar create mode 100644 lib/ant/lib/ant-jai.jar create mode 100644 lib/ant/lib/ant-javamail.jar create mode 100644 lib/ant/lib/ant-jdepend.jar create mode 100644 lib/ant/lib/ant-jmf.jar create mode 100644 lib/ant/lib/ant-jsch.jar create mode 100644 lib/ant/lib/ant-junit.jar create mode 100644 lib/ant/lib/ant-launcher.jar create mode 100644 lib/ant/lib/ant-netrexx.jar create mode 100644 lib/ant/lib/ant-nodeps.jar create mode 100644 lib/ant/lib/ant-starteam.jar create mode 100644 lib/ant/lib/ant-stylebook.jar create mode 100644 lib/ant/lib/ant-swing.jar create mode 100644 lib/ant/lib/ant-trax.jar create mode 100644 lib/ant/lib/ant-vaj.jar create mode 100644 lib/ant/lib/ant-weblogic.jar create mode 100644 lib/ant/lib/ant-xalan1.jar create mode 100644 lib/ant/lib/ant-xslp.jar create mode 100644 lib/ant/lib/junit.jar create mode 100644 lib/ant/welcome.html (limited to 'lib/ant') diff --git a/lib/ant/INSTALL b/lib/ant/INSTALL new file mode 100644 index 000000000..83c11675a --- /dev/null +++ b/lib/ant/INSTALL @@ -0,0 +1,2 @@ +For installation instructions see the manual in the docs subdirectory +or online at . diff --git a/lib/ant/KEYS b/lib/ant/KEYS new file mode 100644 index 000000000..2be9dfdac --- /dev/null +++ b/lib/ant/KEYS @@ -0,0 +1,310 @@ +This file contains the PGP keys of various developers. + +Users: pgp < KEYS + gpg --import KEYS +Developers: + pgp -kxa and append it to this file. + (pgpk -ll && pgpk -xa ) >> this file. + (gpg --list-sigs + && gpg --armor --export ) >> this file. + +Type Bits/KeyID Date User ID +pub 1024/FEECAAED 1998/11/11 Stefan Bodewig + Stefan Bodewig + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: 2.6.3i + +mQCNAzZJoiMAAAEEAMzhUxTOC20Nprp6K4nLTiARt+EXii/dovNWWcfzZcYXi/lX +r3zpUTTZxlKQpd4RaHjFmGgoOraZE4jCRFARVcFJgYmGUKpcWJZO7YKL36WUizTM ++dyB2ycOtzlty1W5VmRL3FGqo67pKA9F/QHg3NSu9hY1W9xPPK7Kq3f+7KrtAAUR +tCBTdGVmYW4gQm9kZXdpZyA8Ym9kZXdpZ0Bib3N0LmRlPokAlQIFEDZSrGXHcgyK +jiW9zQEBshEEAMlG4qVjKp4/agdJG56M6izx9oaKecFLXHQJrFUy3w2PvZHFYtXc +osXKorX6bPrE8uB57MxbY2WapKeVRodlG0+j39vAf501duK8q2rktfWt9Cl4JjJ4 +DbWhSWfV1ci62u2gCxwYQe22F9Wh+vhOR5NK9RTbSKhupdlFsnrk/i7xiQCVAwUQ +NkmiI67Kq3f+7KrtAQGdxQQAlcFOzSv7G6M4uGbgvw7IGgrhx7rawtIyv9hLXgVC +7ua9xaZV8G0Fl9gh8RnbdcZ4R/aT+KIiAFaslfZ3t6hlC4MTbnAJqvdS/NO98ZkJ +YvnzZSKHflAbd5gyE7IVxBC9/xRlF/Wls5sYNwb6RjoRCaOjxN/y3WCLa3Va101v +zNy0I1N0ZWZhbiBCb2Rld2lnIDxib2Rld2lnQGFwYWNoZS5vcmc+iQCVAwUQOxIo +BK7Kq3f+7KrtAQGn6gP/SBACdHakA4H//otpyESSrk4PmyOaYF0Kyok43Gee2mT+ +m9+jZ3jLcC0oav6iH+otL/lhk9t/JDM8LjD2kAkdWWoIvvuPyCx97gOzojIo0Ve2 +1wuxJTF/VIjwyOtE8FzE7p4tkc6EubVpeZkV9Pq9HFRBCUcyKJDLnF4tbstScLU= +=OBLe +-----END PGP PUBLIC KEY BLOCK----- + + +pub 1024D/51898504 2001-05-29 Conor MacNeill +sig 3 51898504 2001-05-29 Conor MacNeill +sig 5F6B8B72 2002-01-11 Stefan Bodewig +uid Conor MacNeill +sig 3 51898504 2001-05-29 Conor MacNeill +sig 5F6B8B72 2002-01-11 Stefan Bodewig +sub 1024g/D1ECBA5D 2001-05-29 +sig 51898504 2001-05-29 Conor MacNeill + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBDsTqygRBACiZckNdclTlQFonLaIKBFGhMy0KKByw0x8XA4iwdbCXuF6xNIc +HIFHajJ74AHchQ4d8xtomBy6b8yvFgWVeaZensvn69BlLeqGdyeJRzfPt6TgRnzZ +2eWhb0HXdG3JwxL/2BabDhHfs4YJOrgB/vhRFQku6oCMRiBPtJj2werD6wCg0/zp +jacYTw6+CR+sVvneCNyySFED/R3j10c4RnR8djgv1jKT8CKPuHYraupI9INEe+I6 +7qWjtJ02GzvMO6TElAtUsf4aysu45GgwkwEBnuG6mYb3Pq0V2c5tJc2A3Tj3DrdR +i3HUNwurbus76I0sPyyENPu12QPeC6mvWLEsxVJ9o0hRKFayGvYUmrwWK9UFLjvp +p9cXBACDHgLn7MAVLqUdYhRrUj/M+GOUpvBikEgoJJrEUmb5X4+++dffMh5HBIO4 +5LA11qEKuM2xnKqOilP7NLYXz1Fe0ocqv0jsHB4SprFTTai7ma31uwuRQvCQXVv1 +yJ5CLqYda64h/UA2kmmR2dfopmvDogYEMz/HU5voozxe7BEI7bQhQ29ub3IgTWFj +TmVpbGwgPGNvbm9yQGFwYWNoZS5vcmc+iFcEExECABcFAjsTqygFCwcKAwQDFQMC +AxYCAQIXgAAKCRCBBGRPUYmFBDgIAKCZztXqKhK6kXOnoGy7opCNmWU0lwCgsPDa +4m+ruW3ch0rfbqtR75S52R+IRgQQEQIABgUCPD6eTgAKCRCiEVrhX2uLcqCcAKCr +1Wylqju9YjBi5Twej9ze69JFBQCeOaMgo6yjnkcV3PnVInLlaMwPr5q0LUNvbm9y +IE1hY05laWxsIDxjb25vckBjb3J0ZXhlYnVzaW5lc3MuY29tLmF1PohXBBMRAgAX +BQI7E6xMBQsHCgMEAxUDAgMWAgECF4AACgkQgQRkT1GJhQTY0ACgmZmKheHzjPJs +5hybpyvnvEiPYqYAn2+ryxdtz8XyOMExGRmHNlhG7svsiEYEEBECAAYFAjw+nlUA +CgkQohFa4V9ri3JYYACg1WN+NCptfKVP1mbrIa+0ajztsiIAnAn+m70iwRRFZCxr +jcULoY5SjyTLuQENBDsTqy0QBACfsCxJ6iCtgX8zjlVtMsMfDqu72x5sYatWKn8c +u+4Oj5mi0x6azZIhwCa+K3ihLVOyG1mCRnzztGTIxWYRhq3TESIVOfgm+NgLGrmA +XUTFyCT+21TExLCpuVZKmUHsWXLxDtfQ1diPeQpiQ8+Fvb/4jLGFjFIrQ2VjtFQn +kumkSwADBgP9H0bF4hdMuVEcSJ9imxSoJshcOOA3Vd2+YiCTZhBygWM49wY5jNos +/DArIjNCE53IlOu/UtHB2jqkSqjF0soGYsUjeCWouiTP9hLuMKPjnqj9ryJPTDKz +nTCZ4TuB5CtzrKTlWLmPCPpFsGqe4KjMeKg/mqGqjPKl97xgStK9N9GIRgQYEQIA +BgUCOxOrLQAKCRCBBGRPUYmFBMM6AJsF3FFyZGEmbt9aGG1W/u0oI9mcLgCfQyJ+ +aalbspazea4J9zgi59SSwOM= +=cBdR +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/5F6B8B72 2001-05-28 Stefan Bodewig +sig 3 5F6B8B72 2001-05-28 Stefan Bodewig +sig 51898504 2002-01-11 Conor MacNeill +sig 3 F88341D9 2003-03-17 Lars Eilebrecht +sig 3 2261D073 2003-03-17 Astrid Keáler (Kess) +sig 21D0A71B 2003-03-17 Dirk-Willem van Gulik +sig 75A67692 2003-03-18 Erik Abele +sig B3B2A12C 2003-05-20 ct magazine CERTIFICATE +sig 3 8103A37E 2003-04-04 Andre Malo +uid Stefan Bodewig +sig 3 5F6B8B72 2001-05-28 Stefan Bodewig +sig 51898504 2002-01-11 Conor MacNeill +sig 3 F88341D9 2003-03-17 Lars Eilebrecht +sig 3 2261D073 2003-03-17 Astrid Keáler (Kess) +sig 21D0A71B 2003-03-17 Dirk-Willem van Gulik +sig 75A67692 2003-03-18 Erik Abele +sig B3B2A12C 2003-05-20 ct magazine CERTIFICATE +sig 3 8103A37E 2003-04-04 Andre Malo +uid Stefan Bodewig +sig 3 5F6B8B72 2003-03-07 Stefan Bodewig +sig 3 F88341D9 2003-03-17 Lars Eilebrecht +sig 3 2261D073 2003-03-17 Astrid Keáler (Kess) +sig 21D0A71B 2003-03-17 Dirk-Willem van Gulik +sig 75A67692 2003-03-18 Erik Abele +sig B3B2A12C 2003-05-20 ct magazine CERTIFICATE +sig 3 8103A37E 2003-04-04 Andre Malo +sub 1024g/24774157 2001-05-28 +sig 5F6B8B72 2001-05-28 Stefan Bodewig + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBDsSIk4RBADSCj6rUjV64tYCGT1DYKYR7GthyWpNdGHSYLbETBcDatAe1dzQ +5NsCgfrlybfyeY+y1lxr3T9bqf6zJWDw/718wff96qmmv1qzexSYtmIrj+h53V82 +EXwWOFuYMJisuxdT940iQzosm3GOv4MJdEg3oI2SgfEyRQQ6vO4Ob5rHDwCg5taZ +nrHOrXx2dIGHxpxRZ0SUl30D/jmtttFjYOQ3LBMriikz5mh2sK3ZnoSRF4o5O0zW +Ve6e2SFXOEjVjImKsH6KCbdQNelrAdgiyOoXClyQKsQ27pncbdWo6bO0E3POJZVm +XaeW7iudHVr63rU5PViXObIQrdQl0D59j5brKj4vdlTyUw8kaHPvbKPDEOwvZq4Y +LJQ5BACA1YilTeXRJqwFsNlpcxCHwlULD4QUVP496prQWf1B7Z6g0KvLGrQsO0Vn +Jcn+fEqukysTJixSXCPebosltd4RalJIupVYkp4w6MJ7biaDAlLuNhDcI/AiXTmV +dXUedVXIaM8I3Ne23gucwbAyc0Hvb+3cSAKRhl/azFQhuHBvlrQjU3RlZmFuIEJv +ZGV3aWcgPGJvZGV3aWdAYXBhY2hlLm9yZz6IWgQTEQIAGgULBwoDBAMVAwIDFgIB +AheAAhkBBQI7EiJPAAoJEKIRWuFfa4tyjzgAn3a+nFeNb3mAZQR4lRcXy3F+8eTh +AJ4iuLt4No6TUB9xNETrm3Y/0TvkU4hGBBARAgAGBQI8PtWPAAoJEIEEZE9RiYUE +nZIAnjOkQx1BfxN9+E7Yiz4MOxqZjSUpAKDQi0Alv/VR61fmR7KHZ11J2g+HSIiZ +BBMBAgAGBQI+dd8MAAoJED6Pt/L4g0HZJ2QD5RzYjJ0fi1Gr6NsjmIiU/lvfvPqj +bNoK2A2flkmLo2lk9jSa1AmF0ETOoCg8hZZHCbxyPZRdsmDJFXrZZWVTdUyZHhHb +Wx53DR3HavmVEEdDZBSkxfXdSu1CNq31sbdcumtd03FI6SV827cPzl1/RGUiOkEL +eK0hZb3IvSd5iEYEExECAAYFAj512sEACgkQ7tHqOSJh0HNFuACfb7quMJZHOk5p +pmTxf4GVS5bh3E4AniLa5788ktdcZCBE5Or+G+yuIGooiD8DBRA+daoa/W+IxiHQ +pxsRAkQFAKDmlWVuQnWfaGK9z8CP4vESTfiXyQCgpnf1yJWDgqWvUHOAvOeaTPDR +cOmIRgQQEQIABgUCPnekEAAKCRAVP6DNdaZ2ki/rAJ9Q0x5m4SE3hMNGUoMgS0MN +mYXDOQCdGa0QW2fZW4B1wSjiUIi6VgY+F7GIRgQQEQIABgUCPsoulgAKCRDb0kX8 +s7KhLBfwAKDV6uwqf9AMBJlr4aE45rWOnlWAeQCgjBYQVHWFjV1cmpT06vE4bMDV +J6+IRgQTEQIABgUCPo3OLAAKCRDKaTl0gQOjfpFKAJ9TY+mKmq0INLC9iqxbEETj +NwOn0gCgspeNEqX1SUjt932Lj3IvXR6fkAi0IFN0ZWZhbiBCb2Rld2lnIDxib2Rl +d2lnQGJvc3QuZGU+iFcEExECABcFAjsSOYEFCwcKAwQDFQMCAxYCAQIXgAAKCRCi +EVrhX2uLcsm6AKDaA//SYJv2pcXwGBC89OSzGvxy3gCg1kx6qu6zJKaWaE1L9oFq +Vc65OUSIRgQQEQIABgUCPD7VlQAKCRCBBGRPUYmFBNCzAJ9tv7tNS6NwaOZQ8cR0 +pGslJGKtuQCgpttMmhhRrUwyVuEXc+dKX7rdQMKImQQTAQIABgUCPnXfDwAKCRA+ +j7fy+INB2Vm6A+IDxiYtMvd/mad+7hRoKXvD5AddB1SwnvQdJe0ewStFBYZxZdNO +LXdkVngCwAJziPGZcQmocEHVMrN+Mxe+3OX0PEZ+3KOOsAUi+fTov2xvf8EWKgX9 +d0li9iEytVA4M0c52a3bPTC0Kki/KAY3m8oNvAmTwWB9dBSooFFDMIhGBBMRAgAG +BQI+ddrHAAoJEO7R6jkiYdBzruYAnAzvTrvDQNvoAoaDQJ+o/ydqMA8ZAJwNEOQD +Hsz+6ynbMPoQmKmUqfEISIg/AwUQPnWqIf1viMYh0KcbEQIkpwCeInf4o3C5Ykh/ +xBodVImrp2Cvcy8AoMn3me5p4Sl2rm2tjVxTJZt2sUr7iEYEEBECAAYFAj53pBoA +CgkQFT+gzXWmdpIpGgCgiTARP6Cf+JKOxUaVFr0L9DC5oUcAoIxF7D5mOVK/AFcp +1cxNk3BLtdq3iEYEEBECAAYFAj7KLjIACgkQ29JF/LOyoSwAbACglNp7V2Pw4U57 +5IuooM677bZf8pwAn2U2TcHj7PYprU+qYRkyJ3pa7FyyiEYEExECAAYFAj6NzjUA +CgkQymk5dIEDo35YPwCeJIU/monN96nP4jJjAuflEXMbemUAoJXq7oVCYuOCqWr/ +T3VW0DM3W+dntCpTdGVmYW4gQm9kZXdpZyA8c3RlZmFuLmJvZGV3aWdAZnJlZW5l +dC5kZT6IXAQTEQIAHAUCPmiBXAIbAwQLBwMCAxUCAwMWAgECHgECF4AACgkQohFa +4V9ri3JPKACfXhFOr4gMMIQwEGvUb6J/X4asuzIAnje2H9T1r/jSVi1NbIEtQfbp +myQXiJkEEwECAAYFAj513w8ACgkQPo+38viDQdmGkgPnUYJfHlDrQ2jYJWuPDve9 +n4pV9OvyIllKyLdfULjsLWXw4Jm+fMQJgWr2GEov1ZYIyS2+rGDZpbz/vxaBVbgq +M8TPdiXzxwU8AFq4k+Em4fKXR58ByLSJjvLLza61spNHJennEUFp3tTpEsr4bNuu +aoRYhtiKzTqNuoC+0x+IRgQTEQIABgUCPnXaxwAKCRDu0eo5ImHQc5lcAJ9FOoAL +4uHMuqHXrrxsEVPJvEJ2/ACggaOR62EziUqcqpdm/1Zy3P4T22iIPwMFED51qjj9 +b4jGIdCnGxECWssAoKnkR63bWGCFDB5YJtfZJ+nQq3TAAKD1bzG/kITQpIHsT2vC +Y1yBmlWbBYhGBBARAgAGBQI+d6QaAAoJEBU/oM11pnaS+9IAn0kFlXAzOhhu4r5f +glMVuw5bTAd0AKCtYRX2ESU/+tsE8vuXWtsMCGeI5YhGBBARAgAGBQI+yi67AAoJ +ENvSRfyzsqEsSccAoKqG39X2y6xoQa56nviF5iCj/oTFAJwLKx9GyKEUbSM9f/IQ +7AsZPhHT54hGBBMRAgAGBQI+jc41AAoJEMppOXSBA6N+xYgAn1HbGamcXTDYSFjn +3U5ik2vQa8nuAKC/uUM01gsdn+71EiAkmrjlH6H9MLkBDQQ7EiJUEAQAzVKWS8Qr +kysydbTJu2/14wIbz2Coi93aAGelwCwXSxf50JpYdY3Lkcvd0FqT8bcEnz43MCSx +8vlKubQtUpx9WMGIb4ixtShLJ4lAa6FJldhychz/dnxSNyz5N8W6sby4dTVxac0r +loxjAOurGanhG7TMtgfDi0cEEoXRyAVoKyMAAwUD/j1pJm4Npq2mlJoE7MK3vAhg +KwYHFflmJusmqvSAtRuFdT15pbMJrA5bAK+lA3SVOOhhWTCItlphSR2qxJCAcBTe +OMqUi5ohFcCkSRNvwmDtH+80B3BehlEsEKNk8Z3moa2ch7Oxnb6XEXH5tGJ5Qvx9 +Qid6ZfBaXx7bc8yKyCb4iEYEGBECAAYFAjsSIlQACgkQohFa4V9ri3INMgCgnc22 +kj8TfjktU6u4SUUqud25ZZcAn0B2b0zPjKjGuiwdKSnkFbNcFS3g +=9dY9 +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024R/697ECEDD 2000-04-06 Henri Gomez +sig 697ECEDD 2000-04-06 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQCNAzjsydwAAAEEAMpwFU/ci3/wR3ryCGp9Exr+Rx/hTQ7hWAJcVw8ejlBXlT4T +yITlRUs0HGfRWxME2J55PuXXsIEPZzjfozNtvOyq8WlLlJ7iaiyWxVRoPJ25sSEj +C9etm6wjj4E66ZgzuElZkm1m69uEsCHPPNuz1oQ/g1O+SmIVxIYirlxpfs7dAAUR +tBxIZW5yaSBHb21leiA8aGdvbWV6QHNsaWIuZnI+iQCVAwUQOOzJ3IYirlxpfs7d +AQFQyQQAj0D9G0hEL7SQGaSCkkoXwvamQw42N8+tNm+jfWHWdE4HAiVlhJmI2GyD +sdcXVAcR8R7ILIRB5AY7a3bF+qMk0r+vO6oR878RKKn9AvtaAIOnrh6tr0tiPwf5 +XDUMySxIWJEF3SmJAy9Lq3bAl5GMzZCFHiS0NW2gtWgmr/u1RuM= +=6l+I +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024R/397DCAD5 2002-07-03 Henri Gomez +sig 397DCAD5 2002-07-03 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQCNAz0i0UUAAAEEALXePN6IHne0W96YRMnR+4EXB6402QY5f8ZLcnSUZUH55Fb1 +qcZGBc3WRKlPiUvwBD+eVYgCpNSXF/H+oV1mawxNJN5XwqBEpfYmY8MRIPcqa61h +bJc3LBSm1qNf05G5Cwxeed+OgVm0r1HBy6DAgDHAqNlkC8DZ/BVgqMA5fcrVAAUR +tCpIZW5yaSBHb21leiA8aGdvbWV6QHVzZXJzLnNvdXJjZWZvcmdlLm5ldD6JAJUD +BRA9ItFFFWCowDl9ytUBASNyA/458T84LUVhqq6Y9fPBAfcFMWY2kehuDWsQEXkO +46XoK+AnFZCkKuyDLqPHchVUO5pK/gZYsDK/xJkfh3u4FTDTsecb9wFmIeyayVIN +SI8o6l8EZzDX/PGwqEwzxHrbQkIgIktNn5ApIoazvdBpbkQfNj1vr2wWoMYPLAWM +8xzecA== +=UmZ8 +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/307A10A5 2002-07-18 Henri Gomez +sig 3 307A10A5 2002-07-18 Henri Gomez +sub 2048g/862B8F70 2002-07-18 +sig 307A10A5 2002-07-18 Henri Gomez + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBD02vbERBAC1v8fR6gjERpaz4UMfdy0hRVWCPSbOdF+Swm/IenjVzErco6zb +MTa13umUNrDPBy/tTWiCCZrOnqi7fgDzWqPEqrXJjKAFVLEWE6MmKylPPEPG1/bm +idkNGERSAZduvhKv777PzvEJJ/8eGe3wy/O8NbgIjCPtr4UklwCZS8cFuwCg8oMO +UdT8qZRtzdxdAyu1m5fUb+MD/3IKJYWXsdtb6iBphCU4f/BoyjVC9EZJ1ywLuiVM +siKbuaDUaXU9nWcbNKv+fx8uZ1NaadpfLokqqhnWcpnSiqw8HNR7SwsF1D33rkXK +O4FSuVss/tIoqGdWFcJyPkP4yP5shxqR335narVw2vDa0+BiWkALbA2qVsSIdZDB +LeFZA/47AMBS0U2BRk2rQT8LmMuFl7mR+wNBM4n7FUGdxsGn3TcYd4pXTNrEQPrV +YNdooKlikgGk4hgFnIFX09Spmimqgq0goFue81rttVdZZ4uep8dTghY6gwmvcOxX +jATbhWStBhdu9B35kzfHc+1QihD5Z94u4uyWIVBIzikcdiY8LbQqSGVucmkgR29t +ZXogPGhnb21lekB1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+iFcEExECABcFAj02vbEF +CwcKAwQDFQMCAxYCAQIXgAAKCRAZMdaEMHoQpYijAKCCP68ndU/kTXR9XAKLvibC +3S8+1QCfUFQYte3Jo+MHKaWjsu9JGptRzo+5Ag0EPTa93RAIAKlsRJ5gOGTFsmaR +W9k6MIh4c/MCy7J7HUxT5xTdHROa+3zUh+FAE/JaOx9ZtZtH863DFHA8cP4L+tpi +PjBT6g2E94dwGcuH/OiSSCT4JSBukbGbOuLLdmFXqUl8+4gsL90Xal67FtNLwyLG +1n7geLir0byD+OT7VLA5w+6G0NOpJEveV/FIa2qLgdRZ8vz73ybgMh18hBUrUmro +jncp0rln2VU7VCH1C2aClKm7kK4mGAjIFIzKbguK+kM3b8NDHmXKpT6syyCtIM3h +prkV1TUCAFqLI32aSdlTN79lpeA2zDga9k4/4X/RDHsFpRN2neRFGTNUtuUgYpQQ +E5zWBmMAAwUH/RiGxyeBsad923IwE1+GAjxFl2tqF9xWk0J6yTnSK4nfhYAE9evV +jwDEok9jRl4ILCcXx6YN/d/lWNuSbARKHz/3hLiTouPpwd3SSJ8is2x9PgpJz5JX +cD0y1SkbPLvs3jH3ZmdcxZpuAmJeI/typqFKK5pWP44oXIH+XH/8nWDtmLEBkgKQ +/ATQWenMTmZ6MIJ6aWKWGkO9QS6iYRz3PPPGQ1O8W02CeprM2wBtlb8J1Z3RxNhM +rZcg/1Qi3V3D1HI4zw6tAFmDeBb8J4PaBQzqlhzx2EBTbfwNPhV8AlPvpxHEeGGn +v+O1yhZr33SnyZdINNoNDn+owVMdmkobe9GIRgQYEQIABgUCPTa93QAKCRAZMdaE +MHoQpRsTAJ4qst3MhLm48fBAEnzuzi/BIKr+AgCfYaCB/AvPoncQbHc8BcNGRimR +P9A= +=hQhz +-----END PGP PUBLIC KEY BLOCK----- + +pub 1024D/EDF62C35 2002-04-10 Magesh Umasankar +sig 3 EDF62C35 2002-04-10 Magesh Umasankar +sig 3 5F6B8B72 2003-03-07 Stefan Bodewig +sub 1024g/B5FFC53F 2002-04-10 +sig EDF62C35 2002-04-10 Magesh Umasankar + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.0 (GNU/Linux) + +mQGiBDy0ebgRBADuKIKD8PuJ4wKEV1h2AprwJjxCRx8vn48XNwfLZuvhw8cpArtK +rZwhoGPPUPEEXgtTNerlKq4VwpAwcnvRz7oC/7aWkUbcR2sAyhfe2scohwPgw7Xv ++isWC0NDPdrxvXG/PUOG/cnELunr51ymybBqBxUd2gMhYIxPo67D+YPYLwCgwcZp +yc/6kJa116ESWHrti342GD8D/1srpnRs9CiS1DQF1uZ1wW4vzj4VD61tKsjdWD8D +V573R22iMDLSj4oMB536WxUH7snz8XsAKm/peqJ6G9m0smtmWA1ago5yzQj70WqF +xzWBhHn2I/YfAQ8pb2s9q1lClj8elnCxT65L27ydBAZteejb2VqjtQ6iGy86PUT2 +wRUvBADZmoV1eIZJEM5NnxBv1EtvRYZtIQEzZ8dO2A1LOS7qlVr8IypljNPLGhzX +VHNvVsjC9QMUSWeBsDedvQHQ3hJpIMnTI32XE1V4gX06gfVTZdhf2fLTtwnsHZp0 +oumqshGDVRhNJJdDYLikxWOxOfkNveKEqJFvtuBR+ZqqluQKebQlTWFnZXNoIFVt +YXNhbmthciA8dW1hZ2VzaEBhcGFjaGUub3JnPohXBBMRAgAXBQI8tHm4BQsHCgME +AxUDAgMWAgECF4AACgkQ76Pnee32LDWSRwCfeASWXvpdt7bSFPMtszU/7uPEktsA +n23mYUN5WKJA1ZreW+0CcZ2ESnOviEYEExECAAYFAj5ogYgACgkQohFa4V9ri3IW +YACgsxGig0PL0M86rJsA/IpXjBdg3ysAoJzsoUZ/7s2BxDfzF/FRTVIzS+TMuQEN +BDy0eb8QBACBVb9YDJRp9Irzmq71Jf9FIPw+4g/cWpF3t/Eb7eSzMcOvTAXyNIWz +aaOjHre7lFctHfq8ls/6gR7uqajiAnfQcfTcu7pp+F5KsU0Embt83SFzZ3aoJwET +mB/LqUyrrGDiue3lU+flJO7UmcsRvtk0+BDkyCeB9HgfdpXbBLCyuwADBQP+PNxX +4e1tg3ZJo/xNEnD2Re3HjmQRrr0RYJLUGjgQrAEONSgowx3IW8/JssmNJVjnYm0q +jSKsb8rergCFJhPNZ8Dd/k00pKcrq+IN6j7WTYLqPce87zrGAZUtmDwDSp5mxy5E +xWJJxsgBPk4YBQLzJt21A3BgK/i24Sze2VLbaZuIRgQYEQIABgUCPLR5vwAKCRDv +o+d57fYsNa8xAJ4mLfonZbd64+YY9rfvhIh3Vsl3AACeLPPKtma2K6XCfhTBEDnj +hzSr4vo= +=lBfF +-----END PGP PUBLIC KEY BLOCK----- +pub 1024D/265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 265B4C63 2003-12-06 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 5F6B8B72 2003-12-12 Stefan Bodewig +uid Antoine Levy-Lambert (Apache Ant Committer) +sig 3 265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) +sig 3 5F6B8B72 2003-12-12 Stefan Bodewig +sub 1024g/A3060393 2003-08-18 +sig 265B4C63 2003-08-18 Antoine Levy-Lambert (Apache Ant Committer) + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.2.2 (MingW32) + +mQGiBD9AzmcRBACMqgb7IFvC/nLxw7mUAgHENeZXY3JOQJ8wVBevIbbMEeFvzHE2 +diFydqUXocPexduYr0ahkf033WvWdAiNqDLfVW/HFOsc1TpjbHkqPUHtJ62Ya5tg +nH4UGN9BYZfMbfVDOSz41lYwmfK5HYgpZN/sBQBSKf2qgoFB+LxYaae8YwCgrWlu +fYhf7fkKbbdSf3BGS67ggNkD/0VvkXkw1SEnPaqrkKGkPKomCTb2auGxcYYI3/rP +1m+SGRf0gE1NtocmIEitiR6WvfKUjoMAXSCp5KdnUXmO9rwzkM002KCA7K5CY+e/ +2bLDuiQ3rNiD4mFfG6M+UnmZ+GMFba1p9Cp4PqLNLsCHz67t7hEsscTZQ8mZ9xKM ++GCsA/9P+XFM7JDn9MLhYab9qo1CkceBkthUP6jWGjuAZ00elmBCkpkzNv5aIzss +xih2GpaU/tmcMjw8FGp0dTwzqdpmbZBLjunRnuBTir4m4l5G9rwl4JbfK1PVqk4a +VKkh9W7/yqBcEfNcsfJO9cqaQ+PzcnCoDiD9UHEBYzUhrCKwhLRCQW50b2luZSBM +ZXZ5LUxhbWJlcnQgKEFwYWNoZSBBbnQgQ29tbWl0dGVyKSA8YW50b2luZUBhbnRi +dWlsZC5jb20+iFsEExECABsFAj9AzmcGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQ +hhTWqyZbTGMnOgCeJV2gI+1CIxMR7dcIhXjPkiusreIAn2SGOsPS0o89l0EIVuc9 +J2F03aB+iEYEExECAAYFAj/ZwioACgkQohFa4V9ri3J8CACgiGlh+td0BAnJPq19 +ovEQR2DJ02MAoLP203EF+BLPpykeTcGp8UEWmeGQtEBBbnRvaW5lIExldnktTGFt +YmVydCAoQXBhY2hlIEFudCBDb21taXR0ZXIpIDxhbnRvaW5lQGFwYWNoZS5vcmc+ +iF4EExECAB4FAj/SSwYCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQhhTWqyZb +TGOh/QCfbrSoipMlizyGT6c8BOPEd9zzfi0AnRRTqTDzXzsGk4CG/BJME9CCm7Ts +iEYEExECAAYFAj/ZwiMACgkQohFa4V9ri3IOVACgh2QHS1+cVjvM4eLjls1bJwWi +o5IAoLtAszHrwHS5qrhvr2rtnlyyyV2guQENBD9AzmkQBACNpBfqi2PweozCtxoX +PqzKdRDKqCw7TOrDR6lbP3z/ov/1SN5Vc0XqNzBSGqwBcmGWtneABkX7n4uzJrC5 +wvX/TZ/DkMvypPyeNVMu+/ZMlzdbx06OUDKr6Fy/NtaI7cN1rw+Igyv22Q8ilhhg +s/5Rdj84EtJkWQjVRml6wXSAZwADBwP/TqyhOC4sA5YrePYGH8i46h0SU9dXjfEF +JijC8vXZ+BNQHQVK3fjEXedZL8Zvvp1bsMu7Muz9SMnqygM1unp2NGxLRd/9315p +Qh0VStYKn0xq13ybOKr0Gsyx5yyl3Nzlu/1qAR0es/zN4jV7/IQi3R2GOvezcpHX +mkbsYiZAhu2IRgQYEQIABgUCP0DOaQAKCRCGFNarJltMYxcsAKCSJJUABlXYnLBj +b+WtmAzu0JjZNACdFJ4KIATJDK/5ajFq5+irOpodoHc= +=UomR +-----END PGP PUBLIC KEY BLOCK----- diff --git a/lib/ant/LICENSE b/lib/ant/LICENSE new file mode 100644 index 000000000..f820d4bd3 --- /dev/null +++ b/lib/ant/LICENSE @@ -0,0 +1,203 @@ +/* + * Apache License + * Version 2.0, January 2004 + * http://www.apache.org/licenses/ + * + * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + * + * 1. Definitions. + * + * "License" shall mean the terms and conditions for use, reproduction, + * and distribution as defined by Sections 1 through 9 of this document. + * + * "Licensor" shall mean the copyright owner or entity authorized by + * the copyright owner that is granting the License. + * + * "Legal Entity" shall mean the union of the acting entity and all + * other entities that control, are controlled by, or are under common + * control with that entity. For the purposes of this definition, + * "control" means (i) the power, direct or indirect, to cause the + * direction or management of such entity, whether by contract or + * otherwise, or (ii) ownership of fifty percent (50%) or more of the + * outstanding shares, or (iii) beneficial ownership of such entity. + * + * "You" (or "Your") shall mean an individual or Legal Entity + * exercising permissions granted by this License. + * + * "Source" form shall mean the preferred form for making modifications, + * including but not limited to software source code, documentation + * source, and configuration files. + * + * "Object" form shall mean any form resulting from mechanical + * transformation or translation of a Source form, including but + * not limited to compiled object code, generated documentation, + * and conversions to other media types. + * + * "Work" shall mean the work of authorship, whether in Source or + * Object form, made available under the License, as indicated by a + * copyright notice that is included in or attached to the work + * (an example is provided in the Appendix below). + * + * "Derivative Works" shall mean any work, whether in Source or Object + * form, that is based on (or derived from) the Work and for which the + * editorial revisions, annotations, elaborations, or other modifications + * represent, as a whole, an original work of authorship. For the purposes + * of this License, Derivative Works shall not include works that remain + * separable from, or merely link (or bind by name) to the interfaces of, + * the Work and Derivative Works thereof. + * + * "Contribution" shall mean any work of authorship, including + * the original version of the Work and any modifications or additions + * to that Work or Derivative Works thereof, that is intentionally + * submitted to Licensor for inclusion in the Work by the copyright owner + * or by an individual or Legal Entity authorized to submit on behalf of + * the copyright owner. For the purposes of this definition, "submitted" + * means any form of electronic, verbal, or written communication sent + * to the Licensor or its representatives, including but not limited to + * communication on electronic mailing lists, source code control systems, + * and issue tracking systems that are managed by, or on behalf of, the + * Licensor for the purpose of discussing and improving the Work, but + * excluding communication that is conspicuously marked or otherwise + * designated in writing by the copyright owner as "Not a Contribution." + * + * "Contributor" shall mean Licensor and any individual or Legal Entity + * on behalf of whom a Contribution has been received by Licensor and + * subsequently incorporated within the Work. + * + * 2. Grant of Copyright License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * copyright license to reproduce, prepare Derivative Works of, + * publicly display, publicly perform, sublicense, and distribute the + * Work and such Derivative Works in Source or Object form. + * + * 3. Grant of Patent License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * (except as stated in this section) patent license to make, have made, + * use, offer to sell, sell, import, and otherwise transfer the Work, + * where such license applies only to those patent claims licensable + * by such Contributor that are necessarily infringed by their + * Contribution(s) alone or by combination of their Contribution(s) + * with the Work to which such Contribution(s) was submitted. If You + * institute patent litigation against any entity (including a + * cross-claim or counterclaim in a lawsuit) alleging that the Work + * or a Contribution incorporated within the Work constitutes direct + * or contributory patent infringement, then any patent licenses + * granted to You under this License for that Work shall terminate + * as of the date such litigation is filed. + * + * 4. Redistribution. You may reproduce and distribute copies of the + * Work or Derivative Works thereof in any medium, with or without + * modifications, and in Source or Object form, provided that You + * meet the following conditions: + * + * (a) You must give any other recipients of the Work or + * Derivative Works a copy of this License; and + * + * (b) You must cause any modified files to carry prominent notices + * stating that You changed the files; and + * + * (c) You must retain, in the Source form of any Derivative Works + * that You distribute, all copyright, patent, trademark, and + * attribution notices from the Source form of the Work, + * excluding those notices that do not pertain to any part of + * the Derivative Works; and + * + * (d) If the Work includes a "NOTICE" text file as part of its + * distribution, then any Derivative Works that You distribute must + * include a readable copy of the attribution notices contained + * within such NOTICE file, excluding those notices that do not + * pertain to any part of the Derivative Works, in at least one + * of the following places: within a NOTICE text file distributed + * as part of the Derivative Works; within the Source form or + * documentation, if provided along with the Derivative Works; or, + * within a display generated by the Derivative Works, if and + * wherever such third-party notices normally appear. The contents + * of the NOTICE file are for informational purposes only and + * do not modify the License. You may add Your own attribution + * notices within Derivative Works that You distribute, alongside + * or as an addendum to the NOTICE text from the Work, provided + * that such additional attribution notices cannot be construed + * as modifying the License. + * + * You may add Your own copyright statement to Your modifications and + * may provide additional or different license terms and conditions + * for use, reproduction, or distribution of Your modifications, or + * for any such Derivative Works as a whole, provided Your use, + * reproduction, and distribution of the Work otherwise complies with + * the conditions stated in this License. + * + * 5. Submission of Contributions. Unless You explicitly state otherwise, + * any Contribution intentionally submitted for inclusion in the Work + * by You to the Licensor shall be under the terms and conditions of + * this License, without any additional terms or conditions. + * Notwithstanding the above, nothing herein shall supersede or modify + * the terms of any separate license agreement you may have executed + * with Licensor regarding such Contributions. + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor, + * except as required for reasonable and customary use in describing the + * origin of the Work and reproducing the content of the NOTICE file. + * + * 7. Disclaimer of Warranty. Unless required by applicable law or + * agreed to in writing, Licensor provides the Work (and each + * Contributor provides its Contributions) on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied, including, without limitation, any warranties or conditions + * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + * PARTICULAR PURPOSE. You are solely responsible for determining the + * appropriateness of using or redistributing the Work and assume any + * risks associated with Your exercise of permissions under this License. + * + * 8. Limitation of Liability. In no event and under no legal theory, + * whether in tort (including negligence), contract, or otherwise, + * unless required by applicable law (such as deliberate and grossly + * negligent acts) or agreed to in writing, shall any Contributor be + * liable to You for damages, including any direct, indirect, special, + * incidental, or consequential damages of any character arising as a + * result of this License or out of the use or inability to use the + * Work (including but not limited to damages for loss of goodwill, + * work stoppage, computer failure or malfunction, or any and all + * other commercial damages or losses), even if such Contributor + * has been advised of the possibility of such damages. + * + * 9. Accepting Warranty or Additional Liability. While redistributing + * the Work or Derivative Works thereof, You may choose to offer, + * and charge a fee for, acceptance of support, warranty, indemnity, + * or other liability obligations and/or rights consistent with this + * License. However, in accepting such obligations, You may act only + * on Your own behalf and on Your sole responsibility, not on behalf + * of any other Contributor, and only if You agree to indemnify, + * defend, and hold each Contributor harmless for any liability + * incurred by, or claims asserted against, such Contributor by reason + * of your accepting any such warranty or additional liability. + * + * END OF TERMS AND CONDITIONS + * + * APPENDIX: How to apply the Apache License to your work. + * + * To apply the Apache License to your work, attach the following + * boilerplate notice, with the fields enclosed by brackets "[]" + * replaced with your own identifying information. (Don't include + * the brackets!) The text should be enclosed in the appropriate + * comment syntax for the file format. We also recommend that a + * file or class name and description of purpose be included on the + * same "printed page" as the copyright notice for easier + * identification within third-party archives. + * + * Copyright [yyyy] [name of copyright owner] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ diff --git a/lib/ant/LICENSE.dom b/lib/ant/LICENSE.dom new file mode 100644 index 000000000..05013f198 --- /dev/null +++ b/lib/ant/LICENSE.dom @@ -0,0 +1,71 @@ +This license came from: +http://www.w3.org/Consortium/Legal/copyright-software-19980720 + + +W3C® SOFTWARE NOTICE AND LICENSE +Copyright © 1994-2001 World +Wide Web Consortium, World +Wide Web Consortium, (Massachusetts Institute of +Technology, Institut National de +Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. +http://www.w3.org/Consortium/Legal/ + +This W3C work (including software, documents, or other related +items) is being provided by the copyright holders under the +following license. By obtaining, using and/or copying this work, +you (the licensee) agree that you have read, understood, and will +comply with the following terms and conditions: +Permission to use, copy, modify, and distribute this software +and its documentation, with or without modification,  for any +purpose and without fee or royalty is hereby granted, provided that +you include the following on ALL copies of the software and +documentation or portions thereof, including modifications, that +you make: + +The full text of this NOTICE in a location viewable to users of +the redistributed or derivative work. + +Any pre-existing intellectual property disclaimers, notices, or +terms and conditions. If none exist, a short notice of the +following form (hypertext is preferred, text is permitted) should +be used within the body of any redistributed or derivative code: +"Copyright © [$date-of-software] World Wide Web Consortium, (Massachusetts Institute of +Technology, Institut National de +Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. +http://www.w3.org/Consortium/Legal/" + +Notice of any changes or modifications to the W3C files, +including the date changes were made. (We recommend you provide +URIs to the location from which the code is derived.) + +THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND +COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE +USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD +PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, +SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE +SOFTWARE OR DOCUMENTATION. + +The name and trademarks of copyright holders may NOT be used in +advertising or publicity pertaining to the software without +specific, written prior permission. Title to copyright in this +software and any associated documentation will at all times remain +with copyright holders. +____________________________________ +This formulation of W3C's notice and license became active on +August 14 1998 so as to improve compatibility with GPL. This +version ensures that W3C software licensing terms are no more +restrictive than GPL and consequently W3C software may be +distributed in GPL packages. See the older formulation for the +policy prior to this date. Please see our Copyright FAQ for common +questions about using materials from +our site, including specific terms and conditions for packages like +libwww, Amaya, and Jigsaw. +Other questions about this notice can be +directed to site-policy@w3.org. + +webmaster diff --git a/lib/ant/LICENSE.sax b/lib/ant/LICENSE.sax new file mode 100644 index 000000000..006c924b2 --- /dev/null +++ b/lib/ant/LICENSE.sax @@ -0,0 +1,20 @@ +This license came from: http://www.megginson.com/SAX/copying.html + However please note future versions of SAX may be covered + under http://saxproject.org/?selected=pd + + +This page is now out of date -- see the new SAX site at +http://www.saxproject.org/ for more up-to-date +releases and other information. Please change your bookmarks. + + +SAX2 is Free! + +I hereby abandon any property rights to SAX 2.0 (the Simple API for +XML), and release all of the SAX 2.0 source code, compiled code, and +documentation contained in this distribution into the Public Domain. +SAX comes with NO WARRANTY or guarantee of fitness for any +purpose. + +David Megginson, david@megginson.com +2000-05-05 \ No newline at end of file diff --git a/lib/ant/LICENSE.xerces b/lib/ant/LICENSE.xerces new file mode 100644 index 000000000..70cb54a0d --- /dev/null +++ b/lib/ant/LICENSE.xerces @@ -0,0 +1,56 @@ +/* + * The Apache Software License, Version 1.1 + * + * + * Copyright (c) 1999-2002 The Apache Software Foundation. All rights + * reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. The end-user documentation included with the redistribution, + * if any, must include the following acknowledgment: + * "This product includes software developed by the + * Apache Software Foundation (http://www.apache.org/)." + * Alternately, this acknowledgment may appear in the software itself, + * if and wherever such third-party acknowledgments normally appear. + * + * 4. The names "Xerces" and "Apache Software Foundation" must + * not be used to endorse or promote products derived from this + * software without prior written permission. For written + * permission, please contact apache@apache.org. + * + * 5. Products derived from this software may not be called "Apache", + * nor may "Apache" appear in their name, without prior written + * permission of the Apache Software Foundation. + * + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * ==================================================================== + * + * This software consists of voluntary contributions made by many + * individuals on behalf of the Apache Software Foundation and was + * originally based on software copyright (c) 1999, International + * Business Machines, Inc., http://www.ibm.com. For more + * information on the Apache Software Foundation, please see + * . + */ diff --git a/lib/ant/NOTICE b/lib/ant/NOTICE new file mode 100644 index 000000000..1fb6dde47 --- /dev/null +++ b/lib/ant/NOTICE @@ -0,0 +1,15 @@ + ========================================================================= + == NOTICE file corresponding to the section 4 d of == + == the Apache License, Version 2.0, == + == in this case for the Apache Ant distribution. == + ========================================================================= + + This product includes software developed by + The Apache Software Foundation (http://www.apache.org/). + + This product includes also software developed by : + - the W3C consortium (http://www.w3c.org) , + - the SAX project (http://www.saxproject.org) + + Please read the different LICENSE files present in the root directory of + this distribution. diff --git a/lib/ant/README b/lib/ant/README new file mode 100644 index 000000000..263c111d5 --- /dev/null +++ b/lib/ant/README @@ -0,0 +1,70 @@ + + A N T + + + What is it? + ----------- + + Ant is a Java based build tool. In theory it is kind of like "make" + without makes wrinkles and with the full portability of pure java code. + + + Why? + ---- + + Why another build tool when there is already make, gnumake, nmake, jam, + and others? Because all of those tools have limitations that its original + author couldn't live with when developing software across multiple platforms. + + Make-like tools are inherently shell based. They evaluate a set of + dependencies and then execute commands not unlike what you would issue on a + shell. This means that you can easily extend these tools by using or writing + any program for the OS that you are working on. However, this also means that + you limit yourself to the OS, or at least the OS type such as Unix, that you + are working on. + + Makefiles are inherently evil as well. Anybody who has worked on them for any + time has run into the dreaded tab problem. "Is my command not executing + because I have a space in front of my tab!!!" said the original author of Ant + way too many times. Tools like Jam took care of this to a great degree, but + still use yet another format to use and remember. + + Ant is different. Instead a model where it is extended with shell based + commands, it is extended using Java classes. Instead of writing shell + commands, the configuration files are XML based calling out a target tree + where various tasks get executed. Each task is run by an object which + implements a particular Task interface. + + Granted, this removes some of the expressive power that is inherent by being + able to construct a shell command such as `find . -name foo -exec rm {}` but + it gives you the ability to be cross platform. To work anywhere and + everywhere. And hey, if you really need to execute a shell command, Ant has + an exec rule that allows different commands to be executed based on the OS + that it is executing on. + + The Latest Version + ------------------ + + Details of the latest version can be found on the Apache Ant + Project web site . + + + Documentation + ------------- + + Documentation is available in HTML format, in the docs/ directory. + For information about building and installing Ant, see + docs/manual/index.html + + + Licensing + --------- + + This software is licensed under the terms you may find in the file + named "LICENSE" in this directory. + + + Thanks for using Ant. + + The Apache Ant Project + diff --git a/lib/ant/TODO b/lib/ant/TODO new file mode 100644 index 000000000..8bbbc3d6a --- /dev/null +++ b/lib/ant/TODO @@ -0,0 +1,9 @@ +Things that are scheduled for Ant 1.6.2. Once this list is empty, we +can roll the first beta. + +Please go ahead and assign things that are not already assigned to +anybody else (assignments look like [Stefan]) to yourself - and please +remove items from this list once they are complete. + + + diff --git a/lib/ant/WHATSNEW b/lib/ant/WHATSNEW new file mode 100644 index 000000000..1d8d85e3f --- /dev/null +++ b/lib/ant/WHATSNEW @@ -0,0 +1,2901 @@ +Changes from Ant 1.6.2 to Ant 1.6.3 +=================================== + +Changes that could break older environments: +-------------------------------------------- + +* The subant task used the canonical version of a file path. This + has been changed to use the absolute path. Bugzilla 30438. + +* Tar now writes two EOF blocks rather than one. + Bugzilla report 28776 + +* The Reference object now has a project field which it uses in preference + to the project passed in. This allows composite references to be + handled to nested projects. + Bugzilla report 25777 + +* with filtertrace="true" will now also swallow lines for the + sun.reflect package. If you need to see them in your stack trace, + you must set filtertrace to false. + Bugzilla Report 22758 + +* The jikes compiler adapter now supports -bootclasspath, -extdirs and + -sourcepath and also uses the same logic for debug flags as javac. + This means, the jikes compiler adapter now requires Jikes 1.15 or later. + Bugzilla Reports 25868, 26404 and 32609. + +* Targets with identical name work in imported project. Bugzilla Report 34566. + +* The gcj compiler adapter used to include the Java runtime classes + even if includeJavaRuntime was set to false, unless the + bootclasspath has been specified as well. It will now always adhere + to includeJavaRuntime, you may need to set it to true explicitly now + if you relied on the old behavior. + +Other changes: +-------------- + +* can now take an attribute 'executable'. Bugzilla report 30606. + +* New attribute ignorecontents for selector + +* Javadoc fixes for Location, Project, and RuntimeConfigurable + Bugzilla 30160. + +* Enable to choose the regexp implementation without system property. + Bugzilla Report 15390. + +* Expose objects and methods in IntrospectionHelper. Bugzilla Report 30794. + +* Allow file attribute of to rename a directory. + Bugzilla Report 22863. + +* Add xmlcatalog nested element to XmlProperty. Bugzilla report 27053. + +* New attribute alwayslog for type. + +* Added nested elements to and to allow + specification of multiple sub-build targets, which are executed + with a single dependency analysis. + +* Refactored Target invocation into org.apache.tools.ant.Executor + implementations. Bugzilla Reports 21421, 29248. + +* now also supports Kaffe's rmic version shipping with Kaffe + 1.1.2 and above. + +* added casesensitive attribute to and + Bugzilla report 16686 + +* added handledirsep attribute to and + Bugzilla report 32487 + +* added a new mapper + +* When a BuildListener tried to access System.err or System.out, Ant + would have thrown an exception - this has been changed. Ant now + silently ignores the message. BuildListeners still should avoid + accessing either stream. + +* Added a comment attribute to the zip task. + Bugzilla report 22793. + +* Overloaded FileUtils.createNewFile with a boolean mkdirs attribute + to create nonexistent parent directories. + +* has a new "force" attribute that, when true, disables + checking of target files. + +* Made the dest attribute of the apply task optional; mapped target + filenames will be interpreted as absolute pathnames when dest is omitted. + +* Changed default tempdir for from user.dir to java.io.tmpdir. + +* Added searchpath attribute to for searching path variable(s) + when resolveexecutable = true. + +* Added revision and userid attributes to documentation. + +* Added support to the touch task for a mkdirs attribute to create + nonexistent parent directories before touching new files. + +* Added support to the touch task for a pattern attribute to allow + alternate datetime formats. + +* Added support to the touch task to map touched files using a nested + mapper element. + +* Added support to the touch task for a verbose attribute to suppress + logging of new file creation. + +* bad link in docs to the enhancement page in bugzilla. + Bugzilla report 33252. + +* Added length task to get strings' and files' lengths. + +* and now also support Kaffe's versions. + +* Recursive token expansion in a filterset can now be disabled by + setting its recurse attribute to false. + +* Pathconvert no longer requires that one of (targetos|pathsep|dirsep) + be set; platform defaults are used when this is the case. + +* Added preservelastmodified attribute to fixcrlf task. Bugzilla 25770. + +* Added isfileselected condition. + +* Added verbose="true|false" attribute to . When verbose is enabled, + the directory name is logged on entry and exit of the sub-build. Bugzilla 33787. + +* Added -nouserlib option to allow running ant without automatically loading + up ${user.home}/.lib/ant. This is useful when compiling ant, and antlibs. + Modified the build.sh and build.bat to use the option. + +* Added -noclasspath option to allow running ant WITHOUT using CLASSPATH env + variable. Modified ant.bat to do this so that %CLASSPATH% is not looked at. + +* Add else attribute to the condition task, which specifies an + optional alternate value to set the property to if the nested + condition evaluates to false. Bugzilla report 33074. + +* Ant generated jar files should now be detected as jar files by + Solaris. Bugzilla Report 32649. + +* Added two tutorials + - beginner: introduction into Ant + - task developers: using path, fileset etc + +* has new attributes failonerror and quiet. + +Fixed bugs: +----------- + +* Do not pass on ThreadDeath when halting . Bugzilla + 32941. + +* Killing a thread running (e.g. from an IDE) would + not stop the forked process. Bugzilla 31928. + +* Programs run with can now accept standard input + from the Ant console. (Programs run with could + already do so.) Bugzilla 24918. + +* AbstractCvsTask prematurely closed its outputStream and errorStream. + Bugzilla 30097. + +* Impossible to use implicit classpath for + when Ant core loader != Java application loader and + Path.systemClassPath taken from ${java.class.path} Bugzilla 30161. + +* MacroInstance did not clean up nested elements correctly in the execute + method, causing multiple use of the same macro instance with nested + elements to fail. + +* checksum fileext property doc wrong. Bugzilla 30787. + +* FTP task, getTimeDiff method was returning wrong value. Bugzilla 30595. + +* Zip task was not zipping when only empty directories were found. + Bugzilla 30365. + +* Jar task was not including manifest files when duplicate="preserve" was + chosen. Bugzilla 32802. + +* Classpath was treated in the same way as -lib options. Bugzilla 28046. + +* Manual page for cvsversion contained incorrect attributes and did not + say since 1.6.1. Bugzilla 31408. + +* Typo in definition of task causing it not to be defined. + Bugzilla 31403. + +* Execution of top level tasks in imported files get delayed by targets. + Bugzilla report 31487. + +* ExecTask executes checkConfiguration() even though os does not match. + Bugzilla report 31805. + +* Concat task instance could not be run twice. + Bugzilla report 31814. + +* NPE using XmlLogger and antlib. + Bugzilla report 31840. + +* Properties.propertyNames() should be used instead of .keys(). + Bugzilla report 27261. + +* Target location is not set for default target. + Bugzilla report 32267. + +* Incorrect classloader parent in junittask when using with + ant-junit.jar and junit.jar not in the project classloader. Bugzilla + report 28474. + +* getResources() on the classloader returned by ClasspathUtils would + see each resource twice - if the resource is in the project + classpath and if the classloader is requested with a null path. + +* XMLValidate used URL#getFile rather than the ant method FileUtils#fromURI + Bugzilla report 32508 + +* fixed Regexp-Mapper docs which gave outdated instructions (optional.jar) + Bugzilla report 28584 + +* using didn't work with OpenSSH 3.9 and later. + Bugzilla report 31939 + +* failed to set user/password on some JDKs. + Bugzilla report 32667 + +* untar would go into infinite loop for some invalid tar files. + Bugzilla report 29877 + +* forked won't pass -source to a JDK 1.1 or 1.2 javac anymore. + Bugzilla report 32948 + +* propertyset references did not handle nested propertyset references. + +* oata.types.Description.getDescription(Project) would throw a + NullPointerException when the "ant.targets" reference was unset. + +* Wrapper scripts did not detect WINNT value of dynamic OS environment + variable when logged into workstations using Novell authentication. + Bugzilla Report 30366. + +* DependScanner.getResource() always returned nonexistent resources, + even when the resource actually existed. Bugzilla Report 30558. + +* was broken with classfilesets. Bugzilla Report 30567. + +* returned false positives when checking a file + passed in with the current basedir leading twice: + e.g. ${basedir}${file.separator}${basedir}${file.separator}foo . + +* The first file open that took place when using input files with the + , , or tasks was always logged to System.out + instead of to the managing Task. + +* and would try to disconnect from servers they never + connetced to, potentially leading to exceptions in commons-net. + Bugzilla Report 33618. + +* would drop files matched by defaultexcludes during updates. + Bugzilla Report 33412. + +* couldn't store files with size between 2GB and 4GB (the + upper limit set by the ZIP format itself). Bugzilla Report 33310. + +* NPE when when tries to configure a task that + cannot be instantiated. Bugzilla Report 33689. + +* created an invalid command line when running + the Symantec Java compiler. + +* Get with usetimestamp did not work on Java 1.2. + +* Get with usetimestamp did not work when local timestamp roughly >= now. + +* The framed JUnit report now handles multiple reports for the same + testcase properly. Bugzilla Report 32745. + +* didn't work for files with spaces in their names on Windows. + Bugzilla Report 17182. + +* The VAJ tasks could fail if the project name contained characters + that need to get URL encoded. Bugzilla Report 23322. + +* The FTP task could crash with an ArrayIndexOutOfBoundsException + Bugzilla Report 28797 + +* Improved handling of paths on cygwin + Bugzilla Report 31245 + +* TarInputStream#read() wasn't implemented correctly. Bugzilla Report + 34097. + +* failed to process file-hierarchies of more than one level if + scanincludeddirectories was true. Bugzilla Report 24866. + +* forkmode="perBatch" or "once" would ignore extension attributes that + had been specified for s. Bugzilla Report 32973. + +* minor performance update of Locator.fromUri. Bugzilla Report 34529. + +* The refid attribute of the I/O redirector was not functional. + +* SQL task would try access result sets of statements that didn't + return any, causing problems with Informix IDS 9.2 and IBM DB2 8.1 + FixPak 6 (or later). Bugzilla Reports 27162 and 29954. + +* make sure that Zip and its derivates call the createEmptyZip method when + there are no resources to zip/jar/... + +* ant.bat was missing runAntNoClasspath label for goto. + Bugzilla 34510. + + +Changes from Ant 1.6.1 to Ant 1.6.2 +=================================== + +Changes that could break older environments: +-------------------------------------------- + +* The import task used the canonical version of a file path. This + has been changed to use the absolute path. Bugzilla 28505. + +* ant-xalan2.jar has been removed since the only class contained in it + didn't depend on Xalan-J 2 at all. Its sole dependency has always + been TraX and so it has been merged into ant-trax.jar. + +* All exceptions thrown by tasks are now wrapped in a buildexception + giving the location in the buildfile of the task. + +* Nested elements for namespaced tasks and types may belong to the + Ant default namespace as well as the task's or type's namespace. + +* will very likely no longer work with Xalan-J 1. + + Note that Xalan-J 1 has been deprecated for a very long time and we + highly recommend that you upgrade. + + If you really need to continue using Xalan-J 1, please copy the + junit-frames-xalan1.xsl from the distribution's etc directory as + junit-frames.xsl into a new directory and use the task's styledir + attribute to point to. This is the last version of the XSLT + stylesheet that is expected to be compatible with Xalan-J 1. + +* 's extraoptions can now contain multiple arguments. + Bugzilla Report 23599. + +* with default values set by properties would be + seen as new definitions when called twice with different properties. + This was confusing so the definitions are now treated as similar. + Bugzilla Report 31215. + +* has a new attribute "includenosourcepackages" that can be + used to document packages that don't hold source files but a + package.html file. Bugzilla Report 25339. + +Fixed bugs: +----------- + +* eliminate memory leak in AntClassLoader. Bugzilla Report 8689. + +* subant haltonfailure=false did not catch all failures. Bugzilla Report 27007. + +* macrodef @@ escaping was broken. Bugzilla Report 27069. + +* SQL task did not work with Informix IDS 9.2. Bugzilla Report 27162. + +* MacroDef did not allow attributes named 'description'. Bugzilla Report 27175. + +* Throw build exception if name attribute missing from patternset#NameEntry. + Bugzilla Report 25982. + +* Throw build exception if target repeated in build file, but allow targets + to be repeated in imported files. + +* didn't compare timestamps of source and targetfiles when + using a nested . Bugzilla Report 26985. + +* tagdiff.xml was broken in ant 1.6.1. Bugzilla Report 27057. + +* if the basedir contained .. or . dirs, and the build file name contained + .. or ., the basedir was set incorrectly. Bugzilla Report 26765. + +* regression from ant 1.5, exec task outputted two redundant trailing newlines. + Bugzilla Report 27546. + +* NPE when running commons listener. Bugzilla Report 27373. + +* swallowed the stack trace of exceptions thrown by the + executed program if run in the same VM. + +* -projecthelp swallowed (configuration) errors silently. + Bugzilla report 27732. + +* filterset used by filtertask doesn't respect loglevel. Bugzilla Report 27568. + +* wrong compare used in ProjectComponent for logging. Bugzilla Report 28070. + +* failOnAny attribute for was broken. Bugzilla Report 28122. + +* If uses gcj and any of the nested s implies + compilation to native code (like -o or --main), Ant will not pass + the -C switch to gcj. This means you can now compile to native code + with gcj which has been impossible in Ant < 1.6.2. + +* and + behaved identically. + +* now sets the context classloader if you've specified a nested + . Bugzilla Report 24802. + +* and friends would delete the original file when trying to update + a read-only archive. Bugzilla Report 28419. + +* and are working together. Bugzilla report 27218 + +* AntClassLoader#getResource could return invalid URLs. Bugzilla + Report 28060. + +* Ant failed to locate tools.jar if the jre directory name wasn't all + lowercase. Bugzilla Report 25798. + +* Redirector exhibited inconsistent behavior with regard to split + output. When sent to file only, files would be created in all + cases; when split file-property, files were only created if + writes were performed. + +* fixed case handling of scriptdef attributes and elements. + +* UNC pathnames did not work for ANT_HOME or -lib locations on Windows. + Bugzilla report 27922. + +* replacestring tokenfilter only replaced the first occurrence. + +* AntLikeTasksAtTopLevelTest failed on cygwin. + +* I/O-intensive processes hung when executed via . + Bugzilla reports 23893/26852. + +* JDependTask did not close an output file. Bugzilla Report 28557. + +* Using could break XmlLogger. Bugzilla Report 28993. + +* no longer requires keytool to be in your PATH. Bugzilla + Report 29382. + +* could create cyclic links. Bugzilla Report 25181. + +* didn't work in a common situation. Bugzilla + Report 22865. + +* now properly handles remote files and directories with spaces + in their names. Bugzilla Report 26097. + +* now has (local|remote)tofile attributes to rename files on the + fly. Bugzilla Report 26758. + +* and didn't close the session. Bugzilla Report 25935. + +* and XmlLogger didn't play nicley together. + +Other changes: +-------------- +* doc fix concerning the dependencies of the ftp task + Bugzilla Report 29334. + +* has now a property nested element, + allowing to set string properties for the parser + Bugzilla Report 23395. + +* Docs fixes for xmlvalidate.html, javadoc.html, starteam. + Bugzilla Reports 27092, 27284, 27554. + +* now accepts nested s. Bugzilla Report 26364. + +* Shipped XML parser is now Xerces-J 2.6.2. + +* Added nested file element to filelist. + +* spelling fixes, occurred. Bugzilla Report 27282. + +* add uid and gid to tarfileset. Bugzilla Report 19120. + +* has a verbose attribute to get some feedback during the + transfer and new [local|remote][File|Todir] alternatives to file and + todir that explicitly state the direction of the transfer. + +* The OS/2 wrapper scripts have been adapted to use the new launcher. + Bugzilla Report 28226. + +* now also captures stderr output. Bugzilla Report 28349. + +* now supports a nested . Bugzilla Report 11249. + +* has filelist support. + +* task lets you set the priority of the current thread; non-forking + code will inherit this priority in their main thread. + +* New attribute "negate" on to invert selection criteria. + +* Target now supports a Location member. Bugzilla Report 28599. + +* New "pattern" attribute for selector. + +* has a new forkmode attribute that controls the number of + Java VMs that get created when forking tests. This allows you to + run all tests in a single forked JVM reducing the overhead of VM + creation a lot. Bugzilla Report 24697. + +* can now optionally create an index for jars different than the + one it currently builds as well. See the new element + for details. Bugzilla Report 14255. + +* Permit building under JDK 1.5. Bugzilla Report 28996. + +* minor Javadoc changes. Bugzilla Report 28998. + +* Misc. corrections in SignJar.java. Bugzilla Report 28999. + +* Remove redundant
from javah.html. Bugzilla Report 28995. + +* Ignore built distributions. Bugzilla Report 28997. + +* A new roundup attribute on and related task can be used to + control whether the file modification times inside the archive will + be rounded up or down (since zips only store modification times with + a granularity of two seconds). The default remains to round up. + Bugzilla Report 17934. + +* A binary option has been added to . Bugzilla Report 26312. + +* Added DynamicConfiguratorNS, an namespace aware version of + DynamicConfigurator. Bugzilla Report 28436. + +* Add implicit nested element to . Bugzilla Report 25633. + +* Add deleteonexit attribute to . + +* Added Target.getIf/Unless(). Bugzilla Report 29320. + +* has a status attribute that can be used to pass an exit + status back to the command line. + +* accepts a nested . + +* supports loading from a resource. + Bugzilla Report 28340. + +* Nested file mappers and a container mapper implementation have been + introduced. Additionally, the element now accepts "defined" + nested FileNameMapper implementations directly, allowing a usage + comparable to those of , , and . + +* New type introduced to provide extreme I/O flexibility. + Initial support for , , and tasks. + +* has a new ignoremissing attribute (default true for BC) + which will allow nonexistent files specified via s to + be passed to the executable. Bugzilla Report 29585. + +* now also works with Xalan XSLTC and/or JDK 1.5. + Bugzilla Report 27541. + +* doesn't work properly with Tomcat 5.x. We've implemented a + work-around but don't intend to support future changes in Tomcat + 5.x. Please use the jspc task that ships with Tomcat instead of + Ant's. + +Changes from Ant 1.6.0 to Ant 1.6.1 +============================================= + +Changes that could break older environments: +-------------------------------------------- + +* License is now Apache Software License 2.0 + see http://www.apache.org/licenses/ for more information + +Fixed bugs: +----------- +* Remove a recursive template call in the junit xsls that could trigger a stack + overflow. It now uses Xalan extensions to call a Java class directly. + Bugzilla Report 19301 + +* Fix spurious infinite loop detection for filters (introduced in ant 1.6.0). + Bugzilla Report 23154. + +* Fix handling of default ant namespace for nested elements. + +* Fix jboss element of ejb task (introduced in ant 1.6.0). + +* failed to load classes correctly. + +* Ant could fail to start with a NullPointerException if + ANT_HOME/lib/ant-launcher.jar was part of the system CLASSPATH. + +* presetdef'ed types did not work with the ant-type attribute + +* fixed case handling of macrodef attributes and elements. Bugzilla + Reports 25687 and 26225. + +* ignored the append attribute, Bugzilla Report 26137. + +* The gcj compiler adapter for failed if the destination + directory didn't exist. Bugzilla Report 25856. + +* Ant now fails with a more useful message if a new process will be + forked in a directory and that directory doesn't exist. + +* used to break the build on non-GUI environments. Bugzilla + report 11482. + +* Ant 1.6.0 cannot run build scripts in directories with non-ASCII names. + Bugzilla Report 26642. + +Other changes: +-------------- +* Shipped XML parser is now Xerces-J 2.6.1 + +* Translate task logs a debug message specifying the number of files + that it processed. Bugzilla Report 13938. + +* has a new attribute - fixlast. Bugzilla Report 23262. + +* has 2 new attributes, needsresolveproperty and changeproperty. + Bugzilla Report 25711. + +* add description attributes to macrodef attributes and elements. + Bugzilla Report 24711. + +* Extending ClearCase Tasks : + - Added an extra option to 'failonerr' to each ClearCase task/command. + - Extended the functionality of cccheckout. It can check (notco) to see if + the desired element is already checked out to the current view. Thus it + won't attempt to check it out again. + - Added three new ClearCase commands: ccmkattr, ccmkdir, ccmkelem + Bugzilla Report 26253. + +* New condition that can be used to probe for the declaration + and implementation of a task, type, preset, macro, scriptdef, whatever. + As it tests for the implementation, it can be used to check for optional + tasks being available. + +* added nested text support to + +* added initial support for Java 1.5. Java 1.5 is now correctly + detected by Ant and treated just like Java 1.4. You can now specify + source="1.5" in the task. + +* created new task + +* added support for branch logging via the tag attribute in + Bugzilla Report 13510. + +* added support the groovy language in the script and scriptdef tasks + +Changes from Ant 1.5.4 to Ant 1.6.0 +=================================== + +Changes that could break older environments: +-------------------------------------------- + +* This version of Ant can not be built with JDK 1.1 and requires at + least Java 1.2 at runtime as well. Compiling for a 1.1 target is + still supported. + +* Targets cannot have the empty string as their name any longer. + +* ant.jar's manifest does no longer include a Class-Path entry, so it + is no longer possible to run Ant via "java -jar ant.jar" without + manually altering the CLASSPATH. Instead of that a file + ant-bootstrap.jar is included in the etc directory of the binary + distribution, copy this to the lib directory and use + "java -jar ant-bootstrap.jar" instead if you want to run Ant without + the wrapper script (not recommended). + +* The + + + + +

Class

+ + + + + +
+ +

Tests

+ + + + + + + + + +
+ + + + + + + + + + + + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + + + + + + + Unit Test Classes: <xsl:value-of select="$name"/> + + + + + + + + + +
+

+ + <none> +

+
+ +

Classes

+ + + + + + + +
+ +
+ + +
+ + + + + + + All Unit Test Classes + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + / + .html + + + + + + + + + + + + + All Unit Test Packages + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + <none> + + + + + + + + + + Unit Test Results: Summary + + + + + + open('allclasses-frame.html','classListFrame') + +

Summary

+ + + + + + + + + + + + + + + + + Error + Failure + Pass + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+ +

Packages

+ + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + +
+ + <none> + + + + +
+ + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + + +

Classes

+

+ + + + + +
+

+
+ + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + +

Unit Test Results

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + + Name + Tests + Errors + Failures + Time(s) + Time Stamp + Host + + + + + + + Name + Status + Type + Time(s) + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + + + + + + + + + + Error + Failure + TableRowColor + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + +

+ + + + + + + +
+ + + + + + + + + + + + +
+ +
+ + + + + + + + + + + diff --git a/lib/ant/etc/junit-frames.xsl b/lib/ant/etc/junit-frames.xsl new file mode 100644 index 000000000..229e8dd87 --- /dev/null +++ b/lib/ant/etc/junit-frames.xsl @@ -0,0 +1,712 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Unit Test Results. + + + + + + + + + <h2>Frame Alert</h2> + <p> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </p> + + + + + + + +body { + font:normal 68% verdana,arial,helvetica; + color:#000000; +} +table tr td, table tr th { + font-size: 68%; +} +table.details tr th{ + font-weight: bold; + text-align:left; + background:#a6caf0; +} +table.details tr td{ + background:#eeeee0; +} + +p { + line-height:1.5em; + margin-top:0.5em; margin-bottom:1.0em; +} +h1 { + margin: 0px 0px 5px; font: 165% verdana,arial,helvetica +} +h2 { + margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica +} +h3 { + margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica +} +h4 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +h5 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +h6 { + margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica +} +.Error { + font-weight:bold; color:red; +} +.Failure { + font-weight:bold; color:purple; +} +.Properties { + text-align:right; +} + + + + + + + . + + + Unit Test Results: <xsl:value-of select="$class.name"/> + + + + + + + + +

Class

+ + + + + +
+ +

Tests

+ + + + + + + + + +
+ + + + + + + + + +
+ + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + + + + + + + Unit Test Classes: <xsl:value-of select="$name"/> + + + + + + + + + +
+

+ + <none> +

+
+ +

Classes

+ + + + + + + +
+ +
+ + +
+ + + + + + + All Unit Test Classes + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + / + _.html + + + + + + + + + + + + + All Unit Test Packages + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + <none> + + + + + + + + + + Unit Test Results: Summary + + + + + + open('allclasses-frame.html','classListFrame') + +

Summary

+ + + + + + + + + + + + + + + + + Error + Failure + Pass + + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+ +

Packages

+ + + + + + + + + + + Error + Failure + Pass + + + + + + + + + +
+ + <none> + + + + +
+ + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + + +

Classes

+

+ + + + + +
+

+
+ + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + +

Unit Test Results

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + + Name + Tests + Errors + Failures + Time(s) + + + + + + + Name + Status + Type + Time(s) + + + + + + + + + + Error + Failure + Pass + + + + + + + + + + + + + + + + + + Error + Failure + TableRowColor + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + +

+ + + + + + + +
+ + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+ diff --git a/lib/ant/etc/junit-noframes.xsl b/lib/ant/etc/junit-noframes.xsl new file mode 100644 index 000000000..25487f8fd --- /dev/null +++ b/lib/ant/etc/junit-noframes.xsl @@ -0,0 +1,461 @@ + + + + + + + + + + Unit Test Results + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + + +
+ + + + + + + + +

Packages

+ Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers. + + + + + + + + + + + + + + + + + Failure + Error + + + + + + + + + +
+ + + +
+
+ + + + + + + + + + + + +

Package

+ + + + + + +
+ Back to top +

+

+ + + + + + + + +

TestCase

+ + + + + + + + + + +
+ +

+ + Back to top + + + + +

Summary

+ + + + + + + + + + + + + + + + + Failure + Error + + + + + + + + + +
TestsFailuresErrorsSuccess rateTime
+ + + + + + + +
+ + + + +
+ Note: failures are anticipated and checked for with assertions while errors are unanticipated. +
+
+ + + + cur = TestCases['.'] = new Array(); + + + cur[''] = ''; + + + + + +

Unit Test Results

+ + + + + +
Designed for use with JUnit and Ant.
+
+
+ + + + Name + Tests + Errors + Failures + Time(s) + + + + + + + Name + Tests + Errors + Failures + Time(s) + + + + + + + Name + Status + Type + Time(s) + + + + + + + + + + + Failure + Error + + + + + + + + + + + + + + + + + + + + + Error + + + + + + Failure + + + + Error + + + + Success + + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + + +

+ + + +
+ + +
+ + + + + + + + + + + + +
+ +
+ + + + + + + + + + + +
+ diff --git a/lib/ant/etc/log.xsl b/lib/ant/etc/log.xsl new file mode 100644 index 000000000..227279027 --- /dev/null +++ b/lib/ant/etc/log.xsl @@ -0,0 +1,210 @@ + + + + + + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + + + Apache Ant +
+ + + +

+ + + + + + + +

+
+ Copyright © 2000-2002, Apache Software Foundation +
+
+ + +
+ + + + + + failed + complete + + + + + + + + + + + + + +
Build FailedBuild CompleteTotal Time:
+ +
+ See the stacktrace. +
+
+ + + + + +
ant.file
ant.version
java.version
os.name
+ +

Build events

+ + + + + + + +
targettaskmessage
+

+ + + +

Error details

+ + +
+
+
+ +

+
+ + + + + + + a + b + + + [ ] + + + + + + +
diff --git a/lib/ant/etc/maudit-frames.xsl b/lib/ant/etc/maudit-frames.xsl new file mode 100644 index 000000000..eaaf18081 --- /dev/null +++ b/lib/ant/etc/maudit-frames.xsl @@ -0,0 +1,510 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + Audit Results. + + + + + + + + + <H2>Frame Alert</H2> + <P> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </P> + + + + + + + + .bannercell { + border: 0px; + padding: 0px; + } + body { + margin-left: 10; + margin-right: 10; + font:normal 80% arial,helvetica,sanserif; + background-color:#FFFFFF; + color:#000000; + } + .a td { + background: #efefef; + } + .b td { + background: #fff; + } + th, td { + text-align: left; + vertical-align: top; + } + th { + font-weight:bold; + background: #ccc; + color: black; + } + table, th, td { + font-size:100%; + border: none + } + table.log tr td, tr th { + + } + h2 { + font-weight:bold; + font-size:140%; + margin-bottom: 5; + } + h3 { + font-size:100%; + font-weight:bold; + background: #525D76; + color: white; + text-decoration: none; + padding: 5px; + margin-right: 2px; + margin-left: 2px; + margin-bottom: 0; + } + + + + + + + + + + + + + + +

Class .

+ + + + +
+ +

Violations

+ + + + + +
+ + + +
+ + + + + + + + + + + + + + + + +
+

+
+ +

Classes

+ + + + +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + +

Classes

+ + + + +
+ + +
+ + + + + + + + + + / + .html + + + + + + + + + + + + + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

Summary

+ + + + + + + + + + + +
Audited classesReported classesViolations
+ + + + +
+ Note: Rules checked have originated from style guidelines suggested by the language designers, + experience from the Java development community and insite experience. Violations are generally + reported with a reference to the Java Language Specifications (JLS x.x.x) + and Metamata Audit rules (x.x). + Please consult these documents for additional information about violations. +

+ Rules checked also enforce adherence to Sun Java coding guidelines in use at Jakarta. +

+ One should note that these violations do not necessary underline errors but should be used + as an indication for possible errors. As always, use your best judgment and review + them carefully, it might save you hours of debugging. +

+ +

Packages

+ + + + + + + + + + +
+ + + +
+ + + + + + + + + + + + open('package-frame.html','classListFrame') + +

Package

+ + + + +

Classes

+ + + + + +
+
+ + + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + +

Source Code Audit

Designed for use with Webgain QA/Metamata Audit and Ant.
+
+
+ + + + + + +

+
+ Copyright © 1999-2001, Apache Software Foundation +
+
+
+ + + + + + Name + Violations + + + + + + + Line + Message + + + + + + + + + + + + + + + + + + + + + + + + + a + b + + + + + diff --git a/lib/ant/etc/mmetrics-frames.xsl b/lib/ant/etc/mmetrics-frames.xsl new file mode 100644 index 000000000..f105ea846 --- /dev/null +++ b/lib/ant/etc/mmetrics-frames.xsl @@ -0,0 +1,1033 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + Metrics Results. + + + + + + + + + <H2>Frame Alert</H2> + <P> + This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. + </P> + + + + + + + + + + + +

Metrics Reference

+V(G) | +LOC | +DIT | +NOA | +NRM | +NLM | +WMC | +RFC | +DAC | +FANOUT | +CBO | +LCOM | +NOC + + +

Cyclomatic Complexity - V(G)

+This metric was introduced in the 1970s to measure the amount of control +flow complexity or branching complexity in a module such as a +subroutine. It gives the number of paths that may be taken through the +code, and was initially developed to give some measure of the cost of +producing a test case for the module by executing each path. +

+Methods with a high cyclomatic complexity tend to be more difficult to +understand and maintain. In general the more complex the methods of an +application, the more difficult it will be to test it, and this will adversely +affect its reliability. +

+V(G) is a measure of the control flow complexity of a method or +constructor. It counts the number of branches in the body of the method, +defined as: +

    +
  • while statements;
  • +
  • if statements;
  • +
  • for statements.
  • +
+ +The metric can also be configured to count each case of a switch +statement as well. + +
+

Lines of Code - LOC

+ +This is perhaps the simplest of all the metrics to define and compute. +Counting lines has a long history as a software metric dating from before +the rise of structured programming, and it is still in widespread use today. +The size of a method affects the ease with which it can be understood, its +reusability and its maintainability. There are a variety of ways that the size +can be calculated. These include counting all the lines of code, the number +of statements, the blank lines of code, the lines of commentary, and the +lines consisting only of syntax such as block delimiters. +

+This metric can also be used for sizing other constructs as well, for +example, the overall size of a Java class or package can be measured by +counting the number of source lines it consists of. +

+LOC can be used to determine the size of a compilation unit (source file), +class or interface, method, constructor, or field. It can be configured to +ignore: +

    +
  • blank lines;
  • +
  • lines consisting only of comments;
  • +
  • lines consisting only of opening and closing braces.
  • +
+ +
+

Depth of Inheritance Hierarchy - DIT

+ +This metric calculates how far down the inheritance hierarchy a class is +declared. In Java all classes have java.lang.Object as their ultimate +superclass, which is defined to have a depth of 1. So a class that +immediately extends java.lang.Object has a metric value of 2; any of its +subclasses will have a value of 3, and so on. +

+A class that is deep within the tree inherits more methods and state +variables, thereby increasing its complexity and making it difficult to +predict its behavior. It can be harder to understand a system with many +inheritance layers. +

+DIT is defined for classes and interfaces: +

    +
  • all interface types have a depth of 1;
  • +
  • the class java.lang.Object has a depth of 1;
  • +
  • all other classes have a depth of 1 + the depth of their super class.
  • +
+ +
+

Number of Attributes - NOA

+ +The number of distinct state variables in a class serves as one measure of +its complexity. The more state a class represents the more difficult it is to +maintain invariants for it. It also hinders comprehensibility and reuse. +

+In Java, state can be exposed to subclasses through protected fields, which +entails that the subclass also be aware of and maintain any invariants. This +interference with the class's data encapsulation can be a source of defects +and hidden dependencies between the state variables. +

+NOA is defined for classes and interfaces. It counts the number of fields +declared in the class or interface. + + +

Number of Remote Methods - NRM

+ +NRM is defined for classes. A remote method call is defined as an +invocation of a method that is not declared in any of: +
    +
  • the class itself;
  • +
  • a class or interface that the class extends or implements;
  • +
  • a class or method that extends the class.
  • +
+ +The value is the count of all the remote method calls in all of the methods +and constructors of the class. + +
+

Number of Local Methods - NLM

+ +NLM is defined for classes and interfaces. A local method is defined as a +method that is declared in the class or interface. NLM can be configured to +include the local methods of all of the class's superclasses. Methods with +public, protected, package and private visibility can be independently +counted by setting configuration parameters. + +
+

Weighted Methods per Class - WMC

+ +If the number of methods in a class can be determined during the design +and modeling phase of a project, it can be used as a predictor of how +much time and effort is needed to develop, debug and maintain it. This +metric can be further refined by incorporating a weighting for the +complexity of each method. The usual weighting is given by the cyclomatic +complexity of the method. +

+The subclasses of a class inherit all of its public and protected methods, +and possibly its package methods as well, so the number of methods a +class has directly impacts the complexity of its subclasses. Classes with +large numbers of methods are often specific to a particular application, +reducing the ability to reuse them. +

+The definition of WMC is based upon NLM, and it provides the same +configuration parameters for counting inherited methods and of varying +visibility. The main difference is that NLM always counts each method as 1, +whereas WMC will weight each method. There are two weighting schemes: +

    +
  • V(G) the cyclomatic complexity of the method is used as its weight. + Methods from class files are given a V(G) of 1.
  • +
  • the arity, or the number of parameters of the method are used to + determine the weight.
  • +
+ +
+

Response For Class - RFC

+ +The response set of a class is the set of all methods that can be invoked as +a result of a message sent to an object of the class. This includes methods +in the class's inheritance hierarchy and methods that can be invoked on +other objects. The Response For Class metric is defined to be size of the +response set for the class. A class which provides a larger response set is +considered to be more complex than one with a smaller response set. +

+One reason for this is that if a method call on a class can result in a large +number of different method calls on the target and other classes, then it +can be harder to test the behavior of the class and debug problems. It will +typically require a deeper understanding of the potential interactions that +objects of the class can have with the rest of the system. +

+RFC is defined as the sum of NLM and NRM for the class. The local methods +include all of the public, protected, package and private methods, but not +methods declared only in a superclass. + + +

Data Abstraction Coupling - DAC

+ +DAC is defined for classes and interfaces. It counts the number of reference +types that are used in the field declarations of the class or interface. The +component types of arrays are also counted. Any field with a type that is +either a supertype or a subtype of the class is not counted. + + +

Fan Out - FANOUT

+ +FANOUT is defined for classes and interfaces, constructors and methods. It +counts the number of reference types that are used in: +
    +
  • field declarations;
  • +
  • formal parameters and return types;
  • +
  • throws declarations;
  • +
  • local variables.
  • +
+ +The component types of arrays are also counted. Any type that is either a +supertype or a subtype of the class is not counted. + +
+

Coupling Between Objects - CBO

+ +When one object or class uses another object or class they are said to be +coupled. One major source of coupling is that between a superclass and a +subclass. A coupling is also introduced when a method or field in another +class is accessed, or when an object of another class is passed into or out +of a method invocation. Coupling Between Objects is a measure of the +non-inheritance coupling between two objects. +

+A high value of coupling reduces the modularity of the class and makes +reuse more difficult. The more independent a class is the more likely it is +that it will be possible to reuse it in another part of the system. When a +class is coupled to another class it becomes sensitive to changes in that +class, thereby making maintenance for difficult. In addition, a class that is +overly dependent on other classes can be difficult to understand and test in +isolation. +

+CBO is defined for classes and interfaces, constructors and methods. It +counts the number of reference types that are used in: +

    +
  • field declarations
  • +
  • formal parameters and return types
  • +
  • throws declarations
  • +
  • local variables
  • +
+ +It also counts: +
    +
  • types from which field and method selections are made
  • +
+ +The component types of arrays are also counted. Any type that is either a +supertype or a subtype of the class is not counted. + +
+

Lack of Cohesion Of Methods - LCOM

+ +The cohesion of a class is the degree to which its methods are related to +each other. It is determined by examining the pattern of state variable +accesses within the set of methods. If all the methods access the same state +variables then they have high cohesion; if they access disjoint sets of +variables then the cohesion is low. An extreme example of low cohesion +would be if none of the methods accessed any of the state variables. + +If a class exhibits low method cohesion it indicates that the design of the +class has probably been partitioned incorrectly, and could benefit by being +split into more classes with individually higher cohesion. On the other +hand, a high value of cohesion (a low lack of cohesion) implies that the +class is well designed. A cohesive class will tend to provide a high degree +of encapsulation, whereas a lack of cohesion decreases encapsulation and +increases complexity. +

+Another form of cohesion that is useful for Java programs is cohesion +between nested and enclosing classes. A nested class that has very low +cohesion with its enclosing class would probably better designed as a peer +class rather than a nested class. +

+LCOM is defined for classes. Operationally, LCOM takes each pair of +methods in the class and determines the set of fields they each access. If +they have disjoint sets of field accesses increase the count P by one. If they +share at least one field access then increase Q by one. After considering +each pair of methods, +LCOM = (P > Q) ? (P - Q) : 0 +

+Indirect access to fields via local methods can be considered by setting a +metric configuration parameter. + + +

Number Of Classes - NOC

+ +The overall size of the system can be estimated by calculating the number +of classes it contains. A large system with more classes is more complex +than a smaller one because the number of potential interactions between +objects is higher. This reduces the comprehensibility of the system which +in turn makes it harder to test, debug and maintain. +

+If the number of classes in the system can be projected during the initial +design phase of the project it can serve as a base for estimating the total +effort and cost of developing, debugging and maintaining the system. +

+The NOC metric can also usefully be applied at the package and class level +as well as the total system. +

+NOCL is defined for class and interfaces. It counts the number of classes or +interfaces that are declared. This is usually 1, but nested class declarations +will increase this number. + + + + + + + .bannercell { + border: 0px; + padding: 0px; + } + body { + margin-left: 10; + margin-right: 10; + font:normal 80% arial,helvetica,sanserif; + background-color:#FFFFFF; + color:#000000; + } + .a td { + background: #efefef; + } + .b td { + background: #fff; + } + th, td { + text-align: left; + vertical-align: top; + } + th { + font-weight:bold; + background: #ccc; + color: black; + } + table, th, td { + font-size:100%; + border: none + } + table.log tr td, tr th { + + } + h2 { + font-weight:bold; + font-size:140%; + margin-bottom: 5; + } + h3 { + font-size:100%; + font-weight:bold; + background: #525D76; + color: white; + text-decoration: none; + padding: 5px; + margin-right: 2px; + margin-left: 2px; + margin-bottom: 0; + } + .Error { + font-weight:bold; color:red; + } + + + + + + + + + + + + + + + + +

Class .

+ + + +
+ +

Methods

+ + + +
+ + + + +
+ + + + + + + + + + + + + + + +
+

+
+ +

Classes

+ + + + + + + + +
+ +
+ + +
+ + + + + + + + + + + +

Classes

+ + + + + +
+ + +
+ + + + + + +
+ + + / + + .html + + + + + + + + + + + + + + + + +

Home

+

Packages

+ + + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +

Summary

+ + + + + + + + + + + + + + + + + +
V(G)LOCDITNOANRMNLMWMCRFCDACFANOUTCBOLCOMNOCL
+ + + + +
+ Note: Metrics evaluate the quality of software by analyzing the program source and quantifying + various kind of complexity. Complexity is a common source of problems and defects in software. + High complexity makes it more difficult to develop, understand, maintain, extend, test and debug + a program. +

+ The primary use of metrics is to focus your attention on those parts of code that potentially are + complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial + actions. + For additional information about metrics and their meaning, please consult + Metamata Metrics manual. +

+ +

Packages

+ + + + + + +
+ + + + +
+ + + + + + + + + + + +

Package

+ + + + +
+ + + + + +
+ Note: Metrics evaluate the quality of software by analyzing the program source and quantifying + various kind of complexity. Complexity is a common source of problems and defects in software. + High complexity makes it more difficult to develop, understand, maintain, extend, test and debug + a program. +

+ The primary use of metrics is to focus your attention on those parts of code that potentially are + complexity hot spots. Once the complex areas your program have been uncovered, you can take remedial + actions. + For additional information about metrics and their meaning, please consult + Metamata Metrics manual. +

+ + + +

Classes

+ + + + + + +
+
+ + + + +
+ + + + + + + ../ + + + + + + ../ + + + + + + + + stylesheet.css + + + + + + + + + + + + + + + +
+ + http://jakarta.apache.org + +

Source Code Metrics

Designed for use with Webgain QA/Metamata Metrics and Ant.
+
+
+ + + + + + +

+
+ Copyright © 1999-2001, Apache Software Foundation +
+
+
+ + + + + Name + V(G) + LOC + DIT + NOA + NRM + NLM + WMC + RFC + DAC + FANOUT + CBO + LCOM + NOCL + + + + + + + Name + V(G) + LOC + FANOUT + CBO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a + b + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Error + + + + +
+ diff --git a/lib/ant/etc/tagdiff.xsl b/lib/ant/etc/tagdiff.xsl new file mode 100644 index 000000000..12a1e6f75 --- /dev/null +++ b/lib/ant/etc/tagdiff.xsl @@ -0,0 +1,177 @@ + + + + + + + + + + + + + + + + + + + + + <xsl:value-of select="$title"/> + + + +

+ +

+ Tagdiff between and + +

Designed for use with Ant.

+
+ + + + + +
+ New Files | + Modified Files | + Removed Files +
+ + + New Files + New + + + + + Modified Files + Modified + + + + + Removed Files + Removed + + +
+ + + +
+ + + + + + + + + + - entries + + (back to top) + + + + + + + +
    + +
+ + + + + + + + + + + + + + + + + + + + mailto: + + + + + + +
  • + + / + + + + + + + + /?rev=&content-type=text/x-cvsweb-markup + + + /?r1=&r2=&diff_format=h + + () + + +
  • +
    + + + + + + +
    diff --git a/lib/ant/lib/README b/lib/ant/lib/README new file mode 100644 index 000000000..38fa1fa90 --- /dev/null +++ b/lib/ant/lib/README @@ -0,0 +1,14 @@ +Please refer to the Ant manual under Installing Ant / Library +Dependencies for a list of the jar requirements for various optional +tasks and features. + +This directory contains xercesImpl.jar from the 2.6.2 release of +Apache Xerces. For more information or newer releases see +. See the file LICENSE.xerces for +the terms of distribution. + +It also contains xml-apis.jar from the 2.6.2 release of Apache Xerces. +For more information or newer releases see +. See the files LICENSE.dom and +LICENSE.sax for the terms of distribution. + diff --git a/lib/ant/lib/ant-antlr.jar b/lib/ant/lib/ant-antlr.jar new file mode 100644 index 000000000..eb7b13fca Binary files /dev/null and b/lib/ant/lib/ant-antlr.jar differ diff --git a/lib/ant/lib/ant-apache-bcel.jar b/lib/ant/lib/ant-apache-bcel.jar new file mode 100644 index 000000000..f30afa60a Binary files /dev/null and b/lib/ant/lib/ant-apache-bcel.jar differ diff --git a/lib/ant/lib/ant-apache-bsf.jar b/lib/ant/lib/ant-apache-bsf.jar new file mode 100644 index 000000000..3e6f9de0e Binary files /dev/null and b/lib/ant/lib/ant-apache-bsf.jar differ diff --git a/lib/ant/lib/ant-apache-log4j.jar b/lib/ant/lib/ant-apache-log4j.jar new file mode 100644 index 000000000..967585690 Binary files /dev/null and b/lib/ant/lib/ant-apache-log4j.jar differ diff --git a/lib/ant/lib/ant-apache-oro.jar b/lib/ant/lib/ant-apache-oro.jar new file mode 100644 index 000000000..3feec40c0 Binary files /dev/null and b/lib/ant/lib/ant-apache-oro.jar differ diff --git a/lib/ant/lib/ant-apache-regexp.jar b/lib/ant/lib/ant-apache-regexp.jar new file mode 100644 index 000000000..9de8413dd Binary files /dev/null and b/lib/ant/lib/ant-apache-regexp.jar differ diff --git a/lib/ant/lib/ant-apache-resolver.jar b/lib/ant/lib/ant-apache-resolver.jar new file mode 100644 index 000000000..0cca33a5f Binary files /dev/null and b/lib/ant/lib/ant-apache-resolver.jar differ diff --git a/lib/ant/lib/ant-commons-logging.jar b/lib/ant/lib/ant-commons-logging.jar new file mode 100644 index 000000000..feccf3ecb Binary files /dev/null and b/lib/ant/lib/ant-commons-logging.jar differ diff --git a/lib/ant/lib/ant-commons-net.jar b/lib/ant/lib/ant-commons-net.jar new file mode 100644 index 000000000..c43696a91 Binary files /dev/null and b/lib/ant/lib/ant-commons-net.jar differ diff --git a/lib/ant/lib/ant-icontract.jar b/lib/ant/lib/ant-icontract.jar new file mode 100644 index 000000000..218023dd8 Binary files /dev/null and b/lib/ant/lib/ant-icontract.jar differ diff --git a/lib/ant/lib/ant-jai.jar b/lib/ant/lib/ant-jai.jar new file mode 100644 index 000000000..d52167471 Binary files /dev/null and b/lib/ant/lib/ant-jai.jar differ diff --git a/lib/ant/lib/ant-javamail.jar b/lib/ant/lib/ant-javamail.jar new file mode 100644 index 000000000..3aa28d88e Binary files /dev/null and b/lib/ant/lib/ant-javamail.jar differ diff --git a/lib/ant/lib/ant-jdepend.jar b/lib/ant/lib/ant-jdepend.jar new file mode 100644 index 000000000..532c817d3 Binary files /dev/null and b/lib/ant/lib/ant-jdepend.jar differ diff --git a/lib/ant/lib/ant-jmf.jar b/lib/ant/lib/ant-jmf.jar new file mode 100644 index 000000000..43ea62165 Binary files /dev/null and b/lib/ant/lib/ant-jmf.jar differ diff --git a/lib/ant/lib/ant-jsch.jar b/lib/ant/lib/ant-jsch.jar new file mode 100644 index 000000000..059c81f36 Binary files /dev/null and b/lib/ant/lib/ant-jsch.jar differ diff --git a/lib/ant/lib/ant-junit.jar b/lib/ant/lib/ant-junit.jar new file mode 100644 index 000000000..7f508c33c Binary files /dev/null and b/lib/ant/lib/ant-junit.jar differ diff --git a/lib/ant/lib/ant-launcher.jar b/lib/ant/lib/ant-launcher.jar new file mode 100644 index 000000000..5355cccf4 Binary files /dev/null and b/lib/ant/lib/ant-launcher.jar differ diff --git a/lib/ant/lib/ant-netrexx.jar b/lib/ant/lib/ant-netrexx.jar new file mode 100644 index 000000000..392dc66f7 Binary files /dev/null and b/lib/ant/lib/ant-netrexx.jar differ diff --git a/lib/ant/lib/ant-nodeps.jar b/lib/ant/lib/ant-nodeps.jar new file mode 100644 index 000000000..5f0a54c7e Binary files /dev/null and b/lib/ant/lib/ant-nodeps.jar differ diff --git a/lib/ant/lib/ant-starteam.jar b/lib/ant/lib/ant-starteam.jar new file mode 100644 index 000000000..baefc8cba Binary files /dev/null and b/lib/ant/lib/ant-starteam.jar differ diff --git a/lib/ant/lib/ant-stylebook.jar b/lib/ant/lib/ant-stylebook.jar new file mode 100644 index 000000000..b797bcce2 Binary files /dev/null and b/lib/ant/lib/ant-stylebook.jar differ diff --git a/lib/ant/lib/ant-swing.jar b/lib/ant/lib/ant-swing.jar new file mode 100644 index 000000000..251c0c173 Binary files /dev/null and b/lib/ant/lib/ant-swing.jar differ diff --git a/lib/ant/lib/ant-trax.jar b/lib/ant/lib/ant-trax.jar new file mode 100644 index 000000000..e827e295a Binary files /dev/null and b/lib/ant/lib/ant-trax.jar differ diff --git a/lib/ant/lib/ant-vaj.jar b/lib/ant/lib/ant-vaj.jar new file mode 100644 index 000000000..1efcef5b1 Binary files /dev/null and b/lib/ant/lib/ant-vaj.jar differ diff --git a/lib/ant/lib/ant-weblogic.jar b/lib/ant/lib/ant-weblogic.jar new file mode 100644 index 000000000..bcd303ce3 Binary files /dev/null and b/lib/ant/lib/ant-weblogic.jar differ diff --git a/lib/ant/lib/ant-xalan1.jar b/lib/ant/lib/ant-xalan1.jar new file mode 100644 index 000000000..e21dbd196 Binary files /dev/null and b/lib/ant/lib/ant-xalan1.jar differ diff --git a/lib/ant/lib/ant-xslp.jar b/lib/ant/lib/ant-xslp.jar new file mode 100644 index 000000000..1eb6dd6ce Binary files /dev/null and b/lib/ant/lib/ant-xslp.jar differ diff --git a/lib/ant/lib/ant.jar b/lib/ant/lib/ant.jar index 7cf87e838..15aae908a 100644 Binary files a/lib/ant/lib/ant.jar and b/lib/ant/lib/ant.jar differ diff --git a/lib/ant/lib/junit.jar b/lib/ant/lib/junit.jar new file mode 100644 index 000000000..674d71e89 Binary files /dev/null and b/lib/ant/lib/junit.jar differ diff --git a/lib/ant/lib/xercesImpl.jar b/lib/ant/lib/xercesImpl.jar index d41cf97ed..f0fb0e89b 100644 Binary files a/lib/ant/lib/xercesImpl.jar and b/lib/ant/lib/xercesImpl.jar differ diff --git a/lib/ant/lib/xml-apis.jar b/lib/ant/lib/xml-apis.jar index 8331d27f1..2dd837714 100644 Binary files a/lib/ant/lib/xml-apis.jar and b/lib/ant/lib/xml-apis.jar differ diff --git a/lib/ant/welcome.html b/lib/ant/welcome.html new file mode 100644 index 000000000..1e2a27b94 --- /dev/null +++ b/lib/ant/welcome.html @@ -0,0 +1,352 @@ + + + + + Welcome to Apache Ant 1.6 + + +

    Welcome to Apache Ant 1.6

    +



    +

    +

    Your life just got better. +

    +

    Not in big ways. Your social life isn't going to be helped, though +with any luck you may now have more time for one. Nor is it going to +take less time to write your Java code -although we note that running +XDoclet under Ant +lets you avoid writing so much code. Nor is a new release of Ant +likely to provide a fundamental kick-start to the currently somewhat +subdued technology and software industries. +

    +

    No, Ant1.6 will not fundamentally change your life. But if you do +have to get software out on time -"roughly what you asked for, +roughly when you asked", then Ant1.6 provides lots of little +improvements over the existing version. +

    +

    Before we look at those details, lets look at the world of The +Automated Build.

    +

    Firstly, we'd like to thank everyone for all those awards that +have been flowing in. The JavaWorld Editors' Choice Award for "Most +Useful Java Community-Developed Technology", The Java +Developer's Journal "Editors Choice Award", and Java Pro +Reader's Choice award for "Most Valuable Java Deployment +Technology." Wow. That's a lot of awards. Aardman Animations +keep all their Wallace and Gromit -related oscars in a cabinet in +their tea room. If the Apache organization had a tea room, those Ant +awards would be forcing all the other (excellent) Apache products to +fight hard for their cabinet space. +

    +

    All those awards come for a reason: everyone, at least everyone +working on any project of moderate complexity, needs to control their +build process. Ant is one of the best ways to do it in Java, and, +over the past four years, it has moved from a tool used simply to +build Tomcat cross-platform, to a tool used across many open source +projects, and now to a tool used by almost all Java projects. Indeed, +pretty much the only competitor in the Java space is a sibling +project under the Apache banner, Maven. +One of the obvious signs of Ant's success is that all the popular +IDEs, from the Open Source -Emacs JDE, Eclipse, NetBeans and jEdit - +to the commercial: IntelliJ IDEA, Borland JBuilder- all ship with +built in Ant support. This lets you use your favourite IDE for what +it is good at: editing text, creating Java source, refactoring +existing code, debugging and the like, and you can turn to Ant for +co-ordinating the build-test-deploy/deliver process. That Ant based +process can be triggered from keystrokes in the IDE, command line +invocations for those so inclined, and in automated scheduled builds +so the machines can keep an eye on the engineers. Another sign is how +Ant is helping the Java aisle of bookstores fight back against +attempts by books about Macromedia Flash to take over all the space +-there are now seven or eight books on the subject, with more on the +way. Germany and Korea have their own native language books too, +which shows how global the tool is -in use and in development terms. +

    +

    The other metric of success is the pre-announcement hints from our +distant software colleagues in Redmond, Microsoft, of a new build +tool, "MSBuild", which "might be the single most +important feature innovation in our pipeline", according to one +MS developer. That is surely the greatest metric of success: XML +based build tools are now viewed as so essential to the modern build +process, that Microsoft has to come up with a competitor to Ant to +win Java developers over to .NET. Let's hope they discover we like +ubiquitous JUnit testing too, and refactoring IDEs that create and +run the tests for us. +

    +

    Success comes at a price, of course. One price is all those +support calls. We try and stay on top of the bug reports, but one +thing we cannot do is fix inconsistencies or things that seem like +defects if they stand a significant chance of breaking existing +builds. Its sad, but there are lots of little minor faults with Ant +that we don't dare fix because, well, things might break. For +example, why don't if= and unless= clauses also support +if="${property}" clauses? Alternatively, why isn't it an +error to use a property that isn't defined. Everyone that has ever +seen directories called ${build.dir} popping up the source tree will +understand why that behaviour is not always what you want. Well, we +could fix these things, but we won't, because backwards compatibility +is sacred. +

    +

    That is the other price of success: all those users who have +existing build files they want to work. And all those IDEs that host +Ant, and who want an easy upgrade to a new version. This means we +have lost a lot of the flexibility we used to have in the early days +of the project, when different versions of Ant could have completely +different property evaluation algorithms and nobody would bat an +eyelid. Now, even the most obscure bug fix ends up generating 'you +broke my build complaints'. +

    +

    This explains why there will not be the 'incompatible upgrade' +version of Ant, Ant2.0, that has long been discussed on our web site. +

    +

    Where is Ant2.0?

    +

    For years we have been discussing Ant2.0, the complete rewrite +version that would be cleaner and faster, and slightly incompatible +with Ant1.x. It would be the opportunity to take the lessons from the +1.x line, and support them cleanly. We even got as far as having +multiple implementations of new Ant engines in the CVS repository, +especially Mutant and Myrmidion. But we always seemed to have a hard +time making progress -everyone was too busy using and firefighting +Ant1.x that nobody got time to work on the 2.x codebase. Which is a +shame, as all the proposals had interesting ideas.

    +

    After Ant1.5 shipped, the future of Ant effectively resolved into +one of evolution rather than revolution. There will be no Ant2.0 with +a complete new engine underneath. There will be no need to run XSL +transforms over existing build files to move them to the Ant2.0 +world. Instead Ant1.x is getting better underneath the build file +-improving its internal design while retaining five-nines backwards +compatibility with existing build files. +

    +

    And that is what we have been up to.

    +

    Under the hood, Ant1.6 contains some of the most major reworkings +of the core Ant system yet seen. We haven't finished yet, and are +holding back some of the more visible developments so we can see what +works before their release in a product forces us to maintain them. +But the underlying parts of Ant are now set up for the next stage in +development. +

    +

    Whether we call the next version of Ant 1.7 or 2.0 is something we +have yet to decide. Maybe we should call it 3.0 just to surprise +people.

    +

    What has changed

    +

    Look at the WHATSNEW +document to get a full list of changes. Here are some of the core +conceptual differences.

    +

    No more Java1.1

    +

    We got fed up of jumping through reflection hoops to do everything +from weak references to setting file timestamps. After consultation +with the Ant user mail list, Ant1.6 only runs on Java1.2 or later. It +can still cross compile to Java1.1 if that is what you have to do. We +haven't completely purged all 1.1 references in the docs, or 1.1 +support from the source, but that will come over time.

    +

    New classloader use.

    +

    This is going to make people nervous. If there is one thing Java +developers have learned over time, only the very naive, the very +brave, or the very competent do things with classloaders. We will let +the Ant users decide what category to put us in, but before everyone +panics, Costin, of Tomcat fame, did a lot of the work here. You don't +write application servers without understanding classloaders inside +and out. +

    +

    The impact of these changes will trickle out over Ant versions. In +1.6, the key features are +

    +
      +
    1. We have got rid of the bit in the batch file/shell script + that built up a really big classpath environment variable from + everything in ANT_HOME/lib. Now that is done in a launcher class + that does the work then calls tools.ant.Main as before.

      +
    2. You can add new library directories to that classloader with + the -lib option on the command line. This option is interpreted by + the launcher class, so will not work with IDEs and other apps that + use the inner entry point.

      +
    3. We have broken up optional.jar into many-many jar files, such + as ant-commons-logging.jar, ant-xalan2.jar, etc etc, and a + nodeps.jar for optional stuff without any dependencies. This creates + a lot of jar files.

      +
    4. You can now <taskdef> existing tasks -like <junit>- + by including the specific ant jar and the dependent libraries + (i.e. junit.jar) in the declaration. This solves the problem of + ANT_HOME/lib needing to contain every jar possibly needed by every + user/project. You still have to declare the tasks one by one, + something we will fix in Ant1.7

      +
    +

    Adapters

    +

    These are Java classes that adapt> arbitrary Java +classes into ant tasks or types. There has always been some of this +stuff inside Ant, but now you can <taskdef> a task by naming +not just the implementation class, but the adapter class. An adapter +is essentially a meta task implementation -something that can be used +to create new tasks dynamically. Which, when you consider that the +core of Ant is fundamentally an XML to java mapping system and a +simple workflow engine, may let you do very unusual things with Ant. +

    +

    Antlib: Ant libraries

    +

    This is something we will expand in future. Till now you could +declare tasks and types with <taskdef> and <typedef>. If +they were in a jar, you could write a properties file and name the +resource path of the file in the jar. If you wanted to have both +tasks and types, you had name a shared classloader. If you wanted to +add more things -such as conditions or mappers, you were out of luck.

    +

    Antlibs are Ant Libraries, JAR files containing the code to extend +Ant, and an XML description file to describe how Ant is extended. +Before anyone panics at 'yet another XML descriptor syntax' to learn: +you may already know the syntax. We call it "Ant build files". +Actually it is a subset: it can only contain those task declarations +that are derived from org.apache.tools.ant.taskdefs.AntlibDefinition. +That includes <taskdef> and <typedef>, and any other +task you choose to derive. We are experimenting with scripting +and some kind of task predefinition declarations in antlibs. With the +latter, you will be able to write a predefined task -such as a +<javac> derivative with the compiler options set, and then use +it any of your build files. This is all too experimental to get into +Ant1.6 -expect it in the successor. For now, start using antlibs and +use the <taskdef> task to load them into your projects.

    +

    XML Namespace aware

    +

    Ant finally adopts XML namespaces. This is to address build file +scalability; antlibs can be imported into their own namespaces, and +so you can avoid namespace clashes with other libraries. If you do +not know what namespaces are, do not worry -they are not compulsory.

    + +

    All tasks can go in at the toplevel

    +

    + +Prior to Ant1.6, only three tasks were allowed outside +targets : <taskdef>,<typedef> and <property>. +Ant 1.6 puts an end to this distinction; anything can go in at the top +level. This is partly because there were many more tasks that merited the +option based on the original rationale of "global initialization tasks": +<import> and <antlib> were the new additions, but existing +tasks like <condition>, <available>, <xmlproperties> +and <loadproperties> had equal rights. +

    +

    +Rather that expand the set slightly, now all tasks are allowed outside +targets. This gives external tasks the same rights as built in code, +eliminates sporadic bug reports, and annoying error messages. It gives +users the ability to write build files without any targets at all; the +top-level declarations are processed in sequence. +

    + +On a style note, we strongly advocate using this feature carefully. It +is best if zero-side-effect, initialization-only tasks get put into the +top level. Remember also that all top level statements are processed in +order, before any targets are executed. Even tasks at the end of the +file will get executed before targets declared above them. + +

    New Tasks

    +

    As usual, the task base is growing and expanding. These days the +ant core is resisting adopting many of the highly worthy donations of +tasks from people, because they make maintenance and firefighting +worse. Our current stance is that except in special circumstances, +Ant tasks to support third party open source projects, should live +with the projects themselves. This keeps them in sync with the +libraries they integrate with, avoids GPL/Apache licensing issues, +and reduces the Ant team's support workload, letting them focus on +the core. The antlib mechanism is intended to make it easier for +people to load tasks from libraries for this very reason.

    +

    That said, we are pleased to introduce many new tasks. Of +particular interest may be the SSH tasks, which let one deploy code +to remote servers securely. Now you really can do live updates with +Ant -if the operations team will let you. The other one that is quite +interesting is <subant>. This is an extension of the <ant> +task, to take an entire fileset of directories and run their build +files. This is incredibly useful in very large projects. This does +not mean that we are advocating the many-build-file development +pattern, but in a sufficiently complex project it happens anyway. +<subant> keeps things manageable.

    +

    What else

    +

    So, what is new in Ant1.6? Lots of stuff. You will have to look at +the whatsnew file to see, but here are some +key points. +

    +
      +
    1. Bug fixes. We know, some things + were broken in 1.5. In ant1.6 we have moved the bugs, fixing the + ones we could, and no doubt adding different ones. Hopefully the + total bug count has decreased. +

      +
    2. New platforms: Open VMS and HP's + NonStop Kernel (Tandem) OS. OpenVMS is very different from the rest; + Read the <exec> task documentation carefully. +

      +
    3. Spawning. <java> and <exec> + started applications can outlive Ant if you set spawn=true. Note + that the moment you do so, Ant cannot bind to their input or output, + for obvious reasons. +

      +
    4. Synchronisation with Java versions (heh, thought by moving + javah's entry point that you could hide from us? Think again).

      +
    5. Synchronization with third party libraries. Of special note: + we have moved to the Apache commons-net.jar, the successor to + NetComponents for telnet and FTP as well as Apache BSF, the + successor to IBM BSF, for script.

      +
    +

    There are many more enhancements, so we hope you will find your +build projects easier. We have, as usual, jumped through hoops to +keep existing builds working. If your build file stops working, and +it isn't something listed on the 'changes that may break your build' +part of the WHATSNEW file, or something we know about on bugzilla, +please don't hesitate to file a new bug report, preferably one with a +replicable test and a patch to fix the problem. Please, please, +please, do a search on bugzilla first. You do not want to be the +seventy-third person to complain that Ant1.6 doesn't do something +that it should. +

    +

    Thanks, +

    +

    The Ant development team. +

    +

    Acknowledgements

    +
      +
    • Many thanks for Antoine to being the build manager for this + release! +

      +
    • Thank you to everyone who supplies the components we use in + Ant, particularly JUnit, commons-logging, log4J, bcel, ORO, Xerces, and Xalan. +

      +
    • Everyone who has supplied bug reports, especially those with + patches and tests.

      +
    • IDE projects who incorporate Ant into their products. Not + only does this help Ant's success, you find lots of interesting + integration defects. Special mention to the Eclipse team for fixing + our memory leaks :)

      +
    +

    Call to Action

    + +

    + +It is an interesting time for Java. .NET is a serious challenger, and +will get better. A core strength of Java over .NET is its community. It +is the community that gave the world leading edge development tools and +other core components: Ant, JUnit, XDoclet, hsqldb, Hibernate, Struts, +etc. These things weren't created by JCP committees, or built according +to the strategic vision of a Fortune 100 company. They were written by +Java developers, for Java developers, usually to meet their own tactical +goals. + +

    + +

    If Java is to survive -and we think it ought to- everyone who can +needs to become active members of that community. It could be helping +with Ant, but it could just as easily be helping with any other open +source Java project, be hosted by Apache, FSF, Sourceforge or someone +else, be it server-side, client-side or mobile-side. It could be an +existing project, or it could be your own idea as to how things could +be better. The key is: things will only be better if you put in the +time to make it so. +

    +

    Call to Inaction

    +

    A special message to whoever it is in charge of commands in +tools.jar: stop moving your entry points! In Ant1.5 we had to deal +with the 'classic' javac entry point going away in Java1.4.0, +seemingly coming back later. In Java 1.4.2, the javah entry point +moved. The traditional command line invocation mechanism has been +replaced by hosted invocation -Ant, Maven, IDEs, etc, and moving +entry points around breaks these host applications. Even if we get a +bug fix out in Ant a few weeks after the Java release, it takes +months for this to trickle down to end users, especially via IDEs and +other distributions. For example, Sun's own Java Web Services +Developer Pack ships with Ant1.5.1, and so cannot run <javah> +on a 1.4.2 installation. +

    + + \ No newline at end of file -- cgit v1.2.3