123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804 |
- Changes from Ant 1.10.4 TO Ant 1.10.5
- =====================================
- Fixed bugs:
- -----------
- * Fixes a regression in the "get" task where redirects
- from a HTTP resource to a HTTPS resource started throwing
- an exception.
- Bugzilla Report 62499
- * the new allowFilesToEscapeDest didn't work when set to false and
- archive entries contained relative paths with so many ".."
- segnments that the resulting path would go beyond the file system
- root.
- Bugzilla Report 62502
- Other changes:
- --------------
- * Java task now accepts a "sourcefile" attribute to allow single file
- source program execution, a feature that is introduced in Java 11.
- Changes from Ant 1.10.3 TO Ant 1.10.4
- =====================================
- Changes that could break older environments:
- -------------------------------------------
- * <unzip>, <unjar> and <untar> will no longer extract entries whose
- names would make the created files be placed outside of the
- destination directory anymore by default. A new attribute
- allowFilesToEscapeDest can be used to override the behavior.
- Another special case is when stripAbsolutePathSpec is false (which
- no longer is the default) and the entry's name starts with a
- (back)slash and allowFilesToEscapeDest hasn't been specified
- explicitly, in this case the file may be created outside of the
- dest directory as well.
- In addition stripAbsolutePathSpec is now true by default.
- Based on a recommendation by the Snyk Security Research Team.
- Fixed bugs:
- -----------
- * Delay the class initialization of the test classes until they are
- passed to JUnit. This way we can avoid that failing static initializers
- from non-test classes are reported as error when the 'skipNonTests' option
- is 'true'.
- Bugzilla Report 60062
- * The junit task when used with includeantruntime="no" was incorrectly
- printing a warning about multiple versions of ant detected in path
- * <cab> died with a NullPointerException since Ant 1.10.2.
- Bugzilla Report 62335
- * The <depend> task would fail with
- "java.lang.ClassFormatError: Invalid Constant Pool entry Type 19" while
- parsing a module-info.class. The task is compatible with
- Java bytecode version 53 now.
- Bug reported by Simon IJskes https://issues.apache.org/jira/browse/NETBEANS-781
- * Default and SecureInputHandler will now raise an error when then
- end of the input stream (usually System.in or System.console) are
- reached before a valid input has been read.
- * junitreport does not list testsuites that fail to start any tests
- because of an exception inside the all-tests and alltests-errors frames.
- Bugzilla Report 62443
- Other changes:
- --------------
- * AntAssert is deprecated, assertThat from JUnit 4.4+, Hamcrest matchers and/or
- ExpectedException rule provide equivalent functionality
- * PumpStreamHandler now explicitly verifies the streams for output
- and error are not null and will throw an exception if they
- are. This way creating a PumpStreamHandler will fail early as
- opposed to some obscure errors later when closing streams or
- finishing threads might fail.
- Bugzilla Report 62148
- * <property> has a new attribute runtime which can be used to set
- properties with values taken as snapshots from the
- availableProcessors, freeMemory, maxMemory and totalMemory methods
- of the Java Runtime class.
- * linecontains filter now has a new "matchAny" attribute which when
- set to "true" allows any (instead of all) of the user-specified
- strings to be present in the line.
- Bugzilla Report 62313
- * <resourcelist> has a new basedir attribute that can be used to
- resolve relative names and provides a root for the FileResources
- generated.
- Bugzilla Report 62379
- * The <includesfile> and <excludesfile> nested elements of
- <patternset> and <fileset> now support an encoding attribute that
- can be used to specify the file's encoding.
- Bugzilla Report 62379
- * New file selectors, posixGroup and posixPermissions, are available.
- The new selectors and related ownedBy selector have "followSymlinks"
- attribute that defaults to "true" for consistency.
- Bugzilla Report 22370
- * The junitlauncher task now has a "printSummary" attribute which when
- set to "true" will print the test execution summary to System.out.
- Changes from Ant 1.10.2 TO Ant 1.10.3
- =====================================
- Changes that could break older environments:
- -------------------------------------------
- * Previous versions of Ant's copy task would throw a BuildException
- if the "name" of the resource to copy was null. Starting
- this version, the copy task instead silently skips such resources
- and no longer throws an exception.
- ant-dev list https://www.mail-archive.com/dev@ant.apache.org/msg46634.html
- * Reverted the signature change of various clone method
- implementation in Ant's data-types introduced with 1.10.2 as they
- broke subclasses of said data-types which tried to override clone.
- Fixed bugs:
- -----------
- * Fixed NullPointerException in ChainedMapper
- Bugzilla Report 62086
- * Fixed NullPointerException when a mappedresource is used in pathconvert
- Bugzilla Report 62076
- * Fixed an issue where a string, when used as a resource collection, within
- tokens, would be replaced by property values
- Bugzilla Report 62147
- * Added a workaround for a bug in the jarsigner tool to <verifyjar>
- which requires the -storepass command line argument when verifying
- signatures using -strict together with a PKCS12 keystore. Unlike
- when signing the jar it will not prompt for the keystore's password
- and read it from standard input.
- This means Ant will now pass the keystore's password on the command
- line when using <verifyjar>, which poses a security risk you should
- be aware of.
- Bugzilla Report 62194
- Other changes:
- --------------
- * Allow Saxon to be used for junitreport XSL transformation
- Github Pull Request #57
- * when running on Java 11+ rmic will fail early if iiop or idl are
- requested. Java11 removes support for CORBA and the switches have
- been removed from the rmic tool.
- * A new junitlauncher task which support JUnit 5 test framework.
- Bugzilla Report 61796
- Changes from Ant 1.10.1 TO Ant 1.10.2
- =====================================
- Changes that could break older environments:
- -------------------------------------------
- * updated the dependency of BCEL to 6.2.
- Bugzilla Report 61196
- * delete task previously would silently accept wildcard (*)
- value for the "file" attribute. That's no longer the case
- and an exception could get thrown by the underlying filesystem
- for such use. Usage like:
- <delete file="/foo/bar/*.something"/>
- should instead be changed to use resource collections like:
- <delete>
- <fileset dir="/foo/bar/" includes="*.something"/>
- </delete>
- * Commons Net 3.6 is binary-code, but not source compatible;
- see change list of Commons Net 3.0 for details
- * The Log4jListener is marked as deprecated as the required log4j library
- (in version 1.x) is not maintained any more.
- * Image task is marked as deprecated as the required JAI library is not
- maintained any more and internal APIs that JAI depended on are no longer
- available in Java 9.
- Fixed bugs:
- -----------
- * <genkey>'s <dname> child now skips <param>s that lack a key or
- value.
- Bugzilla Report 60767
- * bootstrapping Ant on Windows failed
- Bugzilla Report 61027
- * Fixed the issue where the SCP based tasks would try to change
- the permissions on the parent directory of a transferred file,
- instead of changing it on the transferred file itself.
- Bugzilla Reports 59648 and 43271
- * Fixed the issue where the source file being copied could end
- up being corrupted if the target of the copy happened to be
- the same source file (symlinked back to itself).
- Bugzilla Report 60644
- * Fixed the issue where symlink creation with "overwrite=false",
- on existing symlink whose target was a directory, would end
- up creating a new symlink under the target directory.
- Bugzilla Report 58683
- * Improvement to the Zip task for reduced memory usage in certain
- cases. Thanks to Glen Lewis for reporting the issue and
- suggesting the fix.
- Bugzilla Report 19516
- * Fixed an issue where the content redirected from output/error
- streams of a process, could end up being truncated.
- Bugzilla Report 58833, 58451
- * <fileset>/<zipfileset>/<tarfileset> will now throw an exception
- with a more useful error message when setFile is called twice on
- the same instance.
- Bugzilla Report 62071
- Other changes:
- --------------
- * Added forceCsvQuoteChar option to <csv> task. When enabled the
- values always get quoted.
- Github Pull Request #32
- * Added <encoding> attributes to various script related tasks and a
- compiled attribute to scriptdef.
- Github Pull Request #30
- * Added support for jarsigner's -tsadigestalg to <signjar>.
- Bugzilla Report 60665
- * added "regexp" attribute to <linecontainsregexp>
- Bugzilla Report 60968
- * reduced GC pressure by replacing all usage of FileInputStream and
- FileOutputStream.
- * Task can now also use attribute setters that expect a
- java.nio.file.Path argument.
- Bugzilla Report 61042
- * added a new magic property ant.tstamp.now that can be used to
- override the current time/date used by <tstamp>.
- Bugzilla Report 61079
- * added Orion support to ejbjar
- Github Pull Request #33
- * SCP task, when configured to use SFTP protocol, now preserves last
- modified timestamp on files that it uploads, if the
- preserveLastModified attribute is set to true for that task
- Bugzilla Report 58589
- * zip and the related tasks can now set the modification time of all
- entries to a fixed timestamp.
- Github Pull Request #36
- * Jsch library dependency has now been upgraded to 0.1.54. Jsch is
- the library behind the sshexec and scp Ant tasks.
- Bugzilla Report 61718
- * Added a new <javaversion> condition.
- * added "javac10+" as new supported value for javac's compiler attribute.
- * javah has been removed from Java 10. The task will now throw an
- exception if you try to use it while running Java 10 or newer.
- * Updated Maven Ant Tasks, Jakarta Regexp and JUnit 4 to the latest
- stable version (2.1.3, 1.4, and 4.12 respectively); updated
- JRuby to the latest Java 5 compatible version (1.6.8); added
- resolve target for AntUnit to facilitate updates.
- Github Pull Request #50
- * Updated Java Mail API, Jython, Rhino and Commons Net to the latest
- stable version (1.6.0, 2.7.0, 1.7.7.2 and 3.6, respectively).
- Github Pull Request #53
- Changes from Ant 1.10.0 TO Ant 1.10.1
- =====================================
- Fixed bugs:
- -----------
- * Ant 1.10.0 made Path#systemClasspath final which broke the Eclipse
- integration.
- Bugzilla Report 60582
- * the wrapper script still didn't work on Solaris 10, but worked on
- Solaris 11.
- The "fixed" script should work in most cases but will not preserve
- newlines present in command line arguments.
- Bugzilla Report 60562
- Other changes:
- --------------
- * new tasks <xz> and <unxz> and resource <xzresource> for XZ
- compression. Also the compression attribute of <tar>/<untar> now
- accepts "xz" as valid value.
- The tasks and type are contained in the new ant-xz.jar and require
- the library XZ for Java to be on the CLASSPATH.
- Bugzilla Report 60350
- Changes from Ant 1.9.7 TO Ant 1.10.0
- ====================================
- Changes that could break older environments:
- -------------------------------------------
- * Ant 1.10.x requires Java8 or newer at compile or build time.
- The 1.9.x series wil stay compatible with Java5.
- * The <apt> task has been removed since apt itself has been removed
- with Java8.
- * <fileset>/<zipfileset>/<tarfileset> exhibited undefined
- behavior when both the dir and file attribute have been used on the
- same instance. This will now cause the build to fail.
- Bugzilla Report 59402
- * <native2ascii> will default to the builtin implementation on Java8
- as well (sun isn't available for Java9+ anyway).
- * The ant.java.version property will now hold the value "9" rather
- than "1.9" if running on Java 9.
- * <rmic> will no longer allow the -Xnew option (or xmic compiler) to
- be used when running on Java 9 since this option has been removed.
- Bugzilla Report 59906
- * <javah> will default to the "forking" implementation on Java8
- as well.
- Fixed bugs:
- -----------
- * setDynamicAttribute on MacroInstance now lower-cases the attribute
- name in order to allow users of the API to use the attributes names
- they have specified.
- Bugzilla Report 59339
- * <get>'s quiet attribute was broken, it didn't suppress any messages.
- Bugzilla Report 59379
- * <zip>'s check whether an archive is already up-to-date failed on
- NTFS filesystems and re-created archives more often than necessary.
- Bugzilla Report 59562
- * AntClassLoader didn't delegate to the parent loader for classes in
- the "jdk" package or one of its subpackages. This hierarchy has
- been introduced with Java 7.
- Bugzilla Report 59556
- * The ant wrapper script used on Unix-like operating systems only
- worked on OSes where sed is GNU sed.
- Bugzilla Report 59898
- * <touch>'s default pattern as well as the default patterns used by
- the <date> (resource) selectors depended on the JDK being used - or
- rather the locale provider being used and the default locale
- provider changed with Java 9.
- They are now fixed and the documentation has been updated to
- reflect the real patterns used rather than a non-formal description
- of the expected format.
- Bugzilla Report 59909
- * Clarified the documentation of <get>'s retries attribute.
- Bugzilla Report 59930
- * The ant wrapper script failed if backticks were passed on the
- command line.
- Bugzilla Report 60150, 59445
- * The report generated by <junitreport> could contain duplicate
- characters in stack traces.
- Bugzilla Report 58661
- Other changes:
- --------------
- * New file selectors <executable>, <symlink> and <ownedBy>.
- * New task <setpermissions> that provides the ability to set POSIX
- compatible permssions via NIO's PosixFilePermission
- * <junit> now initializes the cause of the AssertionFailedError when
- converting from AssertionError.
- Bugzilla Report 58982
- * <scp> now supports compression via the optional compressed attribute.
- Bugzilla Report 47552
- * <junit> now supports JDK9 modules
- Github Pull Request #18
- * a new implementation "builtin" has been added to <native2ascii> and
- is the default when running on JDK9+ since the tool itself has been
- removed from the JDK.
- Bugzilla Report 59855
- * added a new <native2asciifilter> filter that can perform non-ASCII
- to Unicode-escape conversions.
- * <rmic> defaults to the "forking" compiler on JDK 9+ as the
- implementation class of rmic is not exported by its containing
- module and thus not accessible to Ant without applying -XaddExports
- magic.
- Bugzilla Report 59860
- * a new implementation "forking" has been added to <javah> and is
- used as default when running on JDK9.
- * support for javac's -h switch has been added with the
- nativeheaderdir attribute.
- Bugzilla Report 59905
- * it is now possible to set features of the TraX factory used by <xslt>
- and <junitreport>.
- * it is now possible to use references to Ant types and classloaders
- built around Ant <path>s as values for TraX factory attributes.
- * AntClassLoader and its subclasses register themselves as parallel
- capable.
- * <junitreport> now enables the feature
- http://www.oracle.com/xml/jaxp/properties/enableExtensionFunctions
- when run on Java 9 so the redirect extension function can be used
- if when a SecurityManager is active.
- Bugzilla Report 60060
- * support for javac's --release switch introduced with Java9 has been
- added.
- Bugzilla Report 60172
- Changes from Ant 1.9.6 TO Ant 1.9.7
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * <exec> and <apply> used to ignore the dir attribute if it was the
- same as the current working directory. They now no longer do,
- which changes the behavior for vmlauncher="false" which would have
- used the project's basedir rather than the current working
- directory in that case.
- Bugzilla Report 58555
- Fixed bugs:
- -----------
- * ZipOutputStream could cause an ArrayIndexOutOfBoundsException when
- adding entries with comments. This never happens when using Ant as
- a build tool but may affect users using Ant's zip package as a
- library.
- * <gunzip> and <bunzip2> didn't work for non-filesystem resources.
- * <jar> ignored the zip64Mode attribute when creating manifest-only
- jars. This resulted in jar files that couldn't be read by Java5.
- Bugzilla Report 58428
- * <untar> will now detect GNU tar longname/link records even if they
- don't use the names used by GNU tar itself. star is known to
- create archives of that kind.
- https://issues.apache.org/jira/browse/COMPRESS-324
- * <script> could fail to find javax.script on JDK9 with Jigsaw.
- Bugzilla Report 58271
- * <import> sometimes failed to normalize file names which could lead
- to files getting imported twice which in turn could lead to targets
- getting executed twice.
- Bugzilla Report 58886
- * TarInputStream now properly extraxt directory entries with a
- non-zero size.
- * <union> would drop file resources pointing to the same file but
- using different names.
- Bugzilla Report 57965
- * <replace>'s result was undefined when using the replacefilterfile
- attribute and some keys inside the properties files have been
- substrings of other keys. Keys are now sorted by descending size.
- Bugzilla Report 58997
- * Ant fails to run when arguments contain double-quote character.
- Bugzilla Report 58898
- * Ant fails to run if ANT_HOME contains a double-quote character.
- Bugzilla Report 58874
- * Definer's way to parse URLs from classloader breaks with
- recent Java 9 builds (b108).
- Bugzilla Report 59130
- * <ant> and <antcall> now preserve the ext status set by an <exit>
- task.
- Bugzilla Report 59228
- Other changes:
- --------------
- * <scp> now supports (filesystem-only) resource collections in
- addition to filesets.
- Bugzilla Report 50769
- * The <http> condition has a new optional attribute followRedirects.
- Bugzilla Report 58840
- * <java> now supports Java9 modules.
- https://github.com/apache/ant/pull/15
- * <javac> now supports Java9 modules.
- https://github.com/apache/ant/pull/16
- * <sshexec> and <scp> have two new attributes serverAliveInterval and
- serverAliveCountMax that can be used to keep a intermediaries from
- closing idle connections.
- Bugzilla Report 59162
- Changes from Ant 1.9.5 TO Ant 1.9.6
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- Fixed bugs:
- -----------
- * ArrayIndexOutOfBoundsException when ZIP extra fields are read and
- the entry contains an UnparseableExtraField.
- https://issues.apache.org/jira/browse/COMPRESS-317
- Other changes:
- --------------
- * Hidden <javaconstant> resource is published now. It reads the
- value of a specified java constant.
- Changes from Ant 1.9.4 TO Ant 1.9.5
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * The ReplaceTokens filter can now use token-separators longer than
- one character. This means it can be used to replace mustache-style
- {{patterns}} and similar templates. This is going to break code
- that invokes the setters on ReplaceTokens via the Java API as their
- parameters have been changed from char to String. It may also
- break build files that specified multi character tokens and relied
- on Ant silently ignoring all but the first character.
- Bugzilla Report 56584
- * The changes that added <get>'s support for gzip encoding
- automatically uncompressed content that would not have been touched
- before - like when downloading .tar.gz files. A new flag has been
- added to control the behavior and its default will make <get> work
- as it did in 1.9.3. I.e. if you want it to work like 1.9.4
- you have to explicitly set tryGzipEncoding to true.
- Bugzilla Report 57048
- Fixed bugs:
- -----------
- * TarArchiveInputStream failed to read archives with empty gid/uid
- fields.
- Bugzilla Report 56641
- * TarArchiveInputStream could throw IOException when reading PAX
- headers from a "slow" InputStream.
- * XMLJunitResultFormatter could throw NullPointerException if Java
- cannot determine the local hostname.
- Bugzilla Report 56593
- * URLResource#getLastModified tried to access the connection to the
- URL without making sure it was established, potentially leading to
- a NullPointerException when using FTP.
- Bugzilla Report 56873
- * Long-Name and -link or PAX-header entries in TAR archives
- always had the current time as last modfication time, creating
- archives that are different at the byte level each time an
- archive was built.
- * runant.py should now work as well when the path of the Java executable
- contains spaces.
- github pull request #1
- * <junitreport> now supports nested <classpath> and <factory> elements.
- Bugzilla Report 47002
- * complete-ant-cmd.pl now also knows about the -file option.
- Bugzilla Report 57371
- * the br-replace template inside the XSLT stylesheets used by
- <junitreport> could cause stack overflows or out-of-memory errors
- when applied to big outputs.
- Bugzilla Report 57341
- * removed spurious warning about unclosed ZipFiles when reading the
- archive failed.
- Port of https://issues.apache.org/jira/browse/COMPRESS-297
- * FileUtils.rename which is used by several tasks can throw a
- NullPointerException if the "normal" renameTo operation fails and
- an exception occurs while rename falls back to copying and deleting
- the file.
- Bugzilla Report 57533
- * complete-ant-cmd.pl would incorrectly suggest words from the build
- file description.
- Bugzilla Report 51931
- * complete-ant-cmd.pl now also completes tasks without a description.
- Bugzilla Report 57542
- * LocalPropertyStack could run into ConcurrentModificationException
- when tasks spawned new child threads that accessed the properties.
- Bugzilla Report 55074
- * TarEntry's constructor with a File and a String arg didn't
- normalize the name.
- * Between 1.8.4 and 1.9.0 TarInputStream started to parse file
- names using the platform's default encoding rather than as ASCII.
- This has been a breaking change that has never been marked as such
- (in fact it went unnoticed). In order to allow <untar> and
- <tarfileset> to work on platforms who's encoding doesn't match the
- encoding of file names inside the archive, both now support
- encoding attributes.
- The attribute has also been added to <tar> for symmetry.
- Bugzilla Report 57822
- Other changes:
- --------------
- * it is now possible to provide proxy configuration to signjar
- when using the timestamped authority.
- Bugzilla Report 56678
- * complete-ant-cmd.pl now also analyzes the ANT_ARGS environment
- variable.
- Bugzilla Report 57371
- * ported some of the write-optimization of Commons Compress 1.10 to
- the ZIP package
- * adapted unit tests to Java9 and added "javac1.9" as valid option
- for javac's compiler attribute.
- * performance improvements for <intersect>
- Bugzilla Report 57588
- * MailLogger can now add CC and BCC addresses.
- Bugzilla Report 57789.
- * <scp>'s buffer size has been increased from 1k to 100k to match
- <ftp> and <get>.
- github pull requests #8 and #9
- * The tar package can now deal with group and user ids bigger than
- 0x80000000.
- https://issues.apache.org/jira/browse/COMPRESS-314
- https://issues.apache.org/jira/browse/COMPRESS-315
- * <scp> has new attributes fileMode and dirMode that control the
- permissions on the remote side when sending data via SSH.
- Bugzilla Report 43271.
- * New <allbutlast> and <allbutfirst> resource collections can be used
- to select all but a given subset of a resource collection.
- Bugzilla Report 57834.
- Changes from Ant 1.9.3 TO Ant 1.9.4
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * the prefixValues attribute of <property> didn't work as expected
- when set to false (the default).
- It is quite likely existing build files relied on the wrong
- behavior and expect Ant to resolve the value side against the
- properties defined in the property file itself - these build files
- must now explicitly set the prefixValues attribute to true.
- Bugzilla Report 54769
- * when matching an entry of a zip/tarfileset against a pattern a
- leading slash will be stripped from the entry name. Most archives
- don't contain paths with leading slashes anyway.
- This may cause include/exclude patterns that start with a / to stop
- matching anything. Such patterns only used to work by accident and
- only on platforms with multiple file system roots.
- Bugzilla Report 53949
- * DirectoryScanner and thus fileset/dirset will now silently drop all
- filesystem objects that are neither files nor directories according
- to java.io.File. This prevents Ant from reading named pipes which
- might lead to blocking or other undefined behavior.
- Bugzilla Report 56149
- * BuildFileTest and BaseSelectorTest have both been deprecated in
- favour of BuildFileRule and BaseSelectorRule respectively, and the
- tests that previously extended these base tests have been converted to
- JUnit 4 tests using the new "rule"s. Any external test that sub-classed
- a test in the Ant workspace, rather than BuildFileTest, will need
- changed to either use JUnit4's annotations, or be modified to
- extend BuildFileTest directly. This will not affect any tests that are
- being executed by Ant's junit or batchtest tasks that are not specifically
- testing Ant's code.
- Fixed bugs:
- -----------
- * <import>/<include> failed when the importing file was loaded from an
- URI or a jar and it imported a file from the local file system via
- an absolute path.
- Bugzilla Report 50953
- * <import> could import the same resource twice when imported via
- different resource types.
- Bugzilla Report 55097
- * several calls to File#mkdirs could fall victim to a race condition
- where another thread already created the same directory.
- Bugzilla Report 55290
- * <manifestclasspath> created '/' rather than './' for the parent
- directory of the given jarfile.
- Bugzilla Report 55049
- * <concat>'s fixlastline="true" didn't work when using certain filter
- readers.
- Bugzilla Report 54672
- * several places where resources are read from jars will now
- explicitly disable caching to avoid problems with reloading jars.
- Bugzilla Report 54473
- * AntClassloader will now ignore files that are part of the classpath
- but not zip files when scanning for resources. It used to throw an
- exception.
- Bugzilla Report 53964
- * <javadoc> caused a NullPointerException when no destdir was set.
- Bugzilla Report 55949
- * <jar filesetmanifest="mergewithoutmain"> would still include the
- Main section of the fileset manifests if there was no nested
- manifest or manifest attribute.
- Bugzilla Report 54171
- * reading of compiler args has become more defensive
- Bugzilla Report 53754
- * <copy> without force="true" would not only fail to overwrite a
- read-only file as expected but also remove the existing file.
- Bugzilla Report 53095
- * <delete removeNotFollowedSymlinks="true"> would remove symbolic
- links to not-included files. It will still delete symlinks to
- directories that would have been followed even if they are not
- explicitly included. exclude-Patterns can still be used to
- preserve symbolic links.
- Bugzilla Report 53959
- * Sometimes copy-operations using NIO FileChannels fail. Ant will
- now try to use a Stream based copy operation as fallback when the
- Channel based copy fails.
- Bugzilla Reports 53102 and 54397
- * Javadoc.postProcessGeneratedJavadocs() fails for Classes that
- extend Javadoc
- Bugzilla Report 56047
- * TarInputStream will now read archives created by tar
- implementations that encode big numbers by not adding a trailing
- NUL.
- * the isExists() method of URLResource returned false positives for
- HTTP and FTP URLs.
- Other changes:
- --------------
- * initial support for Java 1.9
- * <sshexec> can optionally pass System.in to the remote process
- Bugzilla Report 55393
- * <sshexec> now supports capturing error output of the executed
- process and setting a property from the return code.
- Bugzilla Report 48478
- * <javadoc> now has an option to fail if javadoc issues warnings.
- Bugzilla Report 55015
- * <sql> has a new outputencoding attribute.
- Bugzilla Report 39541
- * changes to JUnitTestRunner and PlainJUnitResultFormatter to make
- OutOfMemoryErrors less likely.
- Bugzilla Report 45536
- * changes to DOMElementWriter to make OutOfMemoryErrors less likely.
- Bugzilla Report 54147
- * <redirector> has a new attribute binaryOutput that prevents Ant
- from splitting the output into lines. This prevents binary output
- from being corrupted but may lead to error and normal output being
- mixed up.
- Bugzilla Report 55667
- Bugzilla Report 56156
- * the nested <message> elements of <mail> now have an optional
- inputEncoding attribute that can be used to specify the encoding of
- files read that don't use the platform's default encoding.
- Bugzilla Report 56258
- * The <get> task now explicitly accepts and supports the gzip content encoding.
- Bugzilla Report 49453
- * A new resourcecollection type <multirootfileset> acts like a union
- of <fileset>s and <dirset>s that share the same configuration but
- have different base directories.
- Bugzilla Report 48621
- * <get> has a quiet attribute that makes the task log errors only
- when enabled.
- GitHub Pull Request #1
- * <junit> has now a threads attribute allowing to run the tests in several threads.
- Bugzilla Report 55925
- * addition of a new ProcessUtil class providing the process id of the current process
- * changes to allow to run the JUnit testcases of Ant in parallel,
- by making them use unique temporary directories
- Changes from Ant 1.9.2 TO Ant 1.9.3
- ===================================
- Fixed bugs:
- -----------
- * <parallel> swallowed the status code of nested <fail> tasks.
- Bugzilla Report 55539.
- * a race condition could make <fixcrlf> tasks of parallel builds to
- interfere with each other.
- Bugzilla Report 54393.
- * <mail>'s mailport still didn't work properly when using smtps.
- Bugzilla Report 49267.
- * using attributes belonging to the if and unless namespaces
- made macrodef fail.
- Bugzilla Report 55885.
- * Ant 1.8 exec task changes have slowed exec to a crawl
- Bugzilla Report 54128.
- * Apt is not available under JDK 1.8
- Bugzilla Report 55922.
- Other changes:
- --------------
- * Documentation fix for if/unless attributes. PR 55359.
- * tar entries with long link names are now handled the same way as
- entries with long names.
- * Addition of 'skipNonTests' attribute to <junit> and <batchtest>
- tasks to allow the tasks to skip classes that don't contain tests.
- * <filterset> now supports a nested <propertyset> to specify filters.
- Bugzilla Report 55794.
- * <xslt>'s params can now be typed.
- Bugzilla Report 21525.
- * build of Mac OS X pkg installer
- Bugzilla Report 55899.
- Changes from Ant 1.9.1 TO Ant 1.9.2
- ===================================
- Fixed bugs:
- -----------
- * Parsing of zip64 extra fields has become more lenient in order to
- be able to read archives created by DotNetZip and maybe other
- archivers as well.
- * TarInputStream should now properly read GNU longlink entries' names.
- Bugzilla Report 55040.
- * <java> and <exec> used to be too restrictive when evaluating
- whether a given set of options is compatible with spawning the new
- process.
- Bugzilla Report 55112.
- Other changes:
- --------------
- * <javadoc> will now post-process the generated in order to mitigate
- the frame injection attack possible in javadocs generated by Oracle
- JDKs prior to Java7 Update 25. The vulnerability is known as
- CVE-2013-1571.
- There is an option to turn off the post-processing but it is only
- recommended you do so if all your builds use a JDK that's not
- vulnerable.
- Bugzilla Report 55132.
- Changes from Ant 1.9.0 TO Ant 1.9.1
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * Users who have their own ProjectHelper implementation will need to change it because the import and include tasks
- will now default the targetPrefix to ProjectHelper.USE_PROJECT_NAME_AS_TARGET_PREFIX.
- Users using the default ProjectHelper2 with ant need not worry about this change done to fix Bugzilla Report 54940.
- Fixed bugs:
- -----------
- * Corrected XSLTC error in <junitreport>.
- Bugzilla Report 54641.
- * Provide more control over Zip64 extensions created by <zip> and
- related tasks. In particular no Zip64 extensions will be used at
- all by the <jar> task family by default - this is required for jars
- to be readably by Java5.
- Bugzilla Report 54762.
- * Fixed loading of external dependencies in JUnit task.
- Bugzilla Report 54835.
- * Target rewriting for nested "include" only works when "as" is specified.
- See also "Changes that could break older environments"
- Bugzilla Report 54940.
- Other changes:
- --------------
- * strict attribute added to <signjar>.
- Bugzilla Report 54889.
- * simplifying Execute.getEnvironmentVariables since we are only running on Java 1.5 or higher now
- * Added conditional attributes.
- Bugzilla Report 43362
- * Recommending to upgrade jsch to 0.1.50, particularly if you are using Java 1.7.
- jsch is the library behind the sshexec and scp Ant tasks.
- Versions of jsch older than 0.1.50 fail randomly under Java 1.7 with an error message "verify: false"
- Changes from Ant 1.8.4 TO Ant 1.9.0
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * Ant now requires at least Java 1.5 to compile and to run
- * FixCRLF used to treat the EOL value ASIS to convert to the system property
- line.separator. Specified was that ASIS would leave the EOL characters alone,
- the task now really leaves the EOL characters alone. This also implies that
- EOL ASIS will not insert a newline even if fixlast is set to true.
- Bugzilla report 53036
- * The CommandLauncher hierarchy that used to be a set of inner
- classes of Execute has been extracted to the
- org.apache.tools.ant.taskdefs.launcher package.
- * Any FileResource whose represented File has a parent also has a basedir.
- * Removing the Perforce Ant tasks replaced by tasks supplied by Perforce Inc.
- * Setting the default encoding of StringResource to UTF-8 instead of null
- * Upgrade JUnit 4 to JUnit 4.11
- Fixed bugs:
- -----------
- * Made VectorSet faster.
- Bugzilla Report 53622.
- * Incorrect URLs in Ant child POMs.
- Bugzilla Report 53617.
- * Subclasses of JUnitTask did not correctly find junit.jar.
- Bugzilla Report 53571.
- * External XML catalog resolver failed to use project basedir when given an
- unmentioned relative path like the internal resolver does.
- Bugzilla Report 52754.
- * Fixed some potential stream leaks.
- Bugzilla Reports 52738, 52740, 52742, 52743.
- * Updated documentation to fix spelling errors / broken links.
- Bugzilla Reports 53215, 53291, 53202
- * Unable to override system properties. It was not possible not to override
- system properties from the command line (or from a property file).
- Bugzilla Report 51792
- * <javac> by default fails when run on JDK 8.
- Bugzilla Report 53347.
- * ExtensionPoint doesn't work with nested import/include
- Bugzilla Report 53405.
- * <packagemapper> failed to strip the non-matched parts with
- handledirsep="true".
- Bugzilla Report 53399.
- * <expandproperties> filter caused a NullPointerException when input
- was empty.
- Bugzilla Report 53626.
- * <get> now supports HTTP redirects using status code 307.
- Bugzilla Report 54374.
- * ssh tasks prompt for kerberos username/password under Java 7
- Bugzilla Report 53437.
- * Zip task on <mappedresources> that excludes certain files by way of the mapper resulted in a NullPointerException
- Bugzilla Report 54026
- * The ant launcher script should properly detect JAVA_HOME on
- MacOS X 10.7
- Bugzilla Report 52632
- * Depend task does not handle invokeDynamic constant pool entries - java.lang.ClassFormatError: Invalid Constant Pool entry Type 18
- Bugzilla Report 54090
- * Base64Converter not properly handling bytes with MSB set (not masking byte to int conversion)
- Bugzilla Report 54460
- * The size resource comparator would return wrong results if file
- sizes differed by more than 2 GB.
- Bugzilla Report 54623
- * Unable to encode properly into UTF-8 when the system property file.encoding is
- set to ANSI_X3.4-1968.
- Bugzilla Report 54606
- * JUnit4 tests marked @Ignore do not appear in XML output
- Bugzilla Report 43969
- Other changes:
- --------------
- * merged the ZIP package from Commons Compress, it can now read
- archives using Zip64 extensions (files and archives bigger that 4GB
- and with more that 64k entries).
- * a new task <commandlauncher> can be used to configure the
- CommandLauncher used by Ant when forking external programs or new
- Java VMs.
- Bugzilla Report 52706.
- * merged the TAR package from Commons Compress, it can now read
- archives using POSIX extension headers and STAR extensions.
- * merged the BZIP2 package from Commons Compress, it can now
- optionally read files that contain multiple streams properly.
- * <bunzip2> will now properly expand files created by pbzip2 and
- similar tools that create files with multiple bzip2 streams.
- * <tar> now supports a new "posix" option for longfile-mode which
- will make it create PAX extension headers for long file names. PAX
- extension headers are supported by all modern implementations of
- tar including GNU tar.
- This option should now be used in preference to "warn" or "gnu" as
- it is more portable. For backwards compatibility reasons "warn"
- will still create "gnu" extensions rather than "posix" extensions.
- * The ProjectHelper class now exposes a method to be used by third party
- implementations to properly resolve the binding between target extensions
- and extension points.
- Bugzilla Report 53549.
- * Make extension point bindable to imported prefixed targets
- Bugzilla Report 53550.
- * Add the possibility to register a custom command line argument processor.
- See org.apache.tools.ant.ArgumentProcessor and manual/argumentprocessor.html
- * add the possibility to suppress stdout in the sshexec task.
- Bugzilla Report 50270.
- * add an encoding attribute to the contains selector.
- This will be useful to use the contains selector if the encoding of the VM is different from the encoding
- of the files being selected.
- * support for GNU Classpath.
- Bugzilla report 54760.
- Changes from Ant 1.8.3 TO Ant 1.8.4
- ===================================
- Fixed bugs:
- -----------
- * Ported libbzip2's fallback sort algorithm to CBZip2OutputStream to
- speed up compression in certain edge cases. Merge from Commons
- Compress.
- Using specially crafted inputs this can be used as a denial of
- service attack.
- See http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-2098
- Changes from Ant 1.8.2 TO Ant 1.8.3
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * The Enumeration returned by AntClassLoader#getResources used to
- return null in nextElement after hasNextElement would return false.
- It has been changed to throw a NoSuchElementException instead so
- that it now adheres to the contract of java.util.Enumeration.
- Bugzilla Report 51579.
- Fixed bugs:
- -----------
- * Removed buggy duplicate JAR list in RPM mode.
- Bugzilla Report 52556.
- * Launcher fixed to pass the right class loader parent.
- Bugzilla Report 48633.
- * <junitreport> mishandled ${line.separator}.
- Bugzilla Report 51049.
- * <junitreport> did not work in embedded environments on JDK 7.
- Nor did <xslt> when using Xalan redirects.
- Bugzilla Report 51668, 52382.
- * Encoding of unicode escape sequences by the property file task
- Bugzilla Report 50515.
- * The code that implicitly sets the -source switch if only -target
- has been specified in <javac> was broken for Java 5 and 6.
- Bugzilla Report 50578.
- * MailLogger ignore the Maillogger.starttls.enable property.
- Bugzilla Report 50668.
- * Delete task example does not work
- Bugzilla Report 50816.
- * <splash>'s proxy handling has been delegated to <setproxy>
- internally so the two tasks are consistent. <splash>'s way of not
- setting a proxy caused problems with other Java libraries.
- Bugzilla Report 50888.
- * Include task breaks dependencies or extension-points for multiple
- files.
- Bugzilla Report 50866.
- * Read on System.in hangs for forked java task.
- Bugzilla Report 50960.
- * FileResource specified using basedir/name attributes was non-functional.
- * Resource collection implementation of mapped PropertySet returned
- unusable resources.
- * The hasmethod condition failed with a NullPointerException when
- ignoresystemclasses is true and Ant tried to load a "restricted
- class" - i.e. a class that the Java VM will only accept when loaded
- via the bootclassloader (a java.* class).
- It will now fail with a more useful error message.
- Bugzilla Report 51035.
- * Exec task may mix the stderr and stdout output while logging it
- Bugzilla Report 50507.
- * Missing space between "finished" and timestamp in task/target
- finish message from ProfileLogger.
- Bugzilla Report 51109.
- * Redirecting the output of a java, exec or apply task could print in the
- error output stream some "Pipe broken" errors.
- Bugzilla Report 48789.
- * ZipFile failed to clean up some resources which could lead to
- OutOfMemoryException while unzipping large archives.
- A similar problem in ZipArchiveOutputStream has been fixed as well.
- Bugzilla Report 42696.
- * quiet attribute added to the copy and move tasks, to be used together
- with failonerror=false, so warnings won't get logged
- Bugzilla Report 48789.
- * System.in was closed and not readable anymore by the DefaultInputHandler
- when Ant is used via its Java API.
- Bugzilla Report 51161
- * <sync> only supported a single non-fileset resource collection even
- though the manual said it could be multiple.
- * <sync> didn't work properly when working on resource collections.
- Bugzilla Report 51462.
- * <augment> cause a NullPointerException if it was used in a target
- that was invoked by multiple targets from the command line.
- Bugzilla Report 50894.
- * The ZipFile class could read past the start of the file if the
- given file is not a ZIP archive and it is smaller than the size of
- a ZIP "end of central directory record".
- * <javac> would create the empty package-info.class file in the wrong
- directory if no destdir was specified. Note it may still pick the
- wrong directory if you specify more than one source directory but
- no destDir. It is highly recommended that you always explicitly
- specify the destDir attribute.
- Bugzilla Report 51947.
- * packagemapper now honors the handleDirSep attribute.
- Bugzilla Report 51086.
- * the attributes of macrodef tasks had their values run through
- property expansion twice. Still true by default, but can be disabled.
- Bugzilla Report 42046.
- * jvc doesn't like it if source file names in argument files are
- quoted.
- Bugzilla Report 31667.
- * ZipFile didn't work properly for archives using unicode extra
- fields rather than UTF-8 filenames and the EFS-Flag.
- * Access to DirectoryScanner's default excludes wasn't synchronized.
- Bugzilla Report 52188.
- * When a Project instance was created by a custom tasks its
- createTask method didn't work.
- Bugzilla Report 50788.
- Other changes:
- --------------
- * -f/-file/-buildfile accepts a directory containing build.xml.
- * The <javacc>, <jjtree> and <jjdoc> now support a new maxmemory
- attribute.
- Bugzilla Report 50513.
- * the documented inputstring attribute of sshexec has been
- implemented and the actually existing attribute inputproperty
- documented.
- Bugzilla Report 50576.
- * The concat task now permits the name of its exposed resource
- by means of its 'resourcename' attribute.
- * The expandproperties filter now accepts a nested propertyset
- which, if specified, provides the properties for expansion.
- Bugzilla Report 51044.
- * <junit filtertrace="true"/> will no longer filter out the very
- first line of the stacktrace containing the original exception
- message even if it matches one of the filter expressions.
- * Upgraded to Apache AntUnit 1.2
- * Provide read access to Mkdir.dir. Bugzilla Report 51684.
- * <delete> and <move> have a new attribute performGCOnFailedDelete
- that may - when set to true - help resolve some problems with
- deleting empty directories on NFS shares.
- Bugzilla Report 45786.
- * <loadfile> and <loadresource> used to log at level INFO to signal a
- property hasn't been set when the resource was empty even if the
- quiet attribute was set to true. They will now use VERBOSE
- instead.
- Bugzilla Report 52107.
- * <javac> has a new attribute createMissingPackageInfoClass that can
- be set to false to prevent Ant from creating empty dummy classes
- used for up-to-date-ness checks.
- Bugzilla Report 52096.
- * URLResources#isExists has become less noisy.
- Bugzilla Report 51829.
- * The <retry> task has a new optional attribute retryDelay that can
- be used to make the task sleep between retry attempts.
- Bugzilla Report 52076.
- * <signjar> has new attributes that control the signature and digest
- algorithms.
- Bugzilla Report 52344.
- * Initial support for Java 8.
- * <sshexec> can optionally create a pseudo terminal (like ssh -t)
- Bugzilla Report 52554.
- Changes from Ant 1.8.1 TO Ant 1.8.2
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * Prior to Ant 1.8.0 the <copy> task and several other tasks would
- overwrite read-only destination files. Starting with 1.8.0 they
- would only do so under special circumstances. Ant 1.8.2 now
- consistently won't replace a read-only file by default. The same is
- true for a number of other tasks.
- The <copy>, <move> and <echo> tasks now have a new force attribute
- and <concat> has a new forceReadonly attribute that can be used to
- make the task overwrite read-only destinations.
- Bugzilla Report 49261.
- * Removed ant-nodeps.jar; it is now merged into ant.jar.
- * DOMElementWriter#encode used to employ special code before encoding
- ampersands so that { remained { rather than being turned
- into &#123;. This is no longer the case, ampersands will now
- be encoded unconditionally.
- Also DOMElementWriter#encodeData will treat CDATA sections containing a
- literal "]]>" sequence different now - it will split the CDATA
- section between the second "]" and ">" and create two sections.
- This affects <echoxml> task as well as the XML logger or JUnit
- formatter where ampersands will now always get encoded.
- In addition DOMElementWriter will now replace the characters \t, \r
- and \n in attribute values by entity references.
- Bugzilla Report 49404.
- * The list elements returned by ProjectHelper#getExtensionStack are
- now String arrays of length 3 rather than 2 in order to support the
- onMissingExtensionPoint attribute.
- Bugzilla Report 49473.
- * When using <property file="..." prefix="..."/> properties defined
- inside the same file will only get used in expansions if the ${}
- reference uses the same prefix. This is different from Ant 1.8.1
- but is the same behavior Ant 1.8.0 and earlier exhibited.
- A new attribute prefixValues can be used to re-enable the behavior
- of Ant 1.8.1.
- Bugzilla Report 49373.
- * The files and directories used by Git, Mercurial and Bazaar to
- store their information are now excluded by the defaultexcludes.
- Bugzilla Report 49624.
- * The <junit> task no longer generates TestListener events - which
- have been introduced in ant 1.7.0 - by default. The task has a new
- attribute enableTestListenerEvents and a new "magic" property
- ant.junit.enabletestlistenerevents has been added that can be used
- to reinstate the old behavior.
- Fixed bugs:
- -----------
- * hostinfo now prefers addresses with a hostname over addresses without
- a hostname, provided the addresses have the same scope.
- For local lookup, no IP address will be put in NAME / DOMAIN anymore.
- For remote lookup, if a host name was provided and only an IP address is
- found, the IP address will no longer overwrite the host name provided to the
- task.
- Bugzilla Report 49513
- * mmap-based file copy problems under JDK 1.4 on Linux.
- Bugzilla Report 49430.
- * The Sun JVM tries to mmap the entire file during a copy.
- For large files this is not feasible.
- We now explicitly request to copy at most 16 MiB per request.
- Bugzilla Report 49326.
- * DemuxInputStream.read() should return unsigned values
- Bugzilla Report 49279.
- * The MIME mailer ignored the port parameter when using SSL.
- Bugzilla Report 49267.
- * <xslt> ignored the classpath when using the default TraX processor.
- Bugzilla Report 49271.
- * <checksum>'s totalproperty only worked reliably if the same file
- name didn't occur inside more than one directory.
- Bugzilla Report 36748.
- * <ftp> could fail to download files from remote subdirectories under
- certain circumstances.
- Bugzilla Report 49296.
- * <junit> will now produce better diagnostics when it fails to delete
- a temporary file.
- Bugzilla Report 49419.
- * Ant would often scan directories even though there were known to
- only hold excluded files when evaluating filesets. This never
- resulted in wrong results but degraded performance of the scan
- itself.
- Bugzilla Report 49420.
- * <javac> failed for long command lines on OS/2.
- Bugzilla Report 49425.
- * <junitreport> did not handle encodings well for stdout/stderr.
- Bugzilla Report 49418.
- * <junit> could issue a warning about multiple versions of Ant on the
- CLASSPATH if two CLASSPATH entries differed in case on a
- case-insensitive file system.
- Bugzilla Report 49041.
- * The <restrict> resource collection was checking every resource even if
- we actually just want the first one, like in the example of use of
- resourcelist in the documentation (getting the first available resource
- from a mirror list).
- * A race condition could lead to build failures if multiple <mkdir>
- tasks were trying to create the same directory.
- Bugzilla Report 49572.
- * the toString() method of the Resources class - and thus any
- ${toString:} expansion of a reference to a <resources> element -
- didn't iterate over its nested elements if it hadn't done so prior
- to the toString invocation already.
- Bugzilla Report 49588.
- * <apply> in parallel mode didn't work together with a nested
- <redirector> if maxparallel was <= 0 (the default) or no source
- files matched.
- Bugzilla Report 49594.
- * <jar filesetmanifest="merge"> didn't work for manifests added via
- <zipfileset>s that used the prefix or fullpath attributes.
- Bugzilla Report 49605.
- * <tempfile createfile="true"> would cause an error unless the prefix
- attribute has been specified.
- Bugzilla Report 49755.
- * If forked, after finished <java> was still reading the input stream
- for a bunch of characters, then stealing them from a following <input>.
- Bugzilla Report 49119.
- * Ant could be leaking threads for each forked process (started by
- <exec>, <apply>, <java> or similar tasks) that didn't receive input
- from a resource or string explicitly.
- Bugzilla Report 49587.
- * Project#setDefault threw an exception when null was passed in as
- argument, even though the Javadoc says null is a valid value.
- Bugzilla Report 49803.
- * runant.py would swallow the first argument if CLASSPATH wasn't set.
- Bugzilla Report 49963.
- * <taskdef> failed to load resources from jar files contained in a
- directory that has a "!" in its name.
- Bugzilla Report 50007.
- * ant.bat exit strategy improvements and issues
- make the exit codes work in environments where 4NT or MKS are installed
- Bugzilla Report 41039.
- * <signjar> would fail if used via its Java API and the File passed
- into the setJar method was not "normalized" (i.e. contained ".."
- segments).
- Bugzilla Report 50081.
- * <delete> ignored <fileset>'s errorOnMissingDir attribute
- Bugzilla Report 50124.
- * <symlink> failed to close files when reading a list of symbolic
- links from a properties file.
- Bugzilla Report 50136.
- * <parallel> could allow tasks to start executing even if a task
- scheduled to run before them timed out.
- Bugzilla Report 49527.
- * If a <junit> batch with multiple tests times out Ant logs a message
- about a test named Batch-With-Multiple-Tests since 1.8.0 but the
- logic that determined the Java package of this pseudo-test has been
- wrong.
- Bugzilla Report 45227.
- * <propertyfile> didn't preserve the original linefeed style when
- updating a file.
- Bugzilla Report 50049.
- * <zip>'s whenEmpty behavior never consulted the non-fileset
- resources so the task could fail even though resources have been
- provided using non-fileset resource collections.
- Bugzilla Issue 50115.
- * ftp chmod could throw a NPE.
- Bugzilla report 50217.
- * The project help (-p option in the command line) will now print
- the dependencies of the targets in debug mode (-d on the command
- line)
- Other changes:
- --------------
- * <concat>'s force attribute has been deprecated in favor of a new
- overwrite attribute that is consistent with <copy>'s attribute
- names.
- * You can now specify a list of methods to run in a JUnit test case.
- Bugzilla Report 34748.
- * properties in files read because of the -propertyfile command line
- option will now get resolved against other properties that are
- defined before the project starts executing (those from the same or
- earlier -propertfiles or defined via the -D option).
- Bugzilla Report 18732.
- * <pathelement>s can now contain wildcards in order to use wildcard
- CLASSPATH entries introduced with Java6.
- The wildcards are not expanded or even evaluated by Ant and will be
- used literally. The resulting path may be unusable as a CLASSPATH
- for Java versions prior to Java6 and likely doesn't mean anything
- when used in any other way than a CLASSPATH for a forked Java VM.
- Bugzilla Report 46842.
- * A new attribute allows targets to deal with nonexistent extension
- points, i.e. they can extend an extension-point if it has been
- defined or silently work as plain targets if it hasn't. This is
- useful for targets that get included/imported in different
- scenarios where a given extension-point may or may not exist.
- Bugzilla Report 49473.
- * Ant now logs a warning message if it fails to change the file
- modification time in for example when using <touch> or preserving
- timestamps in various tasks.
- Bugzilla Report 49485.
- * ProjectHelpers can now be installed dynamically via the <projecthelper>
- Ant task.
- * <import> is now able to switch to the proper ProjectHelper to parse
- the imported resource. This means that several kinds of different build
- files can import each other.
- * <copy tofile=""> now also works for non-filesystem resources.
- Bugzilla Report 49756.
- * The <linecontainsregexp> filter now supports a casesensitive
- attribute.
- * The <containsregexp> selector now supports casesensitive, multiline
- and singleline attributes.
- Bugzilla Report 49764.
- * A new <cutdirsmapper> can be used like wget's --cut-dirs option to
- strip leading directories from file names.
- * <javah> now supports the GNU project's gcjh compiler.
- Bugzilla Report 50149.
- * <checksum> supports additional views of a file's path as elements
- for a custom pattern.
- Bugzilla Report 50114.
- * JUnit XMLResultAggregator logs the stack trace of caught IO exceptions
- in verbose runs.
- Bugzilla Report 48836.
- * StringUtils.parseHumanSizes() should turn parse failures into
- BuildExceptions.
- Bugzilla Report 48835.
- * New task <bindtargets> to make a list of targets bound to some
- specified extension point.
- * Initial support for OpenJDK7 has been added.
- * Ant now uses java.net.CookieStore rather than
- java.util.ServiceLocator to detect whether the environment is a
- Java 1.6 system. This means releases of gcj/gij at the time of
- this release of Ant are detected as Java 1.5 and not 1.6.
- Bugzilla Report 50256.
- * It is now possible to write a compiler adapter for <javac> that
- compiles sources with extensions other than .java (but that still
- compile to .class files).
- Bugzilla Report 48829.
- * The performance of VectorSet#add(Object) has been improved which
- should also benefit any operation that scans directories in Ant.
- Bugzilla Report 50200.
- Changes from Ant 1.8.0 TO Ant 1.8.1
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * ant-trax.jar is no longer produced since TrAX is included in JDK 1.4+.
- * Ant no longer ships with Apache Xerces-J or the XML APIs but relies
- on the Java runtime to provide a parser and matching API versions.
- * The stylebook ant task and the ant-stylebook.jar are removed.
- Fixed bugs:
- -----------
- * Tasks that iterate over task or type definitions, references or
- targets now iterate over copies instead of the live maps to avoid
- ConcurrentModificationExceptions if another thread changes the
- maps.
- Bugzilla Report 48310.
- * The filesmatch condition threw a NullPointerException when
- comparing text files and the second file contained fewer lines than
- the first one.
- Bugzilla Report 48715.
- * Regression: The <ear> task would allow multiple
- META-INF/application.xml files to be added.
- Bugzilla Report 6836.
- * VectorSet#remove(Object) would fail if the size of the vector
- equaled its capacity.
- * Regression : ant -diagnostics was returning with exit code 1
- Bugzilla Report 48782
- * Fix for exec task sometimes inserts extraneous newlines
- Bugzilla Report 48746
- * SymlinkTest#testSymbolicLinkUtilsMethods failing on MacOS
- Bugzilla Report 48785.
- * If <concat>'s first resourcecollection child is a <resources>,
- any subsequently added child resourcecollection joins the first.
- Bugzilla Report 48816.
- * <get> with an invalid URL could trigger an NPE in some JVMs.
- Bugzilla Report 48833
- * Broken Pipe issue under Ubuntu Linux
- Bugzilla Report 48789
- * Properties wrongly read from file or not update during read
- Bugzilla Report 48768
- * AntClassLoader in Ant 1.8.0 has been considerably slower than in
- 1.7.1
- Bugzilla Report 48853
- * ANT_CMD_LINE_ARGS are rippling through lower level Ant usage
- Bugzilla Report 48876
- * email : IO error sending mail with plain mimetype
- Bugzilla Report 48932
- * the complete-ant-cmd.pl script failed to create a proper cache of
- target if "ant -p" failed.
- Bugzilla Report 48980
- * <rmic>'s sourcebase attribute was broken.
- Bugzilla Report 48970
- * <copy>'s failonerror didn't work as expected when copying a single
- element resource collection to a file.
- Bugzilla Report 49070
- * <get> no longer followed redirects if the redirect URL was relative
- and not an absolute URL.
- Bugzilla Report 48972
- * fixed a performance degradation in the code that expands property
- references.
- Bugzilla Reports 48961 and 49079
- * <jar filesetmanifest="merge"> was broken on Windows.
- Bugzilla Report 49090
- * <symlink> delete failed if the link attribute was a relative path
- to a link inside the current directory without a leading ".".
- Bugzilla Report 49137
- * <telnet> and <rexec> failed to find the expected strings when
- waiting for responses and thus always failed.
- Bugzilla Report 49173
- Other changes:
- --------------
- * Project provides new get methods that return copies instead of the
- live maps of task and type definitions, references and targets.
- * Ant is now more lenient with ZIP extra fields and will be able to
- read archives that it failed to read in earlier versions.
- Bugzilla Report 48781.
- * The <zip> family of tasks has been sped up for bigger archives.
- Bugzilla Report 48755.
- * Add removeKeepExtension option to NetRexxC task.
- Bugzilla Report 48788.
- * Add prefix attribute to loadproperties task.
- * Add resource attribute to length task.
- * PropertyResource will effectively proxy another Resource if ${name}
- evaluates to a Resource object.
- * Added forcestring attribute to equals condition to force evaluation
- of Object args as strings; previously only API-level usage of the
- equals condition allowed Object args, but Ant 1.8.x+ property
- evaluation may yield values of any type.
- * BuildFileTest.assertPropertyUnset() fails with a slightly more
- meaningful error message
- Bugzilla Report 48834
- * <junit> will now throw an exception if a test name is empty. This
- used to manifest itself in unrelated errors like
- Bugzilla Report 43586.
- * A change that made <exec> more reliable on Windows (Bugzilla Report
- 5003) strongly impacts the performance for commands that execute
- quickly, like attrib. Basically no single execution of a command
- could take less than a second on Windows.
- A few timeouts have been tweaked to allow these commands to finish
- more quickly but still they will take longer than they did with Ant
- 1.7.1.
- Bugzilla Report 48734.
- * Added SimpleBigProjectLogger, intermediate between NoBannerLogger and
- BigProjectLogger.
- * <mappedresources> supports new attributes enablemultiplemappings
- and cache.
- * Added the augment task to manipulate existing references via Ant's basic
- introspection mechanisms.
- Changes from Ant 1.8.0RC1 TO Ant 1.8.0
- ======================================
- Changes that could break older environments:
- -------------------------------------------
- * the appendtolines filter has been renamed to suffixlines.
- Fixed bugs:
- -----------
- * stack traces were not reported at all by <junit/>
- when filtertrace="on", which is the default.
- * ant.bat can now also process the -noclasspath switch when it is
- the first switch on a command line.
- Bugzilla Report 48186.
- * <fixcrlf> now tries to delete the created temporary files earlier.
- Bugzilla Report 48506.
- * the implementation of <zip> had been changed in a way that broke
- the jarjar links task and protentially other third-party subclasses
- as well.
- Bugzilla Report 48541.
- * <scp> task didn't report build file location when a remote operation failed
- Bugzilla Report 48578.
- * <propertyfile> would add the same comment and a date line each time
- it updated an existing property file.
- Bugzilla Report 48558.
- * <sound> didn't work properly in recent Java VMs.
- Bugzilla Report 48637.
- Other changes:
- --------------
- Changes from Ant 1.7.1 TO Ant 1.8.0RC1
- ======================================
- Changes that could break older environments:
- -------------------------------------------
- * if and unless attributes (on <target> as well as various tasks and other
- elements) have long permitted ${property} interpolation. Now, if the result
- evaluates to "true" or "false" (or "yes", "no", "on", "off"), that boolean
- value will be used; otherwise the traditional behavior of treating the value
- as a property name (defined ~ true, undefined ~ false) is used. Existing
- scripts could be broken if they perversely defined a property named "false"
- and expected if="false" to be true, or used if="true" expecting this to be
- triggered only if a property named "true" were defined.
- * Ant now requires Java 1.4 or later.
- * Improved handling of InterruptException (lets suppose someone/thing
- is trying to kill the thread when we receive an
- InterruptException), when an InterruptException is received, we do
- not wait anymore in a while loop till the end time has been
- reached.
- Bugzilla Report 42924.
- * Refactor PropertyHelper and introspection APIs to make extension
- more granular and support setting task/type attribute values to
- objects decoded by custom PropertyEvaluator delegates. Also add
- <propertyhelper> task for registering delegates and/or replacing
- the registered PropertyHelper instance.
- Bugzilla Report 42736.
- * Added a restricted form of typedef called <componentdef>. This
- allows definition of elements that can only be within tasks or
- types. This method is now used to define conditions, selectors,
- comparators and filterreaders. This means that tasks may now have
- nested conditions just by implementing the Condition interface,
- rather than extending ConditionBase. It also means that the use of
- namespaces for some of the selectors introduced in Ant 1.7.0 is no
- longer necessary. Implementing this means that the DynamicElement
- work-around introduced in Ant 1.7.0 has been removed.
- Bugzilla Report 40511.
- * In the <touch> task when a <mapper> is used, the millis and
- datetime attributes now override the time of the source resource if
- provisioned.
- Bugzilla Report 43235.
- * Remove fall-back mechanism for references that are not resolved
- during normal runtime execution.
- * FileUtils.createTempFile now actually creates the file.
- The TempFile task still does not create the file by default, can be
- instructed to do so however using a new parameter.
- Bugzilla Report 33969.
- * A lock in Project ensured that a BuildListener's messageLogged
- method was only ever executed by a single thread at a time, while
- all other methods could be invoked by multiple threads
- simultaniously (while within <parallel>, for example). This lock
- is no longer in place, messageLogged should be made thread-safe
- now.
- * <sql>'s onError="stop" no longer fails the build if an error
- occurs, this is the main difference between stop and error and
- matches what the documentation implied.
- Bugzilla Report 24668.
- * Ant's configuration introspection mechanisms have been modified to prefer
- Resource and FileProvider attributes to plain java.io.File attributes;
- however the configuration-from-String behavior remains equivalent, rendering
- a FileResource.
- * CBZip2InputStream will now throw an IOException if
- passed in a null or empty InputStream to read from.
- Bugzilla Reports 32200.
- * <unzip> will now fail when trying to extract certain broken
- archives that would have been silently ignored in earlier version.
- Bugzilla Report 35000.
- * Ant's <zip> family of tasks tries to preserve the existing Unix
- permissions when updating archives or copying entries from one
- archive to another.
- Since not all archiving tools support storing Unix permissions in
- the same way that is used by Ant, sometimes the permissions read by
- Ant seem to be 0, which means nobody is allowed to do anything to
- the file or directory.
- If Ant now encounters a permission set of 0 it will assume that
- this is not the intended value and instead apply its own default
- values. Ant used to create entries with 0 permissions itself.
- The <zip> family of tasks has a new attribute preserve0permissions
- that can be set to restore the old behavior.
- Bugzilla Report 42122.
- * If a batch containing multiple JUnit tests running inside a forked
- Java VM caused the VM to crash (or caused a timeout), the
- formatters would receive an error message for the last test in the
- batch.
- Ant will now pass in a test with the name "Batch-With-Multiple-Tests"
- instead - this is supposed to show more clearly that the last test
- may not have started at all.
- Bugzilla Report 45227.
- * If the number of minutes a build takes is bigger then 1000 Ant will
- no longer print a thousands separator in the "elapsed time"
- message. It used to be the thousands separator of the current
- locale.
- Bugzilla Report 44659.
- * <symlink action="delete"> used to fail if the link was broken (i.e.
- pointing to a file or directory that no longer existed). It will now
- silently try to remove the link.
- Bugzilla Report 41285.
- * <delete file="..."> used to log a warning and not delete broken
- symbolic links. <delete dir="..."/> didn't even log a warning.
- The task will now try to delete them in both cases.
- Bugzilla Report 41285.
- * if the dir attribute of a <fileset> points to a symbolic link and
- followsymlinks is set to false, the fileset will no longer be
- scanned and always seem empty.
- Bugzilla Report 45741.
- * the .NET tasks that have been deprecated since Ant 1.7.0 have been
- removed, please use the stand-alone Antlib you can find at
- http://ant.apache.org/antlibs/dotnet/index.html
- instead.
- * the logic of closing streams connected to forked processes (read
- the input and output of <exec> and friends) has been changed to
- deal with cases where child processes of the forked processes live
- longer than their parents and keep Ant from exiting.
- It is unlikely but possible that the changed logic breaks stream
- handling on certain Java VMs.
- Bugzilla issue 5003.
- * <checksum>'s totalproperty was platform dependent because it relied
- on java.io.File#compareTo. It has now been made platform
- independent, which means that totalPropery values obtained on
- Windows (and other systems where the sort order of File is not case
- sensitive) can be different from the values obtained with earlier
- versions of Ant.
- Bugzilla Report 36748.
- * globmapper didn't work properly if the "to" or "from" patterns
- didn't contain a "*". In particular it implicitly added a * to the
- end of the pattern(s). This is no longer the case. If you relied
- on this behavior you will now need to explicitly specify the
- trailing "*".
- Bugzilla Report 46506.
- * <copy> silently ignored missing resources even with
- failOnError="true". If your build tries to copy non-existent
- resources and you relied on this behavior you must now explicitly
- set failOnError to false.
- Bugzilla Report 47362.
- * Ant now prefers the java.runtime.version system property over
- java.vm.version for the Created-By Manifest attribute.
- Bugzilla Report 47632.
- * The <image> task now supports a nested mapper. In order to
- implement this, the Java API of the task had to change so any
- custom subclass overriding the processFile method will need to
- adapt (by overriding the new two-arg processFile method).
- Bugzilla Report 23243.
- * A new property syntax can be used to set attributes from
- references: ${ant.ref:some-reference}
- In most cases this will yield the exact same result as
- ${toString:some-reference} - only when an attribute setter method
- accepts an object type other than string and the project's
- reference is an Object of matching type the new syntax will pass in
- that object.
- If your build file already contains properties whose name starts
- with "ant.ref:" there is a potential for collision. If your
- property has been set, normal property expansion will take
- precedence over the new syntax. If the property has not been set
- and a reference with the postfix of your property name exists
- (i.e. in a very unlikely event) then the new syntax would yield a
- different result (an expanded property) than Ant 1.7.1 did.
- * A ProjectHelper implementation can now provide the default build file
- name it is expecting, and can specify if they can support a specific build
- file. So Ant is now capable of supporting several ProjectHelper
- implementations, deciding on which to use depending of the input build file.
- * Mapper-aware selectors (depends, different, present) now accept typedef'd
- FileNameMappers.
- Fixed bugs:
- -----------
- * The default logger was failing to print complete stack traces for
- exceptions other than BuildException when inside <ant> or
- <antcall>, thus omitting often important diagnostic
- information.
- Bugzilla 43398 (continued).
- * Better handling of package-info.class.
- Bugzilla Report 43114.
- * RPM task needed an inserted space between the define and the value.
- Bugzilla Report 46659.
- * Got rid of deadlock between in, out and err in the Redirector.
- Bugzilla Report 44544.
- * Caused by AssertionError no longer filtered.
- Bugzilla Report 45631.
- * <zip> would sometimes recreate JARs unnecessarily.
- Bugzilla Report 45902.
- * <symlink> task couldn't overwrite existing symlinks that pointed to
- nonexistent files
- Bugzilla Report 38199.
- * <symlink> task couldn't overwrite files that were in the way of the symlink.
- Bugzilla Report 43426.
- * <symlink> task failonerror="false" does not stop build from failing
- when 'ln' command returns non-zero.
- Bugzilla Report 43624
- * <touch> task couldn't differentiate between "no resources
- specified" and "no resources matched."
- Bugzilla Report 43799.
- * ManifestClassPath failed when a relative path would traverse the
- file system root.
- Bugzilla Report 44499.
- * <globmapper> had an indexoutofbounds when the prefix and postfix
- overlapped.
- Bugzilla Report 44731.
- * <typedef> and <taskdef> failed to accept file names with #
- characters in them.
- Bugzilla Report 45190
- * A deadlock could occur if a BuildListener tried to access an Ant property
- within messageLogged while a different thread also accessed one.
- Bugzilla Report 45194
- * Handle null result of system getProperty() in CommandlineJava.
- Similar to Bugzilla Report 42334.
- * Length task did not process nonexistent Resources even though these might
- conceivably still carry file length information.
- Bugzilla Report 45271.
- * <javac>'s includeJavaRuntime="false" should work for gcj now. Note
- that you may need to set includeAntRuntime to false in order to
- have full control.
- Bugzilla Report 34638.
- * <sql> would fail if the executed statement didn't return a result
- set with some JDBC driver that dissalow Statement.getResultSet to
- be called in such a situation.
- Bugzilla Report 36265
- * if the executed statement in <sql> returned a result set and an
- update count, the count would be lost.
- * if an executed statement in <sql> mixes update count and result set
- parts, some result sets wouldn't get printed.
- Bugzilla Report 32168.
- * XmlLogger could lose messages if <parallel> is used.
- Bugzilla Report 25734.
- * <scp> creates remoteToDir if it doesn't exist.
- Bugzilla Report 42781
- * CBZip2OutputStream threw an exception if it was closed prior to
- writing anything.
- Bugzilla Reports 32200, 45836
- * The IPlanetDeploymentTool didn't use the configured DTD locations.
- Bugzilla Report 31876.
- * The ant shell script printed a warning under Cygwin if JAVA_HOME
- was not set.
- Bugzilla Report 45245.
- * <filterset> sometimes incorrectly flagged infinite recursions of
- filter tokens
- Bugzilla Report 44226.
- * failures were treated as errors in forked JUnit tests when JUnit 4
- was used.
- Bugzilla Report 43892.
- * <jar> and <manifest> disallowed manifest attributes whose name
- contained the character '8'.
- Bugzilla Report 45675.
- * BigProjectLogger would set the project's basedir to the current
- working directory.
- Bugzilla Report 45607.
- * only <formatter>s that logged to a file were notified if forked VM
- crashed or a timeout occurred in <junit>.
- Bugzilla Report 37312.
- * ant -v -version would print the version information twice.
- Bugzilla Report 45695.
- * when nested into builds that have been invoked by <ant> tasks
- <subant> might set the wrong basedir on the called projects.
- Bugzilla Report 30569.
- * If the message of the failed assertion of a forked JUnit test
- contained line feeds some excess output ended up in Ant's log.
- Bugzilla Report 45411.
- * <symlink action="delete"> failed to delete a link that pointed to
- a parent directory.
- Bugzilla Report 45743.
- * <symlink action="delete"> failed if ant lacked permission to rename
- the link's target.
- Bugzilla Report 41525.
- * when checking whether a jar is signed, <signjar> ignored the
- sigfile attribute.
- Bugzilla Report 44805.
- * When using JavaMail all <mail> tasks used the same mail host
- regardless of their configuration.
- Bugzilla Report 37970.
- * <signjar> and <issigned> didn't handle aliases with characters other
- than numbers, letters, hyphen or underscore properly.
- Bugzilla Report 45820.
- * <filterset> could miss multi-character begin tokens in some cases.
- Bugzilla Report 45094.
- * <depend> didn't close JARs that were part of the classpath.
- Bugzilla Report 45955.
- * in some cases <depend> would delete class files even if it didn't
- find the corresponding source files.
- Bugzilla Report 45916.
- * <javadoc> failed if the nested <bottom> or <head> contained line
- breaks.
- Bugzilla Report 43342.
- * encoding="auto" has been broken in <mail> since Ant 1.7.0 and only
- worked if JavaMail was available.
- Bugzilla Report 42389.
- * MailLogger could cause a NullPointerException.
- Bugzilla Report 44009.
- * <junit> didn't recognize failed assertions as failures if they
- caused subclasses of AssertionError to be thrown (like
- org.junit.ComparisonFailure that is thrown when assertEquals
- fails).
- Bugzilla Report 45028.
- * the Unix "ant" wrapper script failed to protect wildcards in
- command line arguments in some cases.
- Bugzilla Report 31601.
- * <cvstagdiff> crippled file names and could miss some entries if
- multiple modules have been specified.
- Bugzilla Report 35301.
- * Tasks with a "public void add(SomeType)" method failed to work as
- TaskContainers at the same time.
- Bugzilla Report 41647.
- * Tasks that implementes DynamicElemen or DynamicElementNS failed to
- work as TaskContainers at the same time.
- Bugzilla Report 41647.
- * combining SSL and authentication in <mail> and MailLogger failed in
- some setups.
- Bugzilla Report 46063.
- * if an error occurs while logging the buildFinished event, the
- original error is now logged to System.err.
- Bugzilla Report 25086.
- * <copy> failed with a NullPointerException when copying a resource
- without a name. It will now fail with a meaningful error message.
- Bugzilla Report 39960.
- * <xslt> now uses the configured classpath to load the factory (when
- using TraX) before falling back to Ant's own classpath.
- Bugzilla Report 46172.
- * <dependset> complained about files being modified in the future if
- they had been just very recently (within Ant's assumed granularity
- of the file system).
- Bugzilla Report 43665.
- * <sshexec> didn't store the output in outputproperty if the remote
- command failed.
- Bugzilla Report 46340.
- * DirectoryScanner's slow-scanning algorithm that is used when you
- ask for excluded or not-included files and/or directories could
- miss some files and directories in the presence of recursive
- exclude patterns.
- * <sort> resource collection kept only one of entries deemed equal by
- the chosen Comparator.
- Bugzilla Report 46527.
- * the ZipFile class used by <unzip> and others could leave the
- archive open (making it undeletable on Windows as long as the java
- VM was running) for files with an unexpected internal structure.
- Bugzilla Report 46559.
- * The zip package now supports the extra fields invented by InfoZIP
- in order to store Unicode file names and comments.
- * The zip package detects the encoding bit set by more modern
- archivers when they write UTF-8 filenames and optionally sets it
- when writing zips or jars.
- Bugzilla Report 45548
- * <sync> could run into a NullPointerException when faced with broken
- symbolic links.
- Bugzilla Report 46747.
- * The ant shell script should now support MSYS/MinGW as well.
- Bugzilla Report 46936.
- * <signjar> has a new force attribute that allows re-signing of jars
- that are already signed.
- Bugzilla Report 46891.
- * <sshexec> now again honors failonerror in the face of connection
- errors.
- Bugzilla Report 46829.
- * The <replacetokens> filter threw an exception if the stream to
- filter ended with a begin token.
- Bugzilla Report 47306.
- * <scriptmapper>, <scriptfilter> and <scriptcondition> didn't support
- the setbeans attribute.
- Bugzilla Report 47336.
- * <loadproperties>' encoding attribute didn't work.
- Bugzilla Report 47382.
- * Ant created tar archives could contain random bytes at the end
- which confused some untar implementations.
- Bugzilla Report 47421.
- * various places where unchecked PrintWriters could hide exceptions
- have been revisited to now check the error status or not use a
- PrintWriter at all.
- Bugzilla Report 43537.
- * filesetmanifest="mergewithoutmain" in <jar> didn't treat inline
- manifests as expected.
- Bugzilla Report 29731.
- * <record> didn't work properly with nested builds.
- Bugzilla Report 41368.
- * <jar> with filesetmanifest different from skip didn't work if the
- update attribute has been set to true.
- Bugzilla Report 30751.
- * The default stylesheets for <junitreport> failed to properly escape
- XML content in exception stack traces.
- Bugzilla Report 39492.
- * AntClassLoader didn't set the proper CodeSource for loaded classes.
- Bugzilla Report 20174.
- * AntClassLoader.getResourceAsStream would return streams to
- resources it didn't return with getResource and to classes it
- failed to load.
- Bugzilla Report 44103.
- * Logging exceptions without a message would cause a
- NullPointerException.
- Bugzilla Report 47623.
- * WeblogicDeploymentTool could fail on platforms with a file
- separator other than "/".
- Bugzilla Report 35649.
- * The update attribute of the modified selector was ignored.
- Bugzilla Report 32597.
- * <manifest> and <jar> can now merge Class-Path attributes from
- multiple sources and optionally flatten them into a single
- attribute.
- The default behaviour still is to keep multiple Class-Path
- attributes if they have been specified and to only include the
- attributes of the last merged manifest.
- Bugzilla Report 39655.
- * <delete> didn't work correctly with a <modified> selector because
- it was scanning the same filesets more than once.
- Bugzilla Report 43574.
- * when using custom filterreaders with the <filterreader classname="">
- syntax Ant could leak memory.
- The problem didn't occur when using <typedef> or <componentdef> to
- define the filterreader which is the recommended approach.
- Bugzilla Report 45439.
- * Ant didn't set the proper "magic" value for tar entries containing
- long file names in GNU longfile mode.
- Bugzilla Report 47653.
- * The tar task failed to recognize that the archive had to be
- (re-)created in some cases where the sources are filesystem based
- resources but not filesets.
- Bugzilla Report 48035.
- * <sshexec>'s outputproperty was prefixed by the executed command
- when the command attribute has been used, breaking backwards
- compatibility to Ant 1.7.0.
- Bugzilla Report 48040.
- * different task instances of the same <scriptdef>ed tasks could
- overwrite each others attributes/nested elements.
- Bugzilla Report 41602.
- * The Hashvalue algortihm implementation of the modified task could
- fail to read the file(s) completely.
- Bugzilla Report 48313.
- Other changes:
- --------------
- * The get task now also follows redirects from http to https
- Bugzilla Report 47433
- * A HostInfo task was added performing information on hosts, including info on
- the host ant is running on.
- Bugzilla Reports 45861 and 31164.
- * There is now a FileProvider interface for resources that act as a source
- of filenames. This should be used by tasks that require resources
- to provide filenames, rather than require that all resources
- are instances or subclasses of FileResource.
- Bugzilla Report 43348
- * There is now a URLProvider interface for resources that act as a
- source of URLs. This should be used by tasks that require resources
- to provide URLs, rather than require that all resources are
- instances or subclasses of URLResource.
- * Fixcrlf now gives better error messages on bad directory attributes.
- Bugzilla Report 43936
- * a new property ant.project.default-target holds the value of the
- current <project>'s default attribute.
- * a new property ant.project.invoked-targets holds a comma separated
- list of the targets that have been specified on the command line
- (the IDE, an <ant> task ...) when invoking the current project.
- * The <type> resource selector has had an "any" type added for better
- configurability.
- * Ant should detect the OS as both a Mac and a Unix system when
- running on OpenJDK.
- Bugzilla Report 44889.
- * new protected getConnection and getStatement methods allow
- subclasses of SQLExec more control - or access to the cached
- instances when overriding other methods like runStatements.
- Bugzilla Report 27178.
- * <sql> has a new failOnConnectionError attribute that can be used to
- keep a build going even if the task failed to connect to the
- database.
- Bugzilla Report 36712.
- * A new attribute strictDelimiterMatching can be used to ignore case
- or whitespace differences when <sql> searches for delimiters.
- This is useful if you execute a SQL script that has contains "GO"
- and "go" as delimiters.
- Bugzilla Report 26459.
- * A new showWarnings attribute of <sql> allows warnings to be logged.
- Bugzilla Report 41836.
- * A new treatWarningsAsErrors attribute of <sql> can be used to fail
- a build if a warning occurs.
- Bugzilla Report 41836.
- * Ant now supports scoped properties (see Local task).
- Bugzilla Report 23942.
- * <sql>'s CSV output can be controlled via the new attributes
- csvColumnSeparator and csvQuoteCharacter.
- Bugzilla Report 35627.
- * <ftp>'s logging has been improved.
- Bugzilla Reports 30932, 31743.
- * It is now possible to disable <ftp>'s remote verification.
- Bugzilla Report 35471.
- * <sshexec> now supports input in a way similar to <exec>
- Bugzilla Report 39197.
- * <scp> can now preserve the file modification time when downloading
- files.
- Bugzilla Report 33939.
- * the new task sshsession can run multiple tasks in the presence of
- an SSH session providing (local and remote) tunnels.
- Bugzilla Report 43083.
- * ZipOutputStream has been sped up for certain usage scenarios that
- are not used by Ant's family of zip tasks.
- Bugzilla Report 45396.
- * <echo> supports an "output" Resource attribute as an alternative to "file".
- * <sql> "output" attribute now supports any Resource in addition to a file.
- * <scp> no longer requires a passphrase when using key based
- authentication.
- Bugzilla Report 33718.
- * a new failOnEmptyArchive attribute on <unzip> and <untar> can now
- make the task fail the build if it tries to extract an empty
- archive.
- * <unzip> and <untar> have a new attribute stripAbsolutePathSpec.
- When set to true, Ant will remove any leading path separator from
- the archived entry's name before extracting it (making the name a
- relative file name).
- Bugzilla Report 28911.
- * <unzip> will now detect that it was asked to extract a file that is
- not an archive earlier if the file is big.
- Bugzilla Report 45463.
- * New file and resource selectors <readable/> and <writable/> have
- been added that select file which the current process can read or
- write.
- Bugzilla Report 45081.
- * The filename file selector has a new attribute regex that allows
- files to be selected by matching their names against a regular
- expression.
- Bugzilla Report 45284
- * The name resource selector has a new attribute regex that allows
- resources to be selected by matching their names against a regular
- expression.
- Bugzilla Report 45284
- * Enhanced performance of Project.fireMessageLoggedEvent and DirectoryScanner
- Bugzilla Reports 45651 and 45665
- * The package list location for offline links can now be specified as
- an URL.
- Bugzilla Report 28881
- * <echoxml> now supports XML namespaces.
- Bugzilla Report 36804.
- * A new listener for <junit> has been added that tries to invoke the
- tearDown method of a TestCase if that TestCase was run in a forked
- VM and the VM crashed or a timeout occurred. See the <junit> task's
- manual page for details.
- Bugzilla Report 37241.
- * The Jar task now supports the addition of a jar index file in update mode.
- Previously the absence of the index was not enough to trigger the rebuild;
- some other update was necessary.
- Bugzilla report 45098.
- * <ant> has a new attribute "useNativeBasedir" that makes the child
- build use the same basedir it would have used if invoked from the
- command line. No matter what other attributes/properties have been
- set.
- Bugzilla Report 45711.
- * <patch> has a new optional failOnError attribute.
- Bugzilla Report 44772.
- * Antlib descriptors will now be parsed by the configured
- ProjectHelper if the implementation overrides the new
- canParseAntlibDescriptor and parseAntlibDescriptor methods. If the
- configured helper doesn't override the methods, a new instance of
- ProjectHelper2 will be used just like in Ant 1.7.1.
- Bugzilla Report 42208.
- * It is now possible to explicitly set the executable used by
- <signjar>.
- Bugzilla Report 39189.
- * <compositemapper>'s order of results is now predictable.
- Bugzilla Report 44873
- * a new <firstmatchmapper> has been added, which works similar to
- <compositemapper> but only returns the results of the first nested
- mapper that matches.
- Bugzilla Report 44873
- * <get> has a new maxtime attribute that terminates downloads that
- are taking too long.
- Bugzilla Report 45181.
- * <ftp> now supports selectors for remote directories as well.
- Bugzilla Report 44726.
- * In some cases Ant fails to rename files if the source or target
- file has just recently been closed on Windows. It will now try to
- delete the offending file once again after giving the Java VM time
- to really close the file.
- Bugzilla Report 45960.
- * two new properties can be used to set the MIME-Type and charset
- used by MailLogger.
- Bugzilla Report 27211.
- * a new attribute of <mail> allows the task to succeed if it can
- reach at least one given recipient.
- Bugzilla Report 36446.
- * two new properties allow MailLogger to send a fixed text instead of
- the log file.
- Bugzilla Report 38029.
- * <cvsversion> is supposed to support CVSNT now.
- Bugzilla Report 31409.
- * <cvs>' port attribute should now work for all clients that use the
- environment variable CVS_PSERVER_PORT instead of the "official"
- CVS_CLIENT_PORT.
- Bugzilla Report 30124.
- * <cvsversion> now works for local repositories as well.
- * <cvstagdiff> has an option to ignore removed files now.
- Bugzilla Report 26257.
- * <cvs> and friends now support modules with spaces in their names
- via nested <module> elements.
- * A new attribute "ignoreEmpty" controls how <concat> deals when
- there are no resources to concatenate. If it is set to false, the
- destination file will be created regardless, which reinstates the
- behavior of Ant 1.7.0.
- Bugzilla Report 46010.
- * If the new remote attribute is set to true, <cvschangelog> can now
- work against a remote repository without any working copy.
- Bugzilla Report 27419.
- * start and end tags can now be used instead of dates in
- <cvschangelog>.
- Bugzilla Report 27419.
- * MailLogger and <mail> can now optionally enable support for
- STARTTLS.
- Bugzilla Report 46063.
- * <import> has new attributes "as" and "prefixSeparator" that can be
- used to control the prefix prepended to the imported targets'
- names.
- * a new task <include> provides an alternative to <import> that
- should be preferred when you don't want to override any targets.
- * delete has a new attribute removeNotFollowedSymlink. If set to
- true, symbolic links not followed (because followSymlinks was false
- or the number of symlinks was too big) will be removed.
- Bugzilla Report 36658.
- * the os and osfamily attributes of <chown>, <chgrp>, <chmod> and
- <attrib> can now be used to run the commands on operating systems
- other than their "native" environment, i.e. non-Unix or non-Windows
- operating systems respectively.
- Bugzilla Report 7624.
- * a new resource collection <mappedresources> generalizes the prefix
- and fullpath attributes of <zipfileset> to arbitrary mappers that
- can be applied to arbitrary resource collections.
- Bugzilla Report 4240.
- * <tarfileset> and <zipfileset> have a new attribute
- errorOnMissingArchive that allows "optional" filesets that don't
- break the build if the archive doesn't exist.
- Bugzilla Report 46091.
- * <javadoc> has new attributes that correspond to the
- -docfilessubdirs and -excludedocfilessubdir command line arguments.
- Bugzilla Report 34455.
- * <xslt> now fails early if a specified stylesheet doesn't exist.
- Bugzilla Report 34525.
- * <xslt> now has an option to suppress transformer warnings. This
- option only has an effect for processors that support this feature;
- the "trax" processor included with Ant does support it.
- Bugzilla Report 18897.
- * <xslt> has two new attributes failOnError and
- failOnTransformationError that can be used to not make the build
- process proceed if an error occurs.
- Bugzilla Report 36260.
- * <xslt> has a new attribute failOnNoResources that can be used to
- make the build fail/continue if the collection of resources to
- transform is empty.
- Bugzilla Report 46274.
- * It is now possible to define system properties that should be set
- during xslt's transformation. This can be used to enable XInclude
- processing in Xerces, for example.
- Bugzilla Report 36653.
- * a new resource collection <archives> can be used to specify
- collections of ZIP and TAR archives as sources. It extracts them on
- the fly. This is a generalization of the <zipgroupfileset> found
- as nested element of <zip> and friends.
- Bugzilla Report 46257.
- * <dependset> has a new verbose attribute that makes the task list
- all deleted targets and give a hint as to why it deleted them.
- Bugzilla Report 13681.
- * <replaceregexp> now supports arbitrary filesystem based resource
- collections.
- Bugzilla Report 46341.
- * <replace> now supports arbitrary filesystem based resource
- collections.
- Bugzilla Report 24062.
- * token and value of <replace>'s nested <replacefilter> can now also
- be specified as nested elements to allow multiline content more
- easily.
- Bugzilla Report 39568.
- * <replace> and <replaceregexp> can now optionally preserve the file
- timestamp even if the file is modified.
- Bugzilla Report 39002.
- * The <replace> child-elements <replacetoken> and <replacevalue> have
- a new attribute that controls whether properties in nested text get
- expanded.
- Bugzilla Report 11585.
- * <replace> has a new attribute failOnNoReplacements that makes the
- build fail if the task didn't do anything.
- Bugzilla Report 21064.
- * <sync>'s <preserveInTarget> has a new attribute that controls
- whether empty directories should be kept.
- Bugzilla Report 43159.
- * ant -diagnostics now checks that it can read as much from the
- temporary directory as it has written. This may help detecting a
- full filesystem.
- Bugzilla Report 32676.
- * <pathconvert> has a new preserveduplicates attribute--historically
- these were eliminated in the interest of behaving in the manner
- of a "path."
- * <javac>'s source and target attributes are no longer ignored when
- using gcj.
- Bugzilla Issue 46617.
- * ant -diagnostics now outputs information about the default XSLT
- processor.
- Bugzilla Issue 46612.
- * the ZIP library will now ignore ZIP extra fields that don't specify
- a size.
- Bugzilla Report 42940.
- * CBZip2OutputStream now has a finish method separate from close.
- Bugzilla Report 42713.
- * the <zip> and <unzip> family of tasks has new options to deal with
- file name and comment encoding. Please see the zip tasks'
- documentation for details.
- * <input ...><handler type="secure" /></input> now uses previously
- undocumented SecureInputHandler shipped with Ant 1.7.1.
- * Command line arguments for <exec> and similar tasks can now have
- optional prefix and suffix attributes.
- Bugzilla Report 47365
- * <apply>'s srcfile and targetfile child elements can now have
- optional prefix and suffix attributes.
- Bugzilla Report 45625
- * <jar> has a new attribute to enable indexing of META-INF
- directories which is disabled for backwards compatibility reasons.
- Bugzilla Report 47457
- * <apt>'s executable attribute can be used to specify a different
- executable.
- Bugzilla Report 46230.
- * <rmic>'s new executable attribute can be used to specify a
- different executable.
- Bugzilla Report 42132.
- * <javac>, <rmic>, <javah> and <native2ascii> now provide a nested
- element to specify a classpath that will be used when loading the
- task's (compiler) adapter class.
- Bugzilla Report 11143.
- * <javac>, <rmic>, <javah> and <native2ascii> now provide a nested
- element to specify the task's (compiler) adapter as an instance of
- a class that has been defined via typedef/componentdef. This
- allows more control over the classpath and allows adapters to be
- defined in Antlibs easily.
- * A new subclass org.apache.tools.ant.loader.AntClassLoader5 of
- AntClassLoader has been added which overrides getResources
- which became non-final in ClassLoader with Java5+ so
- this method now behaves as expected.
- The new subclass will be used by Ant internally if it is available
- and Ant is running on Java5 or more recent.
- Bugzilla Report 46752.
- * a new attributes can chose a different request method than GET for
- the http condition.
- Bugzilla Report 30244
- * <splash> now supports a configurable display text and a regular
- expression based way to determine progress based on logged messages.
- Bugzilla Report 39957.
- * the number of retries on error in <get> is now configurable. <get>
- can be told to not download files that already exist locally.
- Bugzilla Report 40058.
- * Ant now builds against commons-net 2.0 as well.
- Bugzilla Report 47669.
- * A new nested element connectionProperty of <sql> allows setting of
- arbitrary JDBC connection properties.
- Bugzilla Report 33452.
- * A new islastmodified condition can check the last modified date of
- resources.
- * <rmic> has a new destDir attribute that allows generated files to
- be written to a different location than the original classes.
- Bugzilla Report 20699.
- * <rmic> has a new listfiles attribute similar to the existing one of
- <javac>.
- Bugzilla Report 24359.
- * It is now possible to suppress the "FAILED" lines sent to Ant's
- logging system via <junit>'s new logFailedTests attribute.
- Bugzilla Report 35073.
- * <propertyfile> now can delete entries.
- * The <resources> resource collection can now optionally cache its
- contents.
- * A new <resourceexists> condition can check whether resources exists.
- * <sql> has two new attributes errorproperty and warningproperty that
- can be set if an error/warning occurs.
- Bugzilla Report 38807.
- * <sql> has a new attribute rowcountproperty that can be used to set
- a property to the number of rows affected by a task execution.
- Bugzilla Report 40923.
- * when Ant copies files without filtering, it will now use NIO
- channels.
- Bugzilla Report 30094.
- * <get> has a new attribute that can be used to disable caching on
- HTTP connections at the HttpUrlConnection level.
- Bugzilla Report 41891.
- * <tar> and <zip> (and tasks derived from <zip>) will now create the
- parent directory of the destination archive if it doesn't exist.
- Bugzilla Report 45377.
- * A new filterreader <sortfilter> that sorts input lines has been
- added.
- Bugzilla Report 40504.
- * A new token filter <uniqfilter> that suppresses tokens that match
- their ancestor token has been added.
- * <rootfileset>s nested into <classfileset>s can now use a dir
- attribute different from the <classfileset>.
- Bugzilla Report 37763.
- * <path> can now optionally cache its contents.
- * <property> can now specify values as nested text.
- Bugzilla Report 32917.
- * a new parentFirst attribute on <javaresource> allows resources to
- be loaded from the specified classpath rather than the system
- classloader.
- Bugzilla Report 41369.
- * <property location="from" basedir="to" relative="true"/> can now
- calculate relative paths.
- * The <name> selector supports a new handleDirSep attribute that
- makes it ignore differences between / and \ separators.
- Bugzilla Report 47858.
- * <get> now supports resource collections (as long as the resources
- contained provide URLs) and can get multiple resources in a single
- task.
- * <import> can now import non-File resources if they provide an URL
- - as the <url> and <javaresource> resources do.
- Bugzilla Report 29251
- * <import> can now import multiple resources specified as resource
- collections.
- Bugzilla Report 22269.
- * a new <resourcelist> type is similar to <filelist> but can read the
- list of resources from non-file resources and may return resources
- that are not files.
- * a new filterreader appendtolines complements prefixlines.
- * a new top level element extension-point allows build files to be
- extended with custom targets more easily.
- Changes from Ant 1.7.0 TO Ant 1.7.1
- =============================================
- Changes that could break older environments:
- -------------------------------------------
- * String resources only have properties single expanded. If you relied on
- <string> resources being expanded more than once, it no longer happens.
- Bugzilla report 42277.
- * A String resource's encoding attribute was only taken into account when
- set from the resource's OutputStream; the InputStream provided the String's
- binary content according to the platform's default encoding. Behavior has
- been modified to encode outgoing (InputStream) content as well as encoding
- incoming (OutputStream) content.
- * <java> with fork now returns gives -1 instead of 0 as result when failonerror
- is false and some exception (including timeout) occurs. Br 42377.
- * ant-type attribute has been marked as deprecated and a warning has been
- issued if it is encountered in the build file.
- Fixed bugs:
- -----------
- * The default logger was failing to print complete stack traces for exceptions
- other than BuildException, thus omitting often important diagnostic
- information. Bugzilla 43398.
- * Error in FTP task
- Bugzilla report 41724
- * Regression: Locator fails with URI encoding problem when spaces in path
- Bugzilla report 42222
- * Regression in Locator: running Ant off a network share does not work:
- message "URI has authority component" appears
- Bugzilla report 42275
- * Improvements in AntClassLoader Speed.
- Bugzilla report 42259
- * Error in handling of some permissions, most notably the AllPermission on
- jdk 1.5
- Bugzilla report 41776
- * Replace task summary output incorrect.
- Bugzilla report 41544
- * Dependset crashes ant when timestamp on files change during Dependset
- execution.
- Bugzilla report 41284
- * Bug in org.apache.tools.ant.types.resources.comparators.Date
- Bugzilla report 41411
- * <junit> in Ant 1.7.0 could throw NPE if no <classpath> was defined.
- Bugzilla report 41422.
- * In Ant 1.7.0, <fileset> in <javadoc> does not by default include only
- **/*.java as the documentation claims and earlier revisions did.
- Bugzilla report 41264.
- * SPI support in jar was broken.
- Bugzilla report 41201.
- * jsch-0.1.30 causes SCP task to hang
- Bugzilla report 41090.
- * Target from imported file listed twice in projecthelp.
- Bugzilla report 41226.
- * <sql> task double-expands properties if expandproperties is true,
- and expands properties if expandproperties is false.
- Bugzilla report 41204.
- * Rolling back Bugzilla 32927 (set a default description for a javadoc tag
- if not set) as it caused a BC problem.
- Bugzilla report 41268.
- * <apt> forks properly and so memory settings are picked up.
- Bug report 41280.
- * Regression: NPE was thrown when using <pathconvert> against a
- (third-party instantiated) fileset with null Project reference.
- * Strip out all -J arguments to non forking rmic adapters, specifically
- the Sun and Weblogic compilers.
- Bug report 41349
- * Synchonization issues in PropertyHelper. Bugzilla 41353.
- * <concat binary="true" append="true"> did not append. Bugzilla 41399.
- * -autoproxy turns Java1.5+ automatic proxy support on. Bugzilla 41904
- * Handle null result of system getProperty(). Bugzilla 42334.
- * Regression: concat fixlastline="true" should not have applied to
- nested text, but did in Ant 1.7.0. Bugzilla 42369.
- * Regression: ant.version was not passed down in <ant>, <subant>.
- This worked in Ant 1.6.5, but not in 1.7.0.
- ant.core.lib (added in 1.7.0) was also not being propagated.
- Bugzilla bug 42263
- * Regression: bzip2 task created corrupted output files for some inputs.
- Bugzilla bug 41596.
- * Regression: <available> with <filepath> did not work.
- Bugzilla 42735.
- * ant script, cd may output to stdout.
- Bugzilla 42739.
- * Modified selector doesn't update the cache if only one file has changed.
- Bugzilla 42802.
- * Regression: Path subclasses that overrode list() stopped working in
- resourceCollection contexts in Ant 1.7.0. Bugzilla 42967.
- * <property> supports loading from xml based property definition.
- Bugzilla 42946
- * <junit> supports collecting and rerunning failed test cases
- (textXXX methods). Bugzilla 42984.
- * War task failed with "No WEB-INF/web.xml file was added" when called
- a second time. Bugzilla 43121.
- * FilterMapper could throw an NPE.
- Bugzilla 43292.
- * Regession nested macrodefs with elements could cause StackOverFlow.
- Bugzilla 43324.
- * Some changes to <junit> broke third party tasks that extend it (like
- Apache Cactus' Ant task). The changes have been modified so that
- subclases should now work again - without any changes to the
- subclass.
- Other changes:
- --------------
- * Various small optimizations speed up common tasks such as <javac> on large
- filesets, reducing both I/O and CPU usage.
- * Profiling logger has been added with basic profiling capabilities.
- * <script> now has basic support for JavaFX scripts
- * SSH task can now take a command parameter containing the commands to execute.
- This allows you to connect to a server and execute a number of commands
- without constantly reconnecting for each command.
- * Upgraded XML API to XML commons version 1.3.04.
- * Upgraded to Xerces 2.9.0
- * <script> can now work with bsf.jar and js.jar in its <classpath>.
- * add errorProperty and updatedProperty to <javac>
- Bugzilla 35637 and 28941.
- * add classpathref attribute to <whichresource>
- Bugzilla 41158.
- * reduce logging noise of <apply skipemptyfilesets="true">
- Bugzilla 29154
- * Show Previous Revision in the tagdiff.xsl stylesheet
- Bugzilla 29143
- * Allow <mapper refid> to refer directly to a FileNameMapper instance.
- * If you try and use a type in a namespace (or an antlib), and the type is not
- recognized but there are other definitions in that namespace, Ant lists what
- the known definitions are. This helps you find spelling errors.
- * Add a <last> resource collection, corresponding to <first>.
- * Add new <truncate> task.
- * <junitreport> xsl stylesheets allow setting the title used in <title> and <h1> tags by
- using <report><param> element. Bugzilla 41742.
- * Add IgnoreDependenciesExecutor for weird cases when the user wants to run
- only the targets explicitly specified.
- * Patternset allows nested inverted patternsets using <invert>.
- * <manifest> checks for validity of attribute names.
- * JUnitVersionHelper.getTestCaseClassName is now public. Bugzilla 42231
- * <string> resource supports nested text. Bugzilla bug 42276
- * <scriptdef> now sources scripts from nested resources/resource collections. This lets you
- define scripts in JARs, remote URLs, or any other supported resource. Bugzilla report 41597.
- * <concat> is now usable as a single-element ResourceCollection.
- * It is now possible to provide the value of a <striplinecomments> filter's
- <comment> nested element as nested text instead of using the 'value'
- attribute.
- * A new logger, BigProjectLogger, lists the project name with every target
- * Default text added to macrodef. Bugzilla report 42301.
- * "rawblobs" attribute added to SQL task.
- * Add new retry task container.
- * <jar> has a new strict attribute that checks if the jar complies with
- the jar packaging version specification.
- * <javac> has a new attribute - includeDestClasses.
- Bugzilla 40776.
- * <fileset> has a new attribute - errorOnMissingDir.
- Bugzilla 11270.
- * <javac> handles package-info.java files, there were repeatedly compiled.
- Bugzilla 43114.
- * SecureInputHandler added to use Java 6 System.console().readPassword()
- when available.
- Changes from Ant 1.6.5 to Ant 1.7.0
- ===================================
- Changes that could break older environments:
- -------------------------------------------
- * Initial support for JDK 6 (JSR 223) scripting.
- <*script*> tasks will now use javax.scripting if BSF is
- not available, or if explicitly requested by using
- a "manager" attribute.
- * Removed launcher classes from nodeps jar.
- * <classconstants> filter reader uses ISO-8859-1 encoding to read
- the java class file. Bugzilla report 33604.
- * Defer reference process. Bugzilla 36955, 34458, 37688.
- This may break build files in which a reference was set in a target which was
- never executed. Historically, Ant would set the reference early on, during parse
- time, so the datatype would be defined. Now it requires the reference to have
- been in a bit of the build file which was actually executed. If you get
- an error about an undefined reference, locate the reference and move it somewhere
- where it is used, or fix the depends attribute of the target in question to
- depend on the target which defines the reference/datatype.
- As a result of testing on real live build scripts, a fall-back mechanism
- was put it place to allow references that are out-of-band to be resolved. If
- this happens a big warning message is logged. This fall-back mechanism will
- be removed in Ant 1.8.0.
- * <script> and <scriptdef> now set the current thread context.
- * Unrestrict the dbvendor names in the websphere element of the ejbjar task.
- Bugzilla Report 40475.
- * <env> nested element in <java>, <exec> and others is now case-insensitive
- for windows OS. Bugzilla Report 28874.
- * Removed support for xalan1 completely. Users of Xalan1 for Ant builds will
- have to stay at ant 1.6.5 or upgrade to xalan2.
- * Use org.apache.log4j.Logger instead of org.apache.log4j.Category.
- Category has been deprecated for ~2 years and has been removed from
- the log4j code. Logger was introduced in log4j 1.2 so users of
- log4j 1.1 and log4j 1.0 need to upgrade to a newer version of log4j.
- Bugzilla Report 31951.
- * build.sysclasspath now also affects the bootclasspath handling of
- spawned Java VMs. If you set build.sysclasspath to anything other
- than "ignore" (or leave it unset, since "ignore" is the default when
- it comes to bootclasspath handling), then the bootclasspath of the
- VM running Ant will be added to the bootclasspath you've specified.
- * The <java fork="false"> now as per default installs a security manager
- using the default permissions. This is now independent of the
- failonerror attribute. Bugzilla report 33361.
- * <signjar> now notices when the jar and signedjar are equal, and switches
- to the same dependency logic as when signedjar is omitted. This may break
- something that depended upon signing in this situation. However, since
- invoking the JDK jarsigner program with -signedjar set to the source jar
- actually crashes the JVM on our (Java1.5) systems, we don't think any
- build files which actually worked will be affected by the change.
- * <signjar> used to ignore a nested fileset when a jar was also provided as an
- attribute, printing a warning message; now it signs files in the fileset.
- * An improved method of handling timestamp granularity differences between
- client and server was added to the <ftp> task. FTP servers typically
- have HH:mm timestamps whereas local filesystems have HH:mm:ss timestamps.
- Previously, this required tweaking with the timediffmillis attribute
- which also was used to handle timezone differences. Now, there is a new
- timestampgranularity attribute. The default value for get operations is 0
- since the user has the more powerful preservelastmodified attribute to work
- with. Since this is not available on put operations the default value
- adds a minute to the server timestamp in order to account for this,
- Scripts which previously used timediffmillis to do this compensation may
- need to be rewritten. timediffmillis has now been deprecated.
- * Support for the XSL:P XML parser has been removed.
- Bugzilla Report 23455.
- * Visual Age for Java optional tasks removed as the required library is no
- longer available.
- * Testlet (test) optional task removed as the required library is no
- longer available.
- * IContract optional task removed as the required library is no
- longer available.
- * Metamata (maudit, mmetrics, and mparse tasks) removed as the required
- library is no longer available.
- * Sitraka (jpcoverage, jpcovmerge, jpcovreport) tasks suppressed as the
- required library is no longer available.
- * <fixcrlf> used \r (Mac) line endings on OS X, whose proper line separator
- is \n (Unix). Bugzilla report 39585.
- * <scp> now optionally supports the sftp protocol, you may need a
- newer jsch.jar. Bugzilla Report 39373.
- * Ant launcher program prints errors to stderr, and exits with a 2 exit code
- value if, for any reason, it cannot actually start Ant proper. This will only
- affect programs/scripts that called the launcher and which did not want to
- receive an error if Ant itself would not start
- * All .NET tasks are now deprecated in favor of the new .NET Antlib:
- http://ant.apache.org/antlibs/dotnet/index.html
- Fixed bugs:
- -----------
- * Directory deletion did not work properly.
- Bugzilla 40972.
- * docletpath attribute of javadoc was ignored.
- Bugzilla 40900.
- * Fixed incorrect recursion in DOMUtil.listChildNodes().
- Bugzilla 40918.
- * CompressedResource.compareTo() did not
- take comparison with another CompressedResource into account.
- Bugzilla 40949.
- * Avoid possible NPE in Jar.java.
- Bugzilla 40847.
- * regression in attribute prefix (+ others) for refid in zipfileset and tarfileset.
- Bugzilla 41004, 30498.
- * dependset failed if the basedir of a target fileset did not exist.
- Bugzilla 40916.
- * Recursive filtering encountered NullPointerExceptions under certain
- circumstances. Bugzilla 41086.
- * XmlProperty overrides previously set property value when handling duplicate
- elements. Bugzilla 41080.
- * Having many tasks causes OOM. Bugzilla 41049.
- * Regression: <path> was evaluating nested content only once, so that it could
- not e.g. pick up files that didn't exist the first time through.
- Bugzilla 41151.
- * OOM caused by IH holding on to classes and thus their classloaders.
- Bugzilla 28283 and 33061.
- * <delete> doesn't delete when defaultexcludes="false" and no includes is set
- fixed. Bugzilla 40313.
- * Behavior change of DirectoryScanner/AbstractFileset when conditional include
- patterns are used. Bugzilla 40722.
- * <javac> fails with NPE when compiling with eclipse ecj 3.1.x.
- Bugzilla 40839.
- * JUnitTestRunner had a NPE when unable to create parser, the exception
- containing the error did not get reported. Bugzilla 36733.
- * <checksum> with file and todir option failed. Bugzilla report 37386.
- * <path location="loc"> was broken (Regression from beta1).
- Bugzilla report 40547.
- * Nested fileset in <cab> did not work. Bugzilla report 39439.
- * The ant wrapper script should now correctly locate the java
- executable in more recent IBM JDKs for AIX as well.
- * URLResource did not close jar files, and also did not disconnect HTTPConnection (s).
- * Error calling junitreport. Bugzilla 40595.
- * <junittask/> created junitvmwatcher*.properties files but did not close and delete them.
- * <xmlproperty> did not create properties for empty leaf elements.
- Bugzilla report 26286.
- * UnknownElement.maybeConfigure always configured.
- Bugzilla report 40641.
- * No check for refid when prefix attribute is set in zipfileset.
- Bugzilla report 30498.
- * Fix for junit4 issue introduced since beta2.
- Bugzilla report 40682.
- * Error in duplicate project name with <import> and <antcall>.
- Bugzilla report 39920.
- * junit4 did not work with fork=no and junit4 in $ANT_HOME/lib.
- Bugzilla report 40697.
- * PathConvert on Windows should process forward and back slashes equivalently.
- Bugzilla report 32884.
- * ant.bat now looks in %USERPROFILE% and %HOMEDRIVE%%HOMEPATH% in addition to
- %HOME% for pre/post batch files. Bugzilla report 39298.
- * The inheritance hierarchy of the legacy <path> type was changed; code built
- against Ant 1.7 would therefore no longer execute on older versions of Ant.
- Since <path> is historically heavily used this was undesirable, and since it
- is also avoidable, the change to <path>'s taxonomy was reverted.
- * <zip filesonly="true"> included empty directories. Bugzilla report 40258.
- * Invalid hash code of Target causes XmlLogger to fail.
- Bugzilla report 40207.
- * Macro element did not include top level Text. Bugzilla report 36803.
- * AntClassLoader did not isolate resources when isolate was set. Bugzilla report 38747.
- * Diagnostics broken when using java 1.4. Bugzilla report 40395.
- * Exception reporting in <copy> was broken. Bugzilla report 40300.
- * Handling of corrupt tar files, TarInputStream.read() never returns EOF.
- Bugzilla report 39924.
- * Some bugs in ReaderInputStream. Bugzilla report 39635.
- * <antlr> did not recognise whether the target is up-to-date for html option.
- Bugzilla report 38451.
- * Documented minimal version of jsch now 0.1.29.
- Bugzilla report 40333.
- * <available> searched parent directories for files.
- Bugzilla report 37148.
- * The build could be halted if a file path contained more ".." components than
- the actual depth of the preceding path. Now such paths are left
- alone (meaning they will likely be treated as nonexistent
- files). Bugzilla Report 40281.
- * Converting a <dirset> to a string was broken. Bugzilla Report 39683.
- * Manifests have improved line length handling, taking care of encoding.
- Bug reports 37548 / 34425.
- * <manifest> now closes the inputstream explicitly. Bug report 39628.
- * <rpm> now also correctly searches the first element of the path.
- Bug report 39345.
- * ant.bat now handles classpath set to "". Bug report 38914.
- * <junit> now supports JUnit 4. Bugzilla Report 38811.
- * <junit> can now work with junit.jar in its <classpath>. Bugzilla
- Report 38799.
- * Some potential NullPointerExceptions, Bugzilla Reports 37765 and 38056.
- * Problem when adding multiple filter files, Bugzilla Report 37341.
- * Problem referencing jars specified by Class-Path attribute in manifest
- of a ant task jar file, when this ant task jar file is located in
- a directory with space, Bugzilla Report 37085.
- * Backward incompatible change in ZipFileSet, Bugzilla Report 35824.
- * Wrong replacement of file separator chars prevens junitbatchtest
- from running correctly on files from a zipfileset. Bugzilla Report 35499.
- * Calling close twice on ReaderInputStream gave a nullpointer exception.
- Bugzilla Report 35544.
- * Memory leak from IntrospectionHelper.getHelper(Class) in embedded
- environments. Bugzilla Report 30162.
- * Translate task does not remove tokens when a key is not found.
- It logs a verbose message. Bugzilla Report 13936.
- * Incorrect task name with invalid "javac" task after a "presetdef".
- Bugzilla reports 31389 and 29499.
- * <manifest> was not printing warnings about invalid manifest elements.
- Bugzilla report 32190.
- * <replace> got out of memory on large files (part of report 32566).
- <replace> can now handle files as long as there is enough disk space
- available.
- * Commandline.describeCommand() methods would attempt to describe
- arguments even when none, other than the executable name, were present.
- * Create signjar's helper ExecTask instance directly rather than by
- typedef discovery mechanisms. Bugzilla report 33433.
- * FileUtils.resolveFile() promised to return absolute files but
- did not always do so.
- * <ftp> failed to retrieve a file when the path towards the file contained
- an element starting with . Bugzilla report 33770.
- * "<rmic> always compiles on Java1.5" bugzilla report=33862. Fixed default
- stub version to always be "compat", even on Java1.5+.
- * The .NET compilation tasks failed if filenames given as references
- contained spaces. Bugzilla Report 27170.
- * 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.
- * Task.init() was called twice for most tasks. Bugzilla Report 34411.
- * JavaTest testcases sometimes fail on windows. Bugzilla Report 34502.
- * Targets with identical name work in imported project. Bugzilla Report 34566.
- * DemuxOutputStream now uses a WeakHashMap to store the thread-stream mapping,
- to avoid holding on to thread references after they terminate.
- * <xmlvalidate> and <schemavalidate> create a new parser for every file in a
- fileset, and so validate multiple files properly. Bugzilla Report 32791.
- * <tar> / <untar> now accepts files upto 8GB, <tar> gives an error if larger
- files are to be included. This is the POSIX size limit.
- * <junitreport> removed line-breaks from stack-traces. Bugzilla
- Report 34963.
- * Off-by-one error in environment setup for execution under OpenVMS fixed.
- * Bugzilla report 36171: -noclasspath crashes ant if no system
- classpath is set.
- * <pvcs> used wrong switch for retrieving revisions by label.
- Bugzilla Report 36359.
- * <sshexec> closed System.out, disabling output on second and subsequent
- invocations. Bugzilla report 36302.
- * <cvschangelog> was crashing with CVS versions >= 1.12.x due to change in
- the date format. Bugzilla report 30962.
- * The same IntrospectionHelper instance was continuously added as a listener
- to project. Bugzilla report 37184.
- * FileUtils.toURI() was not encoding non-ASCII characters to ASCII,
- causing impossibility to process XML entities referenced by XML
- documents in non ASCII paths. Bugzilla report 37348.
- * > 1 ssh invocations to a given host would fail. Bugzilla report 36207.
- * EmailTask was eating SMTP error messages. Bugzilla report 37547.
- * PropertySet API setMapper(...) didn't properly set up the Mapper.
- Bugzilla report 37760.
- * Proper return code for ant.bat. Bugzilla report 13655.
- * Project not set on ChainReaderHelpers used by the Redirector.
- Bugzilla report 37958.
- * Copy task would fail on locked (or otherwise uncopyable) files even if
- failonerror set to false. Bugzilla report 38175.
- * <junit> task did not print all the Test names when using forkmode='once'.
- Bugzilla report 37426.
- * <available> could leak resources, Bugzilla Report 38260.
- * Redirector called Thread.sleep in a synchronized block. Bugzilla
- report 37767.
- * CCUnlock's objselect attribute could exhibit unpredictable behavior;
- standardized improperly included objselect and objsel property accessors to
- delegate to the inherited objSelect property accessor. Bugzilla report 37766.
- * <unzip> and <untar> now correctly merge multiple nested patternsets.
- Bugzilla Report 38973.
- * On case-insensitive filesystems, a <move> to change filename case
- erroneously deleted the "destination" file before attempting to rename
- the source file. Bugzilla 37701.
- * <scp> can now handle uris with @s other than the final one denoting the
- domain. Bugzilla 38082.
- * If the class invoked by the <java> task threw a ClassNotFoundException,
- this was misinterpreted as the specified class itself not being found.
- * <echoproperties> setPrefix javadoc claimed null or empty prefix would be
- ignored; instead an error was thrown. Bugzilla report 39954.
- * <get> would fetch files that were up to date, because it used > in a
- remote/local timestamp comparison, not >=. Bugzilla 35607.
- * <xslt> passes the current file (name + directory) to the
- stylesheet/transformation. xsl-parameter name is configurable.
- Bugzilla report 21042.
- * The <zip> API allowed creation of directories in file-only archives; a
- habitual offender was the subclassed <jar>, which included META-INF/ in
- the destination file regardless of whether filesonly was set to true.
- * <rmic> has a new adapter, xnew, to use the -XNew back end on java1.5+.
- By forking rmic, this works on java1.6+. Bugzilla report 38732.
- * Copy of UnknownElement in macroinstance was not recursive.
- Bugzilla report 40238.
- * Mixing of add and addConfigured methods in Mapper/ChainedMapper
- causes incorrect chaining. Bugzilla report 40228.
- Other changes:
- --------------
- * Warn user when a reference in the form "${refid}" cannot be resolved as this
- is a sign they probably meant "refid" (misuse of property expansion syntax).
- * Add dtd to javadoc for junit.
- Bugzilla 40754.
- * Add quiet attribute to loadfile/resource.
- Bugzilla 38249.
- * Make Locator#fromURI also append the drive letter when running under Windows
- with JDK 1.3 or 1.2.
- * Do not uppercase the drive letters systematically in FileUtils#normalize.
- * Java 5 enumerations may now be used as values in XML attributes in place of
- EnumeratedAttribute. Bugzilla 41058.
- * Create a pom file for ant-testutil and add ant-testutil.jar to the ant
- distribution. Bugzilla 40980.
- * Roll back automatic proxy enabling on Java 1.5. It broke things like
- Oracle JDBC drivers, and Ant itself on IBM's JVM on AIX, and didn't
- seem to work to well the rest of the time.
- To enable the feature, use the -autoproxy command line option.
- * Upgraded XML API and parser to Xerces 2.8.1
- * A code review of some threaded logic has tightened up the synchronization
- of Watchdog, ExecuteWatchdog and ExecuteJava, which could reduce the occurrence
- of race conditions here, especially on Java1.5+.
- * Allow broken reference build files. The defer reference processing would
- break too many files - so allow them with a warning.
- * Removed dependency on sun.misc.UUEncoder for UUMailer.
- * Added regex attribute to the echoproperties task.
- Bugzilla 40019.
- * <war> task now allows you to omit the web.xml file. as this is optional
- in the servlet 2.5 and Java EE 5 APIs. set needxmlfile="false" to
- avoid a missing web.xml file from halting the build.
- * Diagnostics catches and logs security exceptions when accessing system properties.
- * <javadoc> useexternalfile now applies to all command line arguments
- of javadoc. Bugzilla report 40852.
- * javadoc/tag@description is now set to the name if description is
- not specified. Bugzill report 32927.
- * Some performance improvements, including Bugzilla report 25778.
- * Add <matches> condition. Bugzilla report 28883.
- * Extending JAR-Task for SPI. Bugzilla report 31520.
- * Added <tokens> resource collection for convenient creation of string
- resources from other resources' content. Inspired by Bugzilla 40504.
- * Added <compare> resource selector to select resources based on the
- results of their comparison to other resources.
- * Added outputtoformatters attribute to <junit> to allow suppression
- of noisey tests. Bugzilla report 12817.
- * Log level of message 'Overriding previous definition of reference to'
- set to Verbose. Bugzilla report 17240.
- * Added setbeans attribute to <script> to allow <script>'s to be
- run without referencing all references.
- Bugzilla report 37688.
- * Added classpath attribute and nested element to <script> to allow
- the language jars to be specified in the build script.
- Bugzilla report 29676.
- * Trim the driver attribute on the <sql> task. Bugzilla report 21228.
- * Allow (jar) files as well as directories to be given to jdepend.
- Bugzilla report 28865.
- * Convert SplashTask to use NOT sun internal classes.
- Bugzilla report 35619.
- * Made PatternSet#hasPatterns public to allow custom filesets access.
- Bugzilla report 36772.
- * Added searchparents attribute to <available>. Bugzilla report 39549.
- * Tasks that don't extend Ant's Task class will now get the build file
- location reflected into a method of the signature void setLocation(Location)
- - if such a method exists.
- * Remove needless synchronization in DirectoryScanner.
- Bugzilla report 40237.
- * Improved recursion detection for lines with multiple matches of same token
- on a single line. Bugzilla report 38456.
- * Task will now log correctly even if no project is set.
- Bugzilla report 38458.
- * Use alternative names for the command line arguments in javac. Bugzilla
- Report 37546.
- * The Reference class now has a project field that will get
- used (if set) in preference to the passed in project, when
- dereferencing the reference. Bugzilla Report 25777.
- * On DOS and Netware, filenames beginning with a drive letter
- and followed by a colon but with no directory separator following
- the colon are no longer (incorrectly) accepted as absolute pathnames
- by FileUtils.normalize() and FileUtils.isAbsolutePath(). Netware
- volumes can still be specified without an intervening separator.
- UNC pathnames on Windows must include a server and share name, i.e.
- "\\a\b" to be considered valid absolute paths.
- * A bug in SQLExec would prevent the execution of trailing,
- non-semicolon-delimited statements. Bugzilla Report 37764.
- * InputHandler implementations may now call InputRequest.getDefaultValue()
- if they wish. The default handler uses this also. Bugzilla report 28621.
- * Took in bugzilla report 39320, "Simple code cleanups"
- * Improve compatibility with GNU Classpath and java versions prior to
- 1.5. Bugzilla 39027.
- * ${ant.core.lib} may now be used to refer to the library containing the
- Ant classes, for instance useful when compiling tasks.
- * Minor performance improvements Bugzilla report 37777
- * New task <manifestclasspath> converts a path into a property
- suitable as the value for a manifest's Class-Path attribute.
- * Fixed references to obsoleted CVS web site. Bugzilla Report 36854.
- * Log fine-grained events at verbose level from JUnit. Bugzilla report 31885.
- * <WsdlToDotnet> and <style> are now deprecated in favor of <wsdltodotnet> and
- <xslt>, respectively. Bugzilla report 25832.
- * <echoproperties> now (alphanumerically) sorts the property list
- before echoing. Bugzilla report 18976.
- * A new base class DispatchTask has been added to facilitate elegant
- creation of tasks with multiple actions.
- * Major revision of <wsdltodotnet>. Supports mono wsdl and the microsoft
- wsdl run on mono, as well as most of the .NET WSE2.0 options. Extra
- schemas (files or urls) can be named in the <schema> element.
- Compilers can be selected using the compiler attribute, which defaults
- to "microsoft" on windows, and "mono" on everything else.
- * It is now possible to specify the pattern created/parsed by <checksum>.
- Bugzilla Report 16539.
- * Added a new "failall" value for the onerror attribute of <typedef>.
- Bugzilla report 31685.
- * unzip/unwar/unjar/untar now supports a nested mapper, which lets you unzip
- in useful ways.
- * Junit task -- display suite first.
- Bugzilla report 31962.
- * Added isSigned condition and signedselector selector
- Bugzilla report 32126.
- * Added preserveLastModified attribute to signjar task.
- Bugzilla report 30987.
- * Added <scriptcondition> condition, for inline scripted conditions
- * Added <xor> condition for exclusive-or combining of nested conditions.
- * Added <scriptselector> selector for scripted file selection
- * ant -diagnostics lists contents of ${user.home}/.ant/lib , and
- checks that the java.io.tmpdir directory exists and is writeable.
- * mail task accepts nested header element. Bugzilla report 24713.
- * zip/jar/war/ear supports level attribute for deflate compression level.
- Bugzilla report 25513.
- * Added loginputstring attribute to the redirector type.
- * Tighten security by sending storepass and keypass to signjar
- via the input stream of the forked process.
- * New task <schemavalidate> extends <xmlvalidate> with extra support
- for XML Schema (XSD) files.
- * <fixcrlf> supports a file attribute for easy fixup of a single file.
- * New condition <parsersupports> which can look for XML parser feature or
- property support in the parser Ant is using.
- * fixcrlf can be used in a filterchain.
- * <sync> has a new nested element <preserveInTarget> that can be used
- to protect extra-content in the target directory. Bugzilla Report
- 21832.
- * <signjar> now supports:
- -nested filesets at the same time as the jar attribute
- -a destDir attribute with the appropriate dependency logic, which
- can be used with the jar attribute or nested filesets
- -a mapper to permit filename remapping on signing
- -tsaurl and tsacert attributes for timestamped JAR signing
- -nested <sysproperty> elements, which can be used for proxy setup
- and the like
- * The linecontains and linecontainsregexp filterreaders now support a
- negate attribute to select lines -not- containing specified text.
- Bugzilla Report 34374.
- * <os> condition adds "winnt" as a family which can be tested. This is
- all windows platforms other than the Win9x line or Windows CE.
- * <exec> (and hence, <apply> and any other derived classes) have an OsFamily
- attribute, which can restrict execution to a single OS family.
- * Added "backtrace" attribute to macrodef. Bugzilla report 27219.
- * Ant main provides some diagnostics if it ever sees a -cp or -lib option,
- as this is indicative of a script mismatch. Bugzilla report 34860
- * <junitreport> prints a special message if supplied an empty XML File. This
- can be caused by the test JVM exiting during a test, either via a
- System.exit() call or a JVM crash.
- * Project name is now used for *all* targets so one can write consistent import
- build files. Bugzilla report 28444.
- * New condition <typefound> 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.
- * Check for 1.5.* Ant main class. (weblogic.jar in classpath reports)
- * New condition <isfailure> that tests the return-code of an executable. This
- contains platform-specific logic and is better than comparing the result with
- "0".
- * Added initial support for Resource Collections, including the
- resourcecount task.
- * property attribute of pathconvert is now optional. If omitted the
- result will be written to the log.
- * New mapper, <scriptmapper>, supports scripted mapping of source files/strings
- to destination strings.
- * Add the echoxml task. This will echo nested XML to a file, with
- the normal <?xml ?> processor instruction. UTF-8 encoding only; no-namespace
- support.
- * Try to make subprojects of custom Project subclasses instances of the
- same type. Bugzilla report 17901.
- * <ssh> and <scp> support keyboard-interactive authentication now.
- * <javadoc> now supports -breakiterator for custom doclets if Ant is
- running on JSE 5.0 or higher. Bugzilla Report: 34580.
- * New logger, TimestampedLogger, that prints the wall time that a build
- finished/failed. Use with
- -logger org.apache.tools.ant.listener.TimestampedLogger
- * <junitreport> now generates pages alltests-errors.html and
- alltests-fails.html, that list only the errors and failures, respectively.
- Bugzilla Report: 36226
- * New task <makeurl> that can turn a file reference into an absolute file://
- url; and nested filesets/paths into a (space, comma, whatever) separated
- list of URLs. Useful for RMI classpath setup, amongst other things.
- * <xslt> now accepts nested FileNameMappers e.g. <globmapper>.
- Bugzilla report 37604.
- * New task <loadresource> that accompanies <loadfile> for non file resources.
- * <echo> now supports an encoding when saving to a file.
- * New GreedyInputHandler added.
- * Add textfile attribute to the <filesmatch> condition. When true, the text
- contents of the two files are compared, ignoring line ending differences.
- * New <resourcesmatch> condition.
- * Added the onmissingfiltersfile attribute to filterset. Bugzilla report 19845.
- * Added the inline handler element to the input task.
- * <sql> supports property expansion if you set the expandProperties
- attribute. By default it does not expand properties, something we
- dare not change for fear of breaking complex SQL operations in
- existing files.
- * <javadoc>'s packagenames attribute is now optional and defaults to "*".
- * <javac>'s source and target attributes as well as <javadoc>'s source
- attribute will read default values from the properties
- ant.build.javac.source and ant.build.javac.target.
- * Handling of ' ', '#' in CLASSPATH and '#' in -lib (cannot use ' '
- in -lib on UNIX at the moment). Bugzilla Report 39295.
- * <scp> now optionally supports the sftp protocol. Bugzilla Report 39373.
- * Resources can now be used to indicate the location of the stylesheet to use
- in <xslt>. Bugzilla Report 39407.
- * New <antversion> condition. Bugzilla report 32804.
- * ReplaceTokens should allow properties files. Bugzilla report 39688.
- * FTP Account could not be specified in ant FTP task. Bugzilla report 39720.
- * Minor performance updates. Bugzilla report 39565.
- * New deleteonexit attribute for the <tempfile> task. Bugzilla report 39842.
- Remember that the exit of the JVM can be a long time coming,
- especially under an IDE. Don't rely on this being called.
- * <scriptdef>-created scripts have support for nested text. All text
- passed to a scripted task can be accessed via self.text.
- * <fixcrlf> now supports an outputencoding attribute. Bugzilla report 39697.
- * <junitreport> now supports nested XSL parameters. Bugzilla report 39708.
- * <javacc> has a jdkversion attribute to pass the desired JDK version
- down to javacc. Bugzilla report 38715.
- * <cvs> prints passfile info at -verbose level instead of -info. Bugzilla
- report 35268
- * When <javac> can't find the compiler class, it prints out java.home for
- immediate diagnostics
- * Ant launcher now supports a -main attribute so that you can specify
- an extension class to the built in org.apache.tools.ant.Main
- class. This class must implement the interface AntMain
- Changes from Ant 1.6.4 to Ant 1.6.5
- ===================================
- Changes that could break older environments:
- --------------------------------------------
- Fixed bugs:
- -----------
- * <move> was unable to replace existing files or write into
- existing directories. Bugzilla report 34962.
- * <macrodef> with redefined default values was incorrect. (Fix for
- 31215 had a bug). Bugzilla report 35109.
- * <javadoc> will convert backslashes to forwardslashes when generating file
- list by useexternalfile. Bugzilla report 27814.
- Changes from Ant 1.6.3 to Ant 1.6.4
- ===================================
- Changes that could break older environments:
- --------------------------------------------
- * <ftp> task has had a number of changes. Uptodate calculation previously
- did not call a file uptodate if the source timestamp and the destination
- timestamp were equal. Bugzilla report 34941. Any script that attempted
- to compensate for this by using the timediffmillis attribute might need
- to be tweaked.
- Fixed bugs:
- -----------
- * Sun javah failed with java.lang.NoClassDefFoundError.
- Bugzilla report 34681.
- * DirectoryScanner.slowScan() was broken. Bugzilla report 34722.
- * DirectoryScanner.scan() could throw a NullPointerException on
- case-insensitive filesystems (read Windows or MacOS X).
- * Get w/authentication failed with ArrayOutOfBoundsExceptions.
- Bugzilla report 34734.
- * Granularity attribute for <sync> task was undocumented.
- Bugzilla report 34871.
- * <unzip> and <untar> could leave file handles open on invalid
- archives. Bugzilla report 34893.
- * propertyset threw NPE with nested, mapped propertysets.
- Other changes:
- --------------
- * AntXMLContext.setCurrentTargets() is now public. Bugzilla report 34680.
- 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
- * <junit> 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.
- * 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:
- --------------
- * <javadoc> can now take an attribute 'executable'. Bugzilla report 30606.
- * New attribute ignorecontents for <different> 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 <move> to rename a directory.
- Bugzilla Report 22863.
- * Add xmlcatalog nested element to XmlProperty. Bugzilla report 27053.
- * New attribute alwayslog for <redirector> type.
- * Added <target> nested elements to <ant> and <antcall> 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.
- * <rmic> now also supports Kaffe's rmic version shipping with Kaffe
- 1.1.2 and above.
- * added casesensitive attribute to <globmapper> and <regexpmapper>
- Bugzilla report 16686
- * added handledirsep attribute to <globmapper> and <regexpmapper>
- Bugzilla report 32487
- * added a new mapper <filtermapper>
- * 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.
- * <apply> 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 <javac> from user.dir to java.io.tmpdir.
- * Added searchpath attribute to <exec> for searching path variable(s)
- when resolveexecutable = true.
- * Added revision and userid attributes to <pvcs> 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.
- * <native2ascii> and <javah> 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 <subant>. 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.
- * <rexec> with a single command should now work with unusal login
- dialogs without special read/write pairs. Bugzilla Report 26632.
- * <csc>'s extraoptions can now contain multiple arguments.
- Bugzilla Report 23599.
- * <macrodef> 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.
- * <javadoc> 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.
- * <rpm> has new attributes failonerror and quiet.
- * Added two tutorials
- - beginner: introduction into Ant
- - task developers: using path, fileset etc
- * a number of new attributes that allow the user to handle non-standard
- server listing formats and time zone differences have been added in
- the <ftp> task.
- Fixed bugs:
- -----------
- * Do not pass on ThreadDeath when halting <java fork="false">. Bugzilla
- 32941.
- * Killing a thread running <java fork="true"> (e.g. from an IDE) would
- not stop the forked process. Bugzilla 31928.
- * Programs run with <java fork="true"> can now accept standard input
- from the Ant console. (Programs run with <java fork="false"> could
- already do so.) Bugzilla 24918.
- * AbstractCvsTask prematurely closed its outputStream and errorStream.
- Bugzilla 30097.
- * Impossible to use implicit classpath for <taskdef>
- 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.
- * make sure that Zip and its derivatives call the createEmptyZip method when
- there are no resources to zip/jar/...
- * 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.
- * ant.bat was missing runAntNoClasspath label for goto.
- Bugzilla 34510.
- * 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 <cvsversion> 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
- * <scp> using <fileset> didn't work with OpenSSH 3.9 and later.
- Bugzilla report 31939
- * <setproxy> 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 <javac> 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.
- * <apply> was broken with classfilesets. Bugzilla Report 30567.
- * <available> 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
- <exec>, <apply>, or <java> tasks was always logged to System.out
- instead of to the managing Task.
- * <telnet> and <rexec> would try to disconnect from servers they never
- connetced to, potentially leading to exceptions in commons-net.
- Bugzilla Report 33618.
- * <zip> would drop files matched by defaultexcludes during updates.
- Bugzilla Report 33412.
- * <zip> 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 <presetdef> tries to configure a task that
- cannot be instantiated. Bugzilla Report 33689.
- * <javac debug="false"> 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.
- * <cab> 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.
- * TarInputStream#read() wasn't implemented correctly. Bugzilla Report
- 34097.
- * <xslt> 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 <formatter>s. Bugzilla Report 32973.
- * The refid attribute of the I/O redirector was not functional.
- 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.
- * <junitreport> 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.
- 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.
- * 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.
- * <apply> didn't compare timestamps of source and targetfiles when
- using a nested <filelist>. 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.
- * <java> 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 <parallel> was broken. Bugzilla Report 28122.
- * If <javac> uses gcj and any of the nested <compilerarg>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.
- * <import optional="false"> and <import optional="true">
- behaved identically.
- * <xslt> now sets the context classloader if you've specified a nested
- <classpath>. Bugzilla Report 24802.
- * <zip> and friends would delete the original file when trying to update
- a read-only archive. Bugzilla Report 28419.
- * <junit> and <assertions> 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 <exec spawn="true">.
- Bugzilla reports 23893/26852.
- * JDependTask did not close an output file. Bugzilla Report 28557.
- * Using <macrodef> could break XmlLogger. Bugzilla Report 28993.
- * <genkey> no longer requires keytool to be in your PATH. Bugzilla
- Report 29382.
- * <symlink> could create cyclic links. Bugzilla Report 25181.
- * <zip whenempty="skip"> didn't work in a common situation. Bugzilla
- Report 22865.
- * <scp> now properly handles remote files and directories with spaces
- in their names. Bugzilla Report 26097.
- * <scp> now has (local|remote)tofile attributes to rename files on the
- fly. Bugzilla Report 26758.
- * <telnet> and <rexec> didn't close the session. Bugzilla Report 25935.
- * <subant> and XmlLogger didn't play nicley together.
- Other changes:
- --------------
- * doc fix concerning the dependencies of the ftp task
- Bugzilla Report 29334.
- * <xmlvalidate> 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.
- * <pathconvert> now accepts nested <mapper>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.
- * <scp> 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.
- * <sshexec> now also captures stderr output. Bugzilla Report 28349.
- * <xslt> now supports a nested <mapper>. Bugzilla Report 11249.
- * <touch> has filelist support.
- * <nice> task lets you set the priority of the current thread; non-forking
- <java> code will inherit this priority in their main thread.
- * New attribute "negate" on <propertyset> to invert selection criteria.
- * Target now supports a Location member. Bugzilla Report 28599.
- * New "pattern" attribute for <date> selector.
- * <junit> 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.
- * <jar> can now optionally create an index for jars different than the
- one it currently builds as well. See the new <indexjars> 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 <hr> from javah.html. Bugzilla Report 28995.
- * Ignore built distributions. Bugzilla Report 28997.
- * A new roundup attribute on <zip> 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 <concat>. Bugzilla Report 26312.
- * Added DynamicConfiguratorNS, an namespace aware version of
- DynamicConfigurator. Bugzilla Report 28436.
- * Add implicit nested element to <macrodef>. Bugzilla Report 25633.
- * Add deleteonexit attribute to <delete>.
- * Added Target.getIf/Unless(). Bugzilla Report 29320.
- * <fail> has a status attribute that can be used to pass an exit
- status back to the command line.
- * <fail> accepts a nested <condition>.
- * <loadproperties> supports loading from a resource.
- Bugzilla Report 28340.
- * Nested file mappers and a container mapper implementation have been
- introduced. Additionally, the <mapper> element now accepts "defined"
- nested FileNameMapper implementations directly, allowing a usage
- comparable to those of <condition>, <filter>, and <selector>.
- * New <redirector> type introduced to provide extreme I/O flexibility.
- Initial support for <exec>, <apply>, and <java> tasks.
- * <apply> has a new ignoremissing attribute (default true for BC)
- which will allow nonexistent files specified via <filelist>s to
- be passed to the executable. Bugzilla Report 29585.
- * <junitreport> now also works with Xalan XSLTC and/or JDK 1.5.
- Bugzilla Report 27541.
- * <jspc> 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 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).
- * <whichresource> 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.
- * <java> ignored the append attribute, Bugzilla Report 26137.
- * The gcj compiler adapter for <javac> 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.
- * <splash> 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.
- * <fixcrlf> has a new attribute - fixlast. Bugzilla Report 23262.
- * <p4submit> 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.
- * added nested text support to <macrodef>
- * 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 <javac> task.
- * created new task <cvsversion>
- * added support for branch logging via the tag attribute in <cvschangelog>
- 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 <script> task now requires Apache BSF instead of the older IBM
- version. See <http://jakarta.apache.org/bsf/>
- * <xmlproperty> will no longer fail if the file to be loaded doesn't exist.
- * XML namespaces are now enabled in the XML parser, meaning XML namespace
- declarations no longer cause errors. However task names containing colons
- will cause errors unless there is a corresponding namespace uri.
- * The <ftp> and <telnet> tasks now require Jakarta Commons Net instead
- of the older ORO Netcomponents version. See
- <http://jakarta.apache.org/commons/net/index.html>.
- * <input> will no longer prompt the user and wait for input if the
- addproperty attribute is set to a property that has already been
- defined in the project. If you rely on the task waiting for input,
- don't use the addproperty attribute.
- * The Class-Path attribute in manifests will no longer merge the
- entries of all manifests found, but will be treated like all other
- manifest attributes - the most recent attribute(s) will be used.
- * New Launch mechanism implemented. This moves some functionality from
- the batch files / shell scripts into Java. This removes environment
- limitations, for command issues, directory depth issues on Windows. Also
- allows a per-user library location to be used if the main Ant install
- is locked down.
- * The Entry nested element of PropertyFile will not any more have its value
- attribute (actually increment) overwritten with the new value of the entry
- after execution.
- * Output stored from a <java> or <exec> task is now exactly as generated. No
- conversion to platform end-of-line characters is performed.
- * <translate> will now preserve line endings.
- * <ftp> followsymlinks="false" in nested fileset definitions is explicitly
- required in order to exclude remote symbolic links (when doing a get, chmod,
- delete, rmdir).
- * The values of the Copy#fileCopyMap variable has changed from String to
- String[]. (In java 1.5 terms it was Hashtable<String, String> and
- is now Hashtable<String, String[]>). This will affect third party code
- that extend Copy and override Copy#doFileOperations.
- * <loadproperties> didn't expand properties while <property file="..."/>
- does, so they were not equivalent. This has been fixed, which means
- that propetries may get expanded twice if you use an
- <expandproperties> filterreader. Bugzilla Report 17782.
- * User defined tasks and typedefs are now handled internally in the
- same way as predefined tasks and typedefs. Also tasks and typedefs
- are resolved at a later stage. This causes some
- differences especially for user defined task containers.
- * <checksum> log message "Calculating checksum ..." has been degraded
- from INFO to VERBOSE.
- Fixed bugs:
- -----------
- * Filter readers were not handling line endings properly. Bugzilla
- Report 18476.
- * Filtersets were also not handling line endings properly.
- * Expand tasks did not behave as expected with PatternSets.
- * <property environment=... /> now works on OS/400.
- * <cab> could hang listcab on large <fileset>s.
- * The starteam stcheckout, stcheckin tasks now correctly compute
- status of files against whatever local tree they are run against
- and, optionally, will not process a file if it is current.
- Previously you had to process everything unless you ran against the
- default folder which wasn't the normal use-case for ant-starteam.
- The stlist task now similarly displays that status correctly making
- it a more generally useful tool.
- * entity includes would cause exceptions if path names included spaces.
- * addConfiguredXXX would not work for TaskAdapter wrapped tasks
- * Fix <ilasm> outputfile testing so that the output file does not need
- to exist beforehand.
- * Ant will now exit with a return code of 1 if it encounters problems
- with the command line arguments.
- * ClassLoader creation changes to use a factory method in Project. A new
- class AntClassLoader2 implemented for 1.2+ specific features including
- Package information and addition of classes specified in the Class-Path
- element of a Jar's manifest.
- * It is now possible in <exec> to resolve the executable to a project
- basedir or execution dir relative executable. The resolveExecutable
- must be used to pick up such executables.
- * splash screen wouldn't disappear when build was finished.
- * <exec> output and error streams can now be redirected independently
- to either a property or a file (or both)
- * TarEntry's File-arg constructor would fail with a
- StringIndexOutOfBoundsException on all OSes where os.name is shorter
- than seven characters. Bugzilla Report 18105.
- * <copy> and <move>'s failonerror didn't apply to filesets pointing to
- non-existent directories. Bugzilla Report 18414.
- * The <stripjavacomments> filter sometimes removed parts of string
- constants. Bugzilla Report 17441.
- * <antlr> will now recompile your grammar if the supergrammar has
- changed. Bugzilla Report 12691.
- * <property env> will now work on Unices with /bin/env instead of
- /usr/bin/env. Bugzilla Report 17642.
- * <jar index="on"> could include multiple index lists. Bugzilla 10262.
- * The index created by <jar> didn't conform to the spec as it didn't
- include the top-level entries. Bugzilla Report 16972.
- * <tar> and <zip> didn't honor the defaultexcludes attribute for the
- implicit fileset. Bugzilla Report 18637.
- * The <replacetokens> filter would throw an exception if the token's
- value was an empty string. Bugzilla Report 18625.
- * Perforce tasks relying on output from the server such as <p4change>
- and <p4label> were hanging. Bugzilla Reports 18129 and 18956.
- * Improve exception and logging behavior of Perforce tasks.
- Bugzilla report 18154.
- * build.sh install had a problem on cygwin (with REALANTHOME).
- Bugzilla Report 17257
- * <replaceregexp> didn't work for multi-byte encodings if byline was false.
- Bugzilla Report 19187.
- * <replaceregexp> was altering unnecessarily the timestamp of the directories
- containing the files to process
- Bugzilla Report 22541.
- * file names that include spaces need to be quoted inside the @argfile
- argument using forked <javac> and (all JDKS). Bugzilla Report 10499.
- NB : a first correction was only introducing quotes for JDK 1.4
- It has been changed to quote for all external compilers when paths
- contain spaces.
- Also the backslashes need to be converted to forward slashes
- Bugzilla Report 17683.
- * Setting filesonly to true in <zip> and related tasks would cause the
- archives to be always recreated. Bugzilla Report 19449.
- * file names that include spaces need to be quoted inside the @argfile
- argument using <javadoc> and JDK 1.4. Bugzilla Report 16871.
- * <junit> didn't work with custom formatters that were only available
- on the user specified classpath when a timeout occurred. Bugzilla
- Report 19953.
- * <different> selector : make ignoreFileTimes effectively default to true
- and fix a bug in the comparison of timestamps. Bugzilla Report 20205.
- * <different> selector can now be nested directly under a fileset
- Bugzilla Report 20220.
- * <cvstagdiff> had a problem with "dd-MM-yy hh:mm:ss" formats
- Bugzilla Report 15995.
- * <cvstagdiff> cvsroot and package attributes added to the root
- element tagdiff of the xml output
- Bugzilla Report 16081.
- * <cvstagdiff> had a problem with aliased modules and with requests for
- multiple modules. Bugzilla Reports 21373 and 22877.
- * <cvstagdiff> could not parse properly the revision number of new files with
- CVS 1.11.9 or higher. Bugzilla Report 24406.
- * <fixcrlf> make fixcrlf create its temporary files in the default directory
- of FileUtils#createTempFile instead of the destination dir of fixcrlf.
- Bugzilla Report 20870.
- * <ejbjar> implementation for Borland.
- Prevent the task from being blocked by error messages coming from java2iiop.
- Bugzilla Report 19385.
- * <unzip>'s and <untar>'s nested patternsets didn't work as documented
- when the pattern ended in a slash or backslash. Bugzilla Report 20969.
- * <fixcrlf> will now create the parent directories for the destination
- files if necessary. Bugzilla Report 20840.
- * <xmlproperty> now handles CDATA sections. BugZilla Report 17195
- * <translate> now translate tokens that are placed close together.
- Bugzilla Report 17297
- * Nested websphere element for ejbjar does not support spaces in file name.
- Bugzilla Report 21298
- * Don't multiply Class-Path attributes when updating jars. Bugzilla
- Report 21170.
- * Do not overwrite the value (increment) attribute of PropertyFile nested
- Entry element. Bugzilla Report 21505.
- * Prevent sysproperties with no key or no value from being added in <junit>.
- Bugzilla Report 21684.
- * Allow references to be properly inherited via antcall
- Bugzilla Report 21724.
- * ftp chmod failed when the remote system was UNIX and local system Windows
- Bugzilla Report 21865.
- * ftp put with chmod failed when the remote system was UNIX and local system
- Windows. Bugzilla Report 23143.
- * ftp did not set the ascii mode explicitly, causing problems with ftp servers
- having binary as default
- * ftp was not able to download files when they were pointed to by symbolic
- links. Bugzilla Report 14063.
- * ftp is able to download also directories pointed to by symbolic links.
- * replace would change \r\n into \r\r\n under Windows.
- * junitreport with frames did not display a link for classes without a package
- or in the top package.
- Bugzilla Report 21915.
- * Project.toBoolean(String) now handles null as argument and does not throw a
- NullPointerException any more.
- * The socket condition will now close the socket created to test.
- Bugzilla Report 23040.
- * <junit includeantruntime="true" fork="true"> replaced the CLASSPATH instead
- of adding to it. Bugzilla Report 14971.
- * <splash> could fail on JVMs that use null to indicate the system classloader.
- Bugzilla Report 23320.
- * <xmlcatalog>s only worked when defined inside of tasks. Bugzilla
- Report 20965.
- * <csc> and siblings (<vbc> <jsharpc>) handle large filesets by
- automatic use of response files. Bugzilla report #19630
- Other changes:
- --------------
- * Shipped XML parser is now Xerces 2.6.0
- * All tasks can be used outside of <target>s. Note that some tasks
- will not work at all outside of targets as they would cause infinite
- loops (<antcall> as well as <ant> and <subant> if they invoke the
- current build file).
- * Six new Clearcase tasks added.
- * A new filter reader namely tokenfilter has been added. Bugzilla
- Report 18312.
- * A new attribute named skip is added to the TailFilter and
- HeadFilter filter readers.
- * The filesetmanifest attribute of <jar> has been reenabled.
- * The start and end tokens for <translate> may now be longer than a
- single character.
- * <setproxy> lets you set the username and password for proxies that
- want authentication
- * <loadproperties> has a new encoding attribute.
- * <echoproperties> can now create XML output.
- * <echoproperties> has a new srcfile attribute that can make it read
- properties files and output them instead of Ant's properties.
- * <filterset> will now resolve filters recursively.
- * <input> has a new attribute that allows you to specify a default value.
- * Added <image> task (requires JAI).
- * <image> task has now proportions attribute in the <scale/> nested element
- instead of keepproportions (bringing in more functionality)
- * New condition <isreference>
- * <ftp> now has a preservelastmodified attribute to preserve the
- timestamp of a downloaded file.
- * new rmdir action for <ftp> that removes directories from a fileset.
- * <ftp> has attributes timediffauto and timediffmillis to use together
- with the newer attribute to tell ant to take into account a time difference
- between client and remote side.
- Bugzilla Report 19358.
- * <ftp> has been optimized to go directly to the include patterns.
- This reduces scanning time under UNIX when followsymlinks="true"
- and casesensitive="true" (the default)
- Bugzilla Report 20103.
- * The SOS and VSS tasks will no longer unconditionally prepend a $ to
- vsspath or projectpath.
- * OS/400 now gets detected by the os condition.
- * <arg> has a new attribute pathref that can be used to reference
- previously defined paths.
- * <xmlproperty> has been improved, you can now expand ${properties},
- define ids or paths and use Ant's location magic for filename resolutions
- in the XML file.
- * <xmlcatalog> will now support external catalogs according to the
- OASIS "Open Catalog" standard - if resolver.jar (newer than version
- 1.0) from Apache's xml-commons is in your CLASSPATH.
- * Starteam tasks now have support for revision labels and build labels.
- Checkouts now have the option of using repository timestamps, instead
- of current.
- * new task <symlink> that creates and maintains symbolic links.
- * new tasks <chown> and <chgrp> which are wrappers of the Unix commands.
- * new task <attrib> to change file attributes on Windows systems.
- * <style> has a new attribute reloadstylesheet to work around a
- bug in widespread Xalan versions.
- * <tarfileset> has a new dirmode attribute to specify the permissions
- for directories.
- * <fixcrlf>'s eol attribute now also understands "mac", "unix" and "dos".
- * <classfileset> now picks up dependencies of the form MyClass.class. This
- works for the code generated by the Sun java compiler. It may not work for
- all compilers.
- * a new attribute "globalopts" can be added to all Perforce tasks.
- You can put in it all the strings described by p4 help usage. Refer to
- the docs for more information.
- * new Perforce tasks <p4integrate> , <p4resolve>, and <p4labelsync>
- * <p4submit> will change the property p4.change if the Perforce server
- renumbers the change list.
- It will set the property p4.needsresolve if the submit fails,
- and the message says that file(s) need to be resolved.
- * <replaceregexp> now has an optional encoding attribute to support
- replacing in files that are in a different encoding than the
- platform's default.
- * The <exec> task may now have its input redirected from either a file
- or a string from the build file. The error output can be separated
- to a different file when outut is redirected. standard error may be
- logged to the Ant log when redirecting output to a file
- * The <java> task also supports the input redirection and separate
- error streams introduced to the <exec> task. In addition, it is now
- possible to save the output into a property for use within the build
- file as was possible with <exec> in Ant 1.5
- * The <javadoc> task <tag> subelement has been enhanced to allow files
- with tag mappings to be used.
- * New tasks: <scp> supports file transfers, <sshexec> executes a
- command over SSH. They require jsch, a BSD licensed SSH library that
- can be found at http://www.jcraft.com/jsch/index.html
- * New filterreader <escapeunicode/>.
- * Support for HP's NonStop Kernel (Tandem) OS has been added.
- * <cab>'s basedir attribute is now optional if you specify nested
- filesets. Bugzilla Report 18046.
- * New task <sync> that synchronizes two directory trees.
- * <apply> has new forwardslash attribute that can force filenames to
- use forward slashes (/) as file separators even on platforms with a
- different separator. This is useful if you want to run certain
- ported Unix tools.
- * Copy has a new outputencoding attribute that can be used to change
- the encoding while copying files. Bugzilla Report 18217.
- * The xml formatter for JUnit will now honor test case names set with
- setName. Bugzilla Report 17040.
- * JUnit now has an attribute reloading, which, when set to false,
- makes the task reuse the same class loader for a series of tests.
- * <concat> now supports filtering and can check timestamps before
- overriding a file. Bugzilla Report 18166.
- * <junit> has a new attribute tempdir that controls the placement of
- temporary files. Bugzilla Report 15454.
- * <jdepend> now supports a new nested element <classespath> which is
- the same as <sourcespath> but point to compiled classes (the
- preferred mode of operation for JDepend > 2.5). Additionally, nested
- <exclude> elements can be used to exclude certain packages from
- being parsed. Bugzilla Report 17134.
- * The JProbe tasks now also work with JProbe 4.x. Bugzilla Report 14849.
- * <javacc> and <jjtree> will now autodetect JavaCC 3.x and can use it.
- * <sql> has a new attribute to control escape processing.
- * <sql> is able to display properly several resultsets if you are
- running a compound sql statement. Bugzilla Report 21594.
- * A new <containsregexp> selector has been added, that selects files
- if their content matches a certain regular expression.
- * <antlr>'s debug attribute has been enabled. Bugzilla Report 19051.
- * <mail> has a new attribute charset. Bugzilla Report 15434.
- * <mail> has new attributes user and password for SMTP auth.
- maillogger can also use this.
- The implementation only works with JavaMail (encoding="MIME").
- Implementation with plain mail remains to do.
- Bugzilla Report 5969.
- * <mail> and mailloger support SMTP over TLS/SSL
- Bugzilla Report 19180.
- * <mail> the attributes from, replyto ,tolist, cclist, bcclist
- can now contain email addresses of the form name <address@xyz.com>
- or (name) address@xyz.com
- Bugzilla Report 22474.
- * <mail> (version PlainMail)
- prevent blank headers from being sent,
- make the order of the headers of plain mail messages predictable
- Bugzilla Report 22088.
- * <zipfileset> can now be defined in the main body of a project
- and referred to with refid="xyz". Bugzilla Report 17007.
- * A wrapper script for OS/2 has been added.
- * <unzip> will now detect and successfully extract self-extracting
- archives. Bugzilla Report 16213.
- * <stcheckout> has a new attribute "converteol" that can be used to
- control the automatic line-end conversion performed on ASCII files.
- Bugzilla Report 18884.
- * Users can now modify the list of default excludes using the new
- defaultexcludes task. Bugzilla Report 12700.
- * There is a new data type <propertyset> that can be used to collect
- properties. It is supported by <ant>, <antcall>, <subant>, <java>,
- <echoproperties> and <junit>.
- * <concat> can now control the encoding of the output as well and optionally
- add new-line characters at the end of files that get concatenated but
- don't end in newlines. Bugzilla Report 12511.
- * <rpm> will detect the rpmbuild executable of RedHat 8.0 and newer
- and use that if it is on your PATH. Bugzilla Report 14650.
- * A new task <rexec> has been added that requires commons-net to work.
- Bugzilla Report 19541.
- * <javadoc> now supports a nested <arg> element in addition to the
- additionalparams attribute.
- * You can now determine the order of standard tags in <javadoc> via
- <tag> elements - you must not use the description attribute for them.
- Bugzilla Report 18912.
- * <javadoc> now supports the -noqualifier switch. Bugzilla Report 19288.
- * <javac>'s executable attribute can now also be used to specify the
- executable for jikes, jvc, sj or gcj. Bugzilla Report 13814.
- * <javac> has a new attribute tempdir that can control the placement
- of temporary files. Bugzilla Report 19765.
- * A new magic property build.compiler.jvc.extensions has been added
- that can be used to turn of Microsoft extensions while using the jvc
- compiler. Bugzilla Report 19826.
- * You can now limit the parallelism of <apply> and <chmod> by using the new
- maxparallel attribute.
- * With the new addsourcefile attribute, you can make <apply> ommit the
- source file names from the command line. Bugzilla Report 13654.
- * <apply> and <chmod> now support nested <filelist>s as well as <dirset>s.
- Bugzilla Reports 15929 and 20687.
- * <apply> and <chmod> will display a summary if you set the new
- verbose attribute to true. Bugzilla Report 19883.
- * <copy>/<move>'s failonerror attribute can now also be used to
- continue the build if an I/O error caused a problem. Bugzilla
- Report 12999.
- * new selector <type/> allowing to select only files or only directories.
- Bugzilla Report 20222.
- * <java> and <junit> now support a nested <bootclasspath> element that
- will be ignored if not forking a new VM.
- * <junit>'s nested <formatter> elements now support if/unless clauses.
- * <ejbjar>
- cmpversion attribute added
- jboss element will look for jbosscmp-jdbc.xml descriptor
- if ejbjar has cmpversion="2.0" set
- Bugzilla Reports 14707 and 14709.
- * <pvcs> config attribute added to set the location of a specific PVCS
- .cfg file
- Bugzilla Report 9752
- * <mapper> has an "unpackage" mapper
- Bugzilla Report 18908
- * Added <scriptdef> task allowing tasks to be defined using any BSF-supported
- scripting language.
- * <touch>'s datetime attribute can now accept time with a granularity
- of seconds as well. Bugzilla Report 21014.
- * <checksum> has two new properties: totalproperty and todir.
- * FileUtils#createTempFile will now create temporary files in the
- directory pointed to by the property java.io.tmpdir
- * <unzip> and friends now supports an optional encoding attribute to
- enable it to expand archives created with filenames using an encoding
- other than UTF8. Bugzilla Report 10504.
- * <patch> has a new attribute destfile that can be used to create a new
- file instead of patching files in place.
- * OpenVMS is detected as a valid OS family.
- * DirectoryScanner has been optimized for cases where include patterns do not
- start with wildcards. Bugzilla Report 20103.
- * DirectoryScanner begins to be optimized not to scan excluded directories.
- Bugzilla Report 21941.
- * Added keep-going feature. Bugzilla Report 21144
- * The archives generated by <zip> and friends will now contain CRC and
- size information in the "local file header", thereby providing this
- information to applications that read the archives using
- java.util.ZipInputStream. Bugzilla Report 19195.
- * <copy> and <move> can now handle mappers that return multiple
- mappings per source path. This behaviour is enabled by using
- an enablemultiplemapping attribute. Bugzilla Report 21320.
- * <exec> will now work on OpenVMS (please read the notes in
- <exec>'s manual page). Bugzilla Report 21877.
- * <exec> will now have a new attribute spawn (default false).
- If set to true, the process will be spawned. Bugzilla Report 5907.
- * <java> will now have a new attribute spawn (default false).
- If set to true, the process will be spawned. Bugzilla Report 5907.
- * <parallel> now supports a timeout which can be used to recover
- from deadlocks, etc in the parallel threads. <parallel> also
- now supports a <daemons> nested element. This can be used to
- run tasks in daemon threads which the parallel task will not
- wait for before completing. A new attribute failonany will cause
- <parallel> to throw an exception if any thread fails without
- waiting for all other threads to complete.
- * <zip> and friends will consume far less memory than they used to
- when run with compress="false". Bugzilla Report 21899.
- * <if/> and <unless/> attributes added to <param/> element of <style>
- Bugzilla Report 22044
- * <zip> and friends have a new attribute "keepcompression" that can be
- used to incrementally build an archive mixing compressed and uncompressed
- entries.
- * <junit>'s XML formatter adds a new classname attribute to the <testcase>
- elements.
- * new <permissions> type add permission handling to the code
- this type can be nested in the <java> and <junit> tasks.
- Bugzilla Report 22533.
- * additional shortcuts for ant options (-d --> -debug, -e --> -emacs,
- -h --> -help, -p --> -projecthelp, -s --> -find).
- * new selector <modified>. "cache" was renamed to "modified".
- Bugzilla Report 20474.
- * <stcheckout> and <stlist> have a new asofdate attribute that can be
- used to checkout/list files based on a date instead of a label.
- Bugzilla Report 20578.
- * New filter <concatfilter>. Adds the content of file at the beginning
- or end of a file. Discussion started at
- http://marc.theaimsgroup.com/?l=ant-user&m=106366791228585&w=2
- * New task <import>
- * New task <macrodef>
- * New task <presetdef>
- * Ant libraries that can make use of namespaces to avoid name
- clashes of custom tasks
- * <java> and <junit> now support <assertions>, which let you enable
- and disable Java1.4 assertions on a package or class basis. These
- only work when fork=true, currently.
- * .NET tasks expanded with VB support <vbc> and J#, via <jsharp>,
- <importtypelib> and <ilasm>. <csc> supports nested <src> types,
- <defines> for (potentially conditional) definitions, <reference>
- filesets for references. The executable attribute lets you switch to
- mono or other implementations -<csc> has been tested with Mono on
- Linux and OSX.
- Changes from Ant 1.5.3 to Ant 1.5.4
- ===================================
- Changes that could break older environments:
- --------------------------------------------
- * If the Visual Age tasks used to work for you, they may stop doing so
- now - and we'd like to know about it. The current set of tasks is
- supposed to work with any version of VAJ starting with 3.0.
- Fixed bugs:
- -----------
- * The Visual Age for Java tasks didn't work (at least for versions 3.0
- and higher). Bugzilla Report 10016.
- * URL-encoding in <vaj*port> didn't work properly.
- * VAJRemoteUtil called getAbsolutePath instead of getPath
- causing problems when using a Windows VAJ server from a UNIX server.
- Bugzilla Report 20457.
- * VAJImport task failed with NullPointerException when using DirectoryScanner.
- Bugzilla Report 22080.
- Other changes:
- --------------
- * Shipped XML parser is now Xerces 2.5.0
- * <javah> will invoke oldjavah on JDK 1.4.2. Bugzilla Report 18667.
- * The VAJ tasks now support a haltonfailure attribute to conditionally
- keep building even if they fail.
- * It is now possible to use the latest (versioned or unversioned) edition
- in <vajload> by using special wildcard characters. Also fixes
- Bugzilla Report 2236.
- Changes from Ant 1.5.2 to Ant 1.5.3
- ===================================
- Changes that could break older environments:
- --------------------------------------------
- * The <zip> task and friends have again changed a method signature
- (sorry, was necessary to fix bug 17780). The return type of
- getResourcesToAdd has changed.
- Fixed bugs:
- -----------
- * <zipfileset>'s filemode would get ignored and the dirmode was used
- for the included files as well. As a side effect, WinZIP was unable
- to extract or display the files, so they seemed to be missing from
- the archive. Bugzilla Report 17648.
- * <ftp> could use the wrong path separator when trying to change the
- remote working directory. Bugzilla Report 17735.
- * <jar update="true"> would loose all original files if you didn't
- specify any nested <(zip)fileset>s and the manifest had changed.
- Bugzilla Report 17780.
- * If you used a value starting with \ on Windows for the appxml
- attribute of <ear> or the webxml attribute of <war>, it would be
- ignored. Bugzilla Report 17871.
- * Ant will no longer implicitly add Sun's rt.jar in <javac> when you
- use jvc and don't specify a bootclasspath. Bugzilla Report 18055.
- * The prefix attribute of <zipfileset> would not generate directory
- entries for the prefix itself. Bugzilla Report 18403.
- * starteam checkout can now handle deleted labels. Bugzilla Report 17646.
- * The Unix wrapper script failed if you invoked it as a relative
- symlink and ANT_HOME has not been set. Bugzilla Report 17721.
- Other Changes:
- --------------
- * Added ability to specify manifest encoding for the <jar> and
- <manifest> tasks
- Changes from Ant 1.5.1 to Ant 1.5.2
- =============================================
- Changes that could break older environments:
- --------------------------------------------
- * ANT_OPTS environment variable is now applied at the start of the
- Java command line, allowing position specific parameters of some
- JVMs, such as -classic to be specified.
- * ZipScanner#getIncludedFiles will now return the names of the ZipEntries
- that have been matched instead of the name of the archive.
- * The <zip> task and friends have been heavily modified, almost every
- method signature of the Zip class has changed. If you have subclassed
- Zip (or one of its subclasses), your class will most likely not
- compile against the current code base. If it still compiles, it will
- probably not work as in Ant 1.5.1.
- Fixed bugs:
- -----------
- * <translate> was not ignoring comment lines.
- * <manifest> wouldn't update an existing manifest if only an attribute
- of an existing section changed.
- * ant.bat now supports the ANT_ARGS and JAVACMD environment variables
- again (like Ant 1.5 did).
- * The "plain" <junit> <formatter> could throw a NullPointerException
- if an error occurred in setUp.
- * <junit> will now produce output when a test times out as well.
- * <replace> would count some internal character replacements when
- reporting the number of replaced tokens.
- * <concat> would cause an exception if a <filelist> pointed to files
- that do not exist.
- * <javadoc> will now pass -source to custom doclets as well.
- * <cvstagdiff> would throw a NullPointException if there had been no
- differences.
- * <cvschangelog> could miss today's changes.
- * <concat> could append newline characters between concatenated files.
- * <xmlvalidate> ignored the specified encoding of the files to
- validate.
- * the errorsbeginat attribute of the <http> condition didn't work.
- * Ant will try to force loading of certain packages like com.sun.*
- from the system classloader. The packages are determined by the
- version of the JVM running Ant.
- * Ant didn't find the runtime libraries on IBM's JDK 1.4 for Linux.
- * random component of temporary files is now always a positive integer.
- * Ant could incorrectly try to use the 1.4 regexp implementation even
- if it isn't available if you run the JVM with -Xverify:none.
- * Ant would die with an exception if you used nested <reference>
- elements in Ant and the refid attribute didn't point to an existing
- project reference.
- * The <get> task can now be compiled (and Ant thus bootstrapped) using
- Kaffee.
- * build.sysclasspath will now be honored by more tasks.
- * The signjar keystore attribute has been reverted to a String allowing
- it to once again accept URLs. This should not affect current File based usage
- unless you are extending the Signjar task.
- * <jar update="true"> would remove the original manifest.
- * fix up folder creation in PVCS task
- * <tar>'s up-to-date check didn't work for nested <(tar)fileset>s.
- * Corrected a problem in XMLLogger where it would not associated
- messages with a taskdef'd task
- * <uptodate> now works when using attributes (i.e. not filesets) and pointing
- to the same file
- * Java task (and output system) now stores output which doos not end
- with a line feed.
- * splash screen wouldn't disappear when build was finished.
- * <exec> now supports OS/2.
- * <zip> and friends would only update/recreate existing archives if
- the files to add/update have been newer than the archive.
- * <javadoc>'s <link> element could fail for offline="true" on some JDKs.
- Other changes:
- --------------
- * MailLogger now sets the Date header correctly.
- * Shipped XML parser is now Xerces 2.3.0
- * signjar now accepts a maxmemory attribute to allow the memory allocated to the
- jarsigner tool to be specified. The jarsigner from the JDK's JAVA_HOME bin
- dir is now used rather than the first jarsigner on the path.
- * **/.DS_Store has been added to the list of default pattern excludes.
- * The Created-By header in the default manifest now contains the JVM
- vendor and version according to the jar specification. A new header,
- Ant-Version provides the Ant version used to create the jar.
- * <zip> can now store Unix permissions in a way that can be
- reconstructed by Info-Zip's unzip command.
- Changes from Ant 1.5.1Beta1 to 1.5.1
- ====================================
- Fixed bugs:
- -----------
- * <tstamp>'s prefix attribute failed to apply to nested <format> elements.
- * <junitreport> created an empty junit-noframes.html if no format had
- been specified.
- * <basename> would remove more than it should if the file name
- contained more than one dot.
- * <filterset>s nested into <filterset>s didn't work.
- Other changes:
- --------------
- * Shipped XML parser is now Xerces 2.2.0
- * Filesets now support a 'file' attribute, allowing a single-file
- fileset to be constructed without having to specify its parent
- directory separately.
- * <junit> will now return the result of a call to getName instead of
- "unknown" for Test implementations that don't extend TestCase but have
- a public String getName() method.
- Changes from Ant 1.5 to 1.5.1Beta1
- ==================================
- Fixed bugs:
- -----------
- * Date/time in CvsChangeLog was in local timezone and 12 hour format leading
- to a problem when sorting by time. It is now UTC (GMT) and in 24-hour
- format as per cvs 'specifications'.
- * CvsTagDiff now supports ampersand modules or modules that have a different
- root directory than their name.
- * EjbJar threw NPEs for the Websphere element. The property 'websphere.home'
- was not documented.
- * Mail example in the documentation was not correct.
- * Checksum was broken in the following scenario:
- (using verifyproperty OR in a condition) AND using filesets
- with multiple files.
- * The ExpandProperties filter threw NPEs when defined using
- the <filterreader> format.
- * The sh wrapper script didn't work under Cygwin if ANT_HOME wasn't
- set with a Unix style filename.
- * The sh wrapper script could fail if you started Ant from a directory
- with whitespace in its name.
- * ant -diagnostics was not working properly when the task dependency
- was missing and was just printing the missing dependency.
- * If a task got redefined via <taskdef>, it lost its child elements.
- * <property>'s classpathref attribute was broken.
- * <arg line="''" /> would result in no command line argument, will now
- be a single empty argument. Use <arg value="''"/> if you need the
- quotes literally.
- * <replaceregexp> could append a newline character at the end of the
- file.
- Other changes:
- --------------
- * Appendix E of Java Development with Ant (Loughran/Hatcher) was
- contributed to the docs.
- * <available> will only print deprecration warnings if it is actually
- used to change the value of a property.
- Changes from Ant 1.5beta3 to Ant 1.5
- ====================================
- Changes that could break older environments:
- --------------------------------------------
- * The filesetmanifest attribute added to <jar> after the 1.4.1
- release has been removed for now. This change may affect only
- the 1.5Beta/1.6Alpha users. An attempt will be made to add this
- feature back into Ant 1.6.
- Fixed bugs:
- -----------
- * <zip> and friends would always update existing archive if you set
- the update attribute to true.
- * To support backward compatibility with older versions, <pathconvert>
- will once again set the property, even if the result is the empty
- string, unless the new 'setonempty' attribute is set to false|no|off
- (default is "true").
- * The manifest task would crash XmlLogger
- Other changes:
- --------------
- * added **/.svn and **/.svn/** to the default excludes
- Changes from Ant 1.5beta2 to Ant 1.5beta3
- =========================================
- Changes that could break older environments:
- --------------------------------------------
- * <pvcs> default filenameformat has been different from Ant 1.4.1.
- Now it is different from 1.5beta1 and 1.5beta2.
- * <pathconvert> won't set the property if the result is the empty string.
- Fixed bugs:
- -----------
- * <available> could fail to find files or directories that happen to
- start with the name of the project's basedir but are not children of
- the basedir.
- * Nested <property>'s inside <ant> can now be overriden by subsequent
- <ant> and <antcall> tasks.
- * <xslt>'s outputtype attribute wouldn't do anything.
- * <linecontains> filterreader could swallow lines.
- * <sequential> used to configure the tasks (set their attributes)
- before the first task has been executed. This means that properties
- that have been set by nested task seemed to be unset for the other
- tasks in the same <sequential> element.
- * <javac>'s sourcepath setting has been ignored by some compiler
- implementations.
- * <javadoc>'s packagelist attribute didn't work.
- * the plain mailer would always use port 25 in <mail>.
- * Ant's default logger could swallow empty lines.
- * ejbjar's iPlanet nested element now can process multiple descriptors.
- * IPlanetEjbc was looking in the wrong place for four iiop files.
- * <javac> would pass the -source switch to JDK 1.3's javac, even
- though it doesn't support it.
- Other changes:
- --------------
- * <checksum> now uses a buffer (of configurable size).
- * The "Trying to override task definition" warning has been degraded
- to verbose level if the two task definitions only differ in the class
- loader instance that has loaded the definition.
- * Add a jvmargs to the ejbjar's weblogic element to allow additional
- arguments to be provided to the VM runnign ejbc. Document the
- jvmdebuglevel attribute which can be used to avoid warnings about
- interface classess being found on the classpath. Document the new
- <sysproperty> element which allows JVM properties to be defined.
- Added an outputdir attribute to allow the destination to be a
- directory into which the exploded jar is written.
- * ejbjar now supports Borland Enterprise Server 5 and Jonas 2.5
- Changes from Ant 1.5beta1 to Ant 1.5beta2
- =========================================
- Changes that could break older environments:
- --------------------------------------------
- * Properties will now be expanded in mail message bodies. This means
- that one $ sign will be stripped if your mail message contains the text $$.
- * org.apache.tools.ant.taskdefs.Expand no longer extends MatchingTask.
- * Available#setFile now again uses a File argument as it did in 1.4,
- this may break environments that have been adapted to the String
- argument version present in 1.5beta1.
- Fixed bugs:
- -----------
- * When <move> attempts a rename, it deletes the destination file, if it
- exists, before renaming the source file. However, <move> was not
- checking if the destination file was actually a directory before
- trying to delete it.
- * Make CVS Tasks to work under Cygwin.
- * Fix LineContains to handle huge files elegantly without causing
- Stack Overflows.
- * if you ask for the "classic" compiler on Java1.4, you get upgraded to
- "modern" because there is no classic compiler any more.
- * the <http> condition was viewing 404 'not found' exceptions as success. Now
- it defaults to viewing any response >=400 as an error, and has an
- errorsBeginAt attribute you can use if you want a higher or lower value.
- * <get> throws a build exception on an http authorization error, unless you
- have set ignoreerrors to true.
- * <wsdltodotnet> was spelt in Wintel case: <WsdlToDotnet>. It is now lower
- case, though the old spelling is retained for anyone who used it.
- * Merging of Manifests in jar now works as documented.
- * paths that have been separated by colons would be incorrectly parsed
- on NetWare.
- * runant.pl now supports NetWare.
- * <tempfile> and <setproxy> tasks were in beta1, but not defined by
- default; They now are. <tempfile> fills a property with the name of a
- temporary file; <setproxy> lets you set the JVM's http, ftp and socks proxy
- settings.
- * <available classname="foo" ignoresystemclasses="true"> failed for
- JDK 1.1 and 1.2, even if the class could be found on the
- user-specified classpath.
- * <property environment=... /> now works on z/OS.
- * forked <javac> failed for the wrong reason on JDK 1.1 - Ant would
- use a temporary file to hold the names of the files to compile under
- some conditons, but 1.1 doesn't support this feature. Ant will no
- longer try this, but you may run into problems with the length of the
- command line now.
- * the refid attribute for <property>s nested into <ant> or <param>s
- nested into <antcall> didn't work.
- * <replaceregexp> didn't work for nested <fileset>s.
- * <javadoc> dropped sourcepath entries if no "interesting" .java
- source files could be found below them. This has been backwards
- incompatible and caused problems with custom doclets like xdoclet.
- * Using the doclet, docletpath or docletpathref attributes of
- <javadoc> may have caused NullPointerExceptions.
- * nested <filesets> of <javadoc> would include too much.
- * <dependset> will no longer choke on <targetfileset>s that point to
- non-existing directories.
- * <patch> didn't work at all.
- * <replace> and <replaceregexp> now fail if the file they are working
- on is locked.
- * <javadoc> would pick up the wrong executable in the combination JDK
- 1.2 and AIX.
- Other changes:
- --------------
- * z/OS now gets detected by the os condition.
- * <fileset> and <dirset> now have an optional followsymlink attribute
- that can prevent Ant from following symbolic links on some platforms.
- * BeanShell is now supported in the <script> task.
- * <ejbjar> under Weblogic attempts to use the ejbc20 compiler for 2.0 beans
- based on the deployment descriptor's DTD reference. Under weblogic 7.00 Beta
- this ejbc class has been deprecated. To avoid the deprecation warning use
- ejbcclass="weblogic.ejbc".
- * <ejbjar> will add a manifest to the generated jar based on the naming
- convention in use. This overrides the manifest specified in the
- <ejbjar> attribute
- Changes from Ant 1.4.1 to 1.5beta1
- ==================================
- Changes that could break older environments:
- --------------------------------------------
- * Important: Single $ signs are no longer silently stripped!
- Before you panic that we have broken all your build files, we have kept
- the old "$$" -> "$" behaviour. So only build files which accidentally had
- a $ sign in a string that was being silently stripped may break.
- We added this fix to stop newbie confusion; if you want to write a
- build file which works on ant versions 1.4.1 or earlier, stay with
- the double $$ sign rule.
- * Project.getBuildListeners now returns a clone of the listener
- list. Changes to the returned list will not affect the listeners
- currently attached to the Project. It also means that it is safe to
- iterate over the returned list if listeners are added or removed
- during the traversal.
- * <pvcs> default filenameformat has been different from Ant 1.4.1.
- * Some messages that are printed during startup will not be
- written to the logfile specified via -logfile as they might destroy
- the format of the file for special BuildLoggers (like XmlLogger).
- * The filesetmanifest attribute added to <jar> after the 1.4.1
- release has been removed for now. This change may affect only
- the 1.5Beta/1.6Alpha users. An attempt will be made to add this
- feature back into Ant 1.6.
- * Shipped XML parser is now Xerces 2.0.1 along with the XML Parser APIs.
- XML Parser APIs is a separate jar that contains the necessary
- JAXP/DOM/SAX classes.
- * <telnet> was fixed to expand properties inside nested <read> and
- <write> elements; before this only happened when you assigned the text
- to the string attribute. If you had $ signs in the string, they may
- need escaping.
- * the RegexpMatcher interface has been extended to support case
- insensitive matches and other options - custom implementations of
- this interface won't work any longer. We recommend to use the new
- Regexp interface that also supports substitution instead of the
- RegexpMatcher interface in the future.
- * <gzip> will throw an exception if your src attribute points to a directory.
- * Unjar, Unzip and Unwar will throw an exception if the Src attribute
- represents a directory. Support for nested filesets is provided
- instead.
- * It is no longer possible to overwrite a property using tasks like
- <condition>, <exec>, <pathconvert>, or <tstamp>. In some exceptional
- cases it will generate a warning if you attempt to overwrite an
- existing property.
- * Taskwriters please note: Whenever tasks had any overloaded set* methods,
- Ant's introspection mechanism would select the last overloaded method
- provided to it by the Java Runtime. A modification has now been made such
- that when the Java Runtime provides a method with a String as its argument,
- a check is made to see if there is another overloaded method that takes in
- some other type of argument. If there is one such method, then the method
- that takes in String as an argument is not selected by the Introspector.
- * The pattern definition **/._* has been included into the Default
- Excludes list.
- * <propertyfile>'s <entry> element was modified to remove "never" as a value
- as its behavior was undocumented and flakey.
- * The -projecthelp flag now only prints out targets that include the
- 'description' attribute, unless the -verbose or -debug flag is included
- on the Ant command line.
- * Ant's testcases now require JUnit 3.7 or above, as they now use the new
- assertTrue method instead of assert.
- * If the 'output' attribute of <ant> is set to a simple filename or a
- relative path, the file is created relative to ${basedir}, not ${user.dir}.
- * The default value for build.compiler is now javac1.x with x
- depending on the JDK that is running Ant instead of classic/modern.
- Fixed bugs:
- -----------
- * <available> could fail to find files or directories that happen to
- start with the name of the project's basedir but are not children of
- the basedir.
- * Nested <property>'s inside <ant> can now be overriden by subsequent
- <ant> and <antcall> tasks.
- * <xslt>'s outputtype attribute wouldn't do anything.
- * <linecontains> filterreader could swallow lines.
- * <sequential> used to configure the tasks (set their attributes)
- before the first task has been executed. This means that properties
- that have been set by nested task seemed to be unset for the other
- tasks in the same <sequential> element.
- * <javac>'s sourcepath setting has been ignored by some compiler
- implementations.
- * <javadoc>'s packagelist attribute didn't work.
- * the plain mailer would always use port 25 in <mail>.
- * Ant's default logger could swallow empty lines.
- * ejbjar's iPlanet nested element now can process multiple descriptors.
- * IPlanetEjbc was looking in the wrong place for four iiop files.
- * <javac> would pass the -source switch to JDK 1.3's javac, even
- though it doesn't support it.
- * <zip> and friends would always update existing archive if you set
- the update attribute to true.
- * To support backward compatibility with older versions, <pathconvert>
- will once again set the property, even if the result is the empty
- string, unless the new 'setonempty' attribute is set to false|no|off
- (default is "true").
- * The manifest task would crash XmlLogger
- * A bug existed that prevented generated log files from being deleted as
- part of the build process itself. This has now been fixed.
- * Fixed bug where <move> ignored <filterset>s.
- * Ant works properly with the combination of Java1.4/WindowsXP.
- * Fixed bug where <java> used to sometimes invoke class constructors twice.
- * Fixed bug with 4NT shell support.
- * Fixed bug where ant would not perform ftp without remotedir being
- specified even though this was not mandatory.
- * Fixed bug where ant would not copy system properties into new Project
- in ant/antcall tasks when inheritall="false" is set.
- * <propertyfile> would not close the original property file.
- * <ant> will no longer override a subbuild's basedir with inheritall="true".
- * Fixed problem with the built-in <junit> formatters which assumed
- that only one test could be running at the same time - this is not
- necessarily true, see junit.extensions.ActiveTestSuite.
- * <jar>'s whenEmpty attribute is useless as JARs are never empty, they
- contain at least a manifest file, therefore it will now print a
- warning and do nothing.
- * <typedef> hasn't been all that useful as it couldn't be used outside
- of targets (it can now) and nested "unknown" elements have always
- been considered to be tasks (changed as well).
- * <fixcrlf> would fail for files that contained lines longer than 8kB.
- * Some junit formatters incorrectly assumed that all testcases would
- inherit from junit.framework.TestCase.
- * <fixcrlf> dropped the first characters from Mac files.
- Other changes:
- --------------
- * <checksum> now uses a buffer (of configurable size).
- * The "Trying to override task definition" warning has been degraded
- to verbose level if the two task definitions only differ in the class
- loader instance that has loaded the definition.
- * Add a jvmargs to the ejbjar's weblogic element to allow additional
- arguments to be provided to the VM runnign ejbc. Document the
- jvmdebuglevel attribute which can be used to avoid warnings about
- interface classess being found on the classpath. Document the new
- <sysproperty> element which allows JVM properties to be defined.
- Added an outputdir attribute to allow the destination to be a
- directory into which the exploded jar is written.
- * ejbjar now supports Borland Enterprise Server 5 and Jonas 2.5
- * added **/.svn and **/.svn/** to the default excludes.
- * Selector Elements now provide a way to create filesets based on
- sophisticated selection criteria.
- * Gzip and Bzip2 files can now be constructed in the fly when using
- the tar task without having to create the intermediate tar file on
- disk. The Untar task can also untar GZip and BZip2 files on the fly
- without creating the intermediate tar file.
- * New optional type, <classfileset> added.
- * <ejbjar> now allows control over which additional classes and interfaces
- are added to the generated EJB jars. A new attribute "dependency" can be
- defined which controls what classes are added. The addition of classes now
- uses the Jakarta-BCEL library rather than reflection, meaning bean classes are
- no longer loaded into Ant's JVM. The default dependency analyzer is known as
- the ancestor analyzer. It provides the same behaviour as the 1.4.1 version of
- <ejbjar>. If the BCEL library is not present, a warning will be issued stating
- the ancestor analyzer is not available. In this case <ejbjar> will continue
- to function but will not add super classes to the jar.
- * <available> has a new attribute named ignoreSystemClasses.
- * New task <cvschangelog/> generates an XML report of changes that occur
- on CVS repository.
- * New filter readers: ClassConstants, ExpandProperties, HeadFilter,
- LineContains, LineContainsRegExp, PrefixLines, ReplaceTokens,
- StripJavaComments, StripLineBreaks, StripLineComments, TabsToSpaces,
- TailFilter.
- * <copy>, <loadfile>, <loadproperties>, <move> support FilterChains
- of FilterReaders.
- * New task <loadproperties> to load contents of file as Ant properties,
- with nested <filterchain> elements.
- * New task <loadfile> to load a whole file into a property.
- * New task <echoproperties> to list your current properties to the screen
- or a file.
- * New tasks <bzip2> and <bunzip2> to pack and unpack files using the
- BZip2 algorithm.
- * New tasks <replaceregexp>, <checksum>, <translate>, <waitfor>,
- <manifest>, <vsscp>, <vssadd>, <vsscreate>, <splash>, <basename>, <dirname>,
- <concat>, <sourceoffsite>, <jarlib-available>, <jarlib-display>,
- <jarlib-manifest>, <jarlib-resolve>.
- * A new combined <mail> task, which replaces the old <mail> and
- <mimemail> tasks, has been added. The <mimemail> task, and
- old SendEmail and MimeMail classes have been deprecated.
- * Mail task allows specification of port number.
- * Users can control what <zip> and <jar> must do when duplicate files
- are found. A new element <zipgroupfileset> allows for multiple zip
- files to be merged into the archive. In addition, <jar> also has
- another new attribute: filesetmanifest. The existing manifest
- attribute of <jar> now also accepts the name of a jar added through
- a fileset.
- * gzip now checks that the zipfile is older than the source file
- before rebuilding the zipfile.
- * TarFileset takes in three new attributes - fullpath, prefix
- and preserveLeadingSlashes.
- * <move> attempts to rename the directory, if everything inside it is
- included, before performing file-by-file moves. This attempt will
- be done only if filtering is off and if mappers are not used. This
- is a performance improvement and there is no change otherwise in
- the functionality of this task.
- * Exec task has extra attribute "resultproperty" to get the return code
- into a property.
- * Exec task prints a message when a timed-out process is killed.
- * Added optional attributes - name, arch and version to the <os> task.
- * Unjar, Untar, Unwar and Unzip now support patternsets to
- select files from an archive for extraction. Filesets may be
- used to select archived files for unarchival.
- * Javac task allows debug levels to be specified. Debug levels
- will have an effect only when the modern compiler or the
- classic compiler (version 1.2 and higher) is used and debugging
- is enabled.
- * Added support for specifying CVS_RSH in the <cvs/> task
- * The attributes zipfile, jarfile, warfile and earfile (from the Zip,
- Jar, War and Ear tasks) have been deprecated and superseded by a
- new attribute "destfile".
- * Added new conditions <isset>, <checksum>, <http>, <socket>, <contains>,
- <filesmatch>.
- * <taskdef> and <typedef> will now emit a warning if a task/type of
- the given name already exists.
- * A new revision of VAJ tasks: The most important new feature
- is the ability to execute VAJ tasks from the command line by
- exploiting the Remote Tool Access feature of VAJ.
- * Improved support for Novell NetWare.
- * Added an optional encoding attribute to <fixcrlf>.
- * <apply> has a new attribute relative that allows users to pass the
- filenames as relative instead of absolute paths on the command line.
- * References can now be copied into the child build by <ant> and
- <antcall> using nested <reference> elements or the new inheritRefs
- attribute.
- * <fail> now supports builds to fail based on conditions via if and
- unless attributes.
- * Ant now comes with two new BuildLogger implementations - one that
- can send emails containing a log of the build process (MailLogger),
- and one that colorizes the output based on message levels, using
- ANSI color code escape sequences (AnsiColorLogger).
- * A "package" mapper type has been added to allow package directory
- names replaced with the dotted form.
- * You can now specify environment variables in the <java> and <junit> tasks
- if the fork attribute has been set to true.
- * -propertyfile command-line option has been added to load an entire
- property file just as -D properties are declared (as user properties).
- -D properties take precedence over -propertyfile specified ones.
- * You can now set an ANT_ARGS environment variable to hold arguments you
- always want passed to the 'ant' command -- for example, if you always
- want to use a different logger or the -find flag.
- * <tstamp> now supports a new "prefix" attribute to prefix properties set.
- * You can now specify the -sourcepath for <javac> explicitly.
- * <javac> now supports a new "listfiles" attribute to list the source
- files it's handing off to the compiler.
- * The compiler implementation for <javac> can now be chosen on a task by
- task basis. The new "compiler" attribute of <javac> can be used to override
- the value of the build.compiler property, if set.
- * <javac> has a new nested element, <compilerarg>, which allows you
- to specify additional args for the specific compiler you're using.
- * <javac>'s "source" attribute is now enabled for jikes as well.
- * <propertyfile>'s <entry> now has a 'unit' attribute to specify the
- increment/decrement unit on date operations.
- * <property> now supports a 'prefix' attribute when loading from a file
- or resource.
- * In Ant 1.4, a feature has been added to the <junit> task that would
- add ant.jar, optional.jar and junit.jar implicitly to the classpath -
- this feature can now be disabled by setting the new includeantruntime
- attribute to false.
- * <style> behaves differently from any other directory-based task, as it
- processes all files that it finds in included directories in
- addition to the files matched by your patterns. There is now a new
- attribute, 'scanincludeddirectories', to suppress this behavior.
- * <javadoc> now supports a <tag> nested element to provide the -tag option
- to the standard Java 1.4 doclet. The element is ignored when not running
- on Java 1.4.
- * <ftp> can now chmod files on a remote server that supports
- "site chmod", as well as set the umask before transferring files, if
- the server supports "site umask".
- * New <serverdeploy> "optional" task.
- * <patternset> now supports nested patternsets.
- * Perforce tasks now support a "failonerror" attribute (defaults to "true").
- * Open Source application server JOnAS support:
- EJB hot deploy and deploy with <serverdeploy> and <ejbjar>
- * Added new DirSet (<dirset>) datatype.
- * <path> now supports nested <dirset> and <filelist> elements.
- * <pathconvert> now supports nested <dirset> and <filelist> elements.
- * <pathconvert>'s "dirsep" and "pathsep" attributes now accept
- multi-character values.
- * <copy> task now has a 'failonerror' attribute to allow keep-going
- behaviour when the file to be copied is not found (defaults to "true").
- * <uptodate> now has a 'srcfile' attribute to allow specifying a
- full-path filename.
- * <exec>, <sql> and <java> now support append attributes to allow
- appending the output to an existing file.
- * <java> now supports a timeout attribute analog to <exec> - it is
- highly recommended to only use it together with fork="true".
- * <javadoc> now supports a source attribute to enable javadoc to
- handle assertions present in JDK 1.4 source code.
- * <replace> supports a new replacefilterfile attribute that
- automatically turns all properties of a given file into
- replacefilters.
- * An alias of <xslt> has been added to refer to the <style> task.
- * The compiler implementation for <rmic> can now be chosen on a task by
- task basis. The new "compiler" attribute of <rmic> can be used to override
- the value of the build.rmic property, if set.
- * <rmic> has a new nested element, <compilerarg>, which allows you
- to specify additional args for the specific compiler you're using.
- * org.apache.tools.ant.XmlLogger now is a BuildLogger, rather than just
- a BuildListener. It can operate in either mode successfully.
- * <junit> has a new attribute "showoutput". If set to true, output
- generated by tests will be sent to Ant's logging system as well as
- to the formatters (instead of sending it to the formatters
- exclusively).
- * Ant has now a pluggable way to prompt users for input, which is used
- by the new <input> task. IDE integrators can provide an
- implementation of the InputHandler interface to decouple Ant's input
- from the console. An implementation that gets its input from a file
- for unattended builds is part of Ant's distribution.
- For more details see docs/manual/inputhandler.html.
- * <patch> has a new attribute that selects the directory in which to
- run the command.
- * <javadoc> now supports two new nested elements, <fileset> and <packageset>.
- Changes from Ant 1.4 to Ant 1.4.1
- ===========================================
- Fixed bugs:
- -----------
- * <ant>'s antfile attribute will now also be considered an absolute path on
- Windows systems, if it starts with a \ and no drive specifier.
- * The fullpath attribute of <zipfileset> has been ignored if you used
- the src attribute at the same time.
- * The manifest file is now always placed as the second entry (after /META-INF)
- in generated jars. This allows the manifest to be read by JarInputStreams
- * Fixed bug in depend task which would fail with a NullPointerException if no
- dependency cache was specified.
- * sql task now handles REM statements correctly so that lines starying with rem
- but which are not comments are actually processed.
- * XMLLogger now uses the task's name rather than the classname
- * <mapper>s will now work as expected if the to pattern expands to an
- absolute pathname.
- * <javac> didn't ignore memory settings in non-fork mode
- * <cab> didn't split the options attribute into several command line
- arguments correctly.
- Other changes:
- --------------
- * New source attribute for <javac> to enable assertion in JDK 1.4
- * XmlLogger and <antstructure> now add an encoding declaration to the
- XML files they generate.
- * <fileset> has a new attribute "casesensitive" to make it match
- filenames in a case insensitive way (if you set it to false) - by
- default filesets remain case sensitive.
- Changes from Ant 1.3 to Ant 1.4
- ===========================================
- Changes that could break older environments:
- --------------------------------------------
- * JUnitReport now uses the xalan redirect extension for multi-output.
- With Xalan 1.2.2 it forces the use of bsf.jar in the classpath.
- (Available in the xalan distribution). It is recommended to switch
- to Xalan 2.x that do not need it.
- * Zip.setWhenempty() has changed its signature.
- * <rmic> is now implemented using a factory. This makes extending
- rmic to use a new compiler a lot easier but may break custom
- versions of this task that rely on the old implementation.
- * several Zip methods have changed their signature as we now use a Zip
- package of our own that handles Unix permissions for directories.
- Furthermore <zip> will now use the platform's default character
- encoding for filenames - this is consistent with the command line
- ZIP tools, but causes problems if you try to open them from within
- Java and your filenames contain non US-ASCII characters. Use the new
- encoding attribute of the task and set it to UTF8 to get the old
- behavior.
- * The <pvcs> task has been moved to a package of its own.
- * JUnitResultFormater has two additional methods that must be
- implemented by custom formatters.
- * Ant will no longer use the canonical version of a path internally -
- this may yield different results on filesystems that support
- symbolic links.
- * The output generated by the xml formatter for <junit> has changed
- again, it doesn't format the numeric value in the time attribute anymore.
- * Pattern matching rules have changes slightly, the pattern foo*
- doesn't match files contained in a directory named foo - use foo/*
- instead.
- * <fixcrlf> will not remove trailing whitespace at the end of lines anymore.
- * The Classloader usage has been changed for the taskdef, property, available
- and sql tasks so that it delegates to the parent classloader. This may cause
- ClassNotFoundExceptions to be thrown if a system class attempts to load a
- class in the taskdef's classpath (typically factory objects).
- * Ant now allows multithreading of tasks and the containment of tasks within
- other tasks. This can break customer listeners which do not expect messages
- from a task before the previous task has finished.
- * Ant now installs its own output stream into System.out to route output to the
- task currently executing on the current thread. This also means that all
- output is now routed as Ant message events. Customer listeners and loggers
- should not call System.out at any time. This has always been true but such
- usage now will cause problems due to possible recursion.
- * Invalid manifest files will now cause build failures in the <jar> task.
- * Ant Introspection now looks for methods with method names starting with
- addConfigured. When called these methods are passed an argument after it has
- been configured from the build file. Custom tasks supporting nested elements
- starting with the name configured will no longer function.
- * The environment variable JAVACMD that can be used to specify the
- java executable to Ant's wrapper scripts must not contain additional
- command line parameters any longer - please use the environment
- variable ANT_OPTS for such parameters now.
- * Ant's wrapper scripts now quote the CLASSPATH environment variable, thus
- supporting classpaths which refer to directories containing spaces. This means
- that the CLASSPATH environment variable cannot have quotes. Any quotes should
- be removed. This will not affect the operation of the CLASSPATH environment
- variable in other contexts.
- * A delete task like
- <delete includeEmptyFilesets="true">
- <fileset dir="somedir" />
- </delete>
- will now remove "somedir" as well, unless there are still files left
- in it (matched by the default excludes).
- * The copy task will now fail if the file to be copied is not found.
- * Ant properties defined in properties files now behave the same way as
- properties defined in the build file. In particular the $ character needs
- to be escaped in property values by doubling it to $$. So, to define a
- property with the value $hello, you need to define it in a properties file
- as
- test.prop=$$hello
- This was not the case in Ant 1.3
- Other changes:
- --------------
- * New tasks: ear, p4counter, record, cvspass, vsscheckin, vsscheckout,
- typedef, sleep, mimemail, set of tasks for Continuus/Synergy, dependset,
- condition, maudit, mmetrics, jpcoverage, jpcovreport, jpcovmerge
- * Ant now uses JAXP 1.1
- * rmic now supports Kaffe's and Weblogic's version of rmic.
- * new magic property build.rmic to chose the rmic implementation
- * <tar> will now add empty directories as well
- * you can now specify a description for <p4change>
- * <touch> can now work on <fileset>s
- * <uptodate> now supports a value attribute
- * <fail> supports nested text
- * <fixcrlf> won't override files that are already in the correct
- format.
- * <sql> now supports REM comments as well as // and --
- * <jar> now has a nested <metainf> element following the same idea as
- <war>'s <webinf>.
- * <pvcs> can now handle multiple projects.
- * <available> now has a "type" attribute you can use in conjunction
- with the "file" attribute to specify whether the "file" you're
- looking for is a file or a directory.
- * New <junit> formatter named "brief"
- * <ejbjar> changes
- * Add support for Borland Application Server to the <ejbjar> task using
- a <borland> nested element.
- * Add support for iPlanet Application Server to the <ejbjar> task. Also
- includes some iPlanet utility tasks
- * Add support for JBoss Application Server to the <ejbjar> task.
- * Add a naming attribute to control the naming scheme that
- ejbjar uses to name the generated EJB jars.
- * Weblogic element now sets the compiler class for EJB 2.0 beans
- * <dtd> elements can be specified at the <ejbjar> level for building generic
- beans
- * <dtd> elements can now be URLs
- * Allow the manifest to be specified for the generated jars
- * The weblogic element now supprts an attribte noEJBC to skip the processing
- of the jar by ejbc. The ejbc step will then occur at deployment
- * weblogic will tell ejbc to use Jikes compiler if build.compiler is set to
- jikes. It can be restored to the default, javac, operation if desired.
- * Allow the <sql> Delimiter to be set in the so that Oracle stored procs may be
- entered
- * <execon> and <apply> can now optionally skip empty filesets.
- * <javadoc> has a new useexternalfile attribute that makes it use a
- temporary file for sourcefile and package names - helps to defeat
- command line length limitations.
- * Data types like <path> can now be defined inside of <target>s
- * you can now specify a classpath for <style> - the XSLZ processor
- will be loaded from this path
- * added a force attribute to <style> to support dependencies that the
- task cannot determine itself (dependency on parameters, not file
- modification times for example)
- * added vmlauncher attribute to exec tasks. This defaults to true. If
- it is set to false, the VM's ability to launch commands in bypassed
- and the OS shell, either directly or through the auxiliary antRun
- scripts is used.
- * regexp mapper now supports the java.util.regex package of JDK 1.4.
- * New filesonly attribute for <zip> and friends to suppress directory
- entries.
- * New update attribute for <zip> and friends - update an existing
- archive instead of creating a new one.
- * <apply> and <execon> have been merged into a single task.
- * added vssver.scc to the default excludes
- * <available> has a new filepath attribute/nested element that allows
- you top search for a file in a given path.
- * <junit> can now optionally set a property on test failure.
- * <taskdef> can now define several tasks at once, reading the
- name/classname pairs from a property file or resource.
- * <unzip/unjar/unwar> and <untar> now have an overwrite attribute that
- defaults to true. If set to false, files that are newer than the
- files in the archive will not be replaced.
- * <patternset> and <fileset> now support nested <in/excludesfile>
- elements - using these you can have more than one in/excludes file
- per <patternset>.
- * Three new supported compilers for javac: kjc for kopi, gcj for the
- gcc frontend and sj for Symantec's compiler.
- In addition extJavac or the new fork attribute can be
- used to run the JDK's javac in a JVM separate from Ant.
- * <fixrlf> can now with CR only line-ends and can use an arbitraty
- between 2 and 80.
- * The .NET tasks have been adapted to the beta2 release of the framework.
- * <move> will now try to rename() files before copying them byte by
- byte - only if filtering is of, of course.
- * <ant> and <antcall> tasks now support a new attribute inheritAll. When set to
- false, only user properties are passed through to the target Ant instance.
- This includes properties set on the command line and properties explicitly
- passed
- * <javadoc> now skips off line links if the package list cannot be found.
- * <wlrun> now allows the security policy file to exist outside the weblogic
- directory.
- * <java> task will set the Thread contextClassLoader under JDKs 1.2+ to the
- classloader for the class being executed.
- * Introduce the concept of a TaskContainer - a task or element which can contain
- Ant Tasks.
- * Add new tasks implementing the TaskContainer interface <parallel> and
- <sequential> which allow parallel execution of tasks to be specified.
- * <depend> task will now take into account dependencies on jar files and class
- files from a given classpath.
- * <jar> manifest entries may now be specified in the build file either
- completely or to be merged with a manifest file.
- * <tstamp> task custom formats now support locales.
- * Added a listner which will forward events to Log4J. The log4j configuration
- file should be in the directory from which Ant is run or passed as a system
- property using a JVM argument.
- * Introduced the concept of <filtersets> to allow for more control in which
- filters get applied in a <copy> or <move> operation.
- * Added nowarn attribute to javac and deprecated the Jikes-magic property
- build.compiler.warnings.
- * The <depend> task cache format has changed and all dependency information is
- now stored in a single file.
- Fixed bugs:
- -----------
- * Testcases have been made independent of current working directory.
- * Input ZIP-Files will be closed when using a <zipfileset>.
- * p4 tasks now don't fail if user, port or client have been omitted
- (and this is acceptable for the context of the command).
- * <javah>'s outputfile attribute will be resolved as relative to the
- projects basedir.
- * <antstructure> should create a valid DTD for propertyfile.operation.entry
- and omit tasks it fails to load.
- * won't try to pass a -bootclasspath flag to javac 1.1 anymore
- * <style>'s style attribute no handles absolute paths correctly.
- * <delete includeemptydirs="true"> now deletes more than just the leaf
- directories.
- * You can now specify a <fileset> for a directory that doesn't exist at
- declaration time but will created before the fileset gets used for the
- first time.
- * If the quiet attribute has been set, <delete> will handle <fileset>s
- with non-existing directories gracefully.
- * Output written by testcases will now be captured by the <junit> task
- and passed to the formatters.
- * Quote the -group parameter to Javadoc as per the specification
- * Initialise classes when loaded through the AntClassLoader - that is, run
- static initializers
- * Implement getResource() and getResources() in AntClassLoader
- * Create the <ejbjar> weblogic command line as a set of arguments rather than
- as a single line. Avoids problems with paths which contain spaces.
- * <ejbjar> now fails when the weblogic ejbc compiler reports an error.
- * Make the AntClassLoader load resources in the same order as it currently
- loads classes.
- * Handle classpaths with spaces
- * Make sure XSLT processors close their output files in <style>.
- * perform proper uptodate check in <rmic> when compiling for IIOP.
- * <jjtree>'s uptodate test works even if outputdirectory is not the
- parent dir of target
- * <copy> will remove target file (if it exists) before writing to it -
- this avoids problems with links on filesystems that support them.
- * <ftp> now properly recurses remote directories.
- * <ftp> closes remote connection when it's done.
- * <junit> tries to include all necessary classes for the task itself
- to the classpath when running in fork mode - doesn't work for JDK 1.1
- * <apply> and <execon> do now execute the command only once, if you
- specify the parallel attribute - instead of once per fileset.
- * directory based tasks and fileset could miss some included files in
- directories that have been excluded
- * <fixcrlf> failed for large files.
- * <move> removed files you tried to move to themselves.
- * <sql> task will not trty to print the result set unless the query succeeded.
- * Ant classloader will now ignore paths which are invalid relative to the
- project base
- * <ejbjar> weblogic elements check for jar file changes has been fixed.
- Previously some changes would not be included.
- * properties loaded from properties files are now resolved internally. This
- removes the spurious warnings about usage of properties which have not been
- set.
- * <jar> task and friends now process the JAR manifest to ensure it is valid.
- * The task finished event now includes any exception thrown by the task.
- * <java> task now supports a jvmVersion attribute so that if another JVM is
- being used, Ant can determine which options to use for features such as the
- VM memory limits
- Changes from Ant 1.2 to Ant 1.3
- ===========================================
- Changes that could break older environments:
- --------------------------------------------
- * Ant doesn't search for the buildfile anymore, unless you use the new
- -find argument.
- * <perforce> has been replaced by a number of new tasks.
- * <javac> is now implemented using a factory. This makes extending
- javac to use a new compiler a lot easier but may break custom
- versions of this task that rely on the old implementation.
- * The output generated by the xml formatter for <junit> has changed a
- little, it doesn't append " sec" in the time attribute anymore.
- Other changes:
- --------------
- * A GUI Frontend: Antidote. This is currently in development. At this
- time, this is not part of the Ant release, although the source is
- included if you are interested.
- * New tasks: stylebook, propertyfile, depend, antlr, telnet, csc,
- ilasm, apply, javah, several clearcase tasks, junitreport, sound
- * Added output attribute to <java>.
- * Added nested zipfileset element to <zip>
- * Changed <sql> so that printing is at the task level rather than
- the statement level.
- * javadoc task will pass -d flag to any doclet if the destDir attribute is
- given. If the doclet does not accept the -d flag then omit the destdir
- attribute.
- * <cab> can work on non-Windows platforms with the help of libcabinet.
- See http://trill.cis.fordham.edu/~barbacha/cabinet_library/.
- * <ftp> now supports passive mode.
- * New <mapper> data type that can be used to get influence on the
- target files for some tasks like <copy> or enable new types of tasks
- like <apply>.
- * <execon> provides more control over the command line now, the names
- of the source files are no longer required to be at the end of the
- command.
- * Style tasks will now support TraX compliant XSL processors if one is present
- in your classpath.
- * Added a failonerror to the javac task. If set to false, the build will
- continue even if there are compilation errors.
- * Added nested format elements to the tstamp task allowing additional time
- formats to be defined for arbitrary properties.
- * Added classpath attribute and nested classpath element to <property>
- to make the resource attribute more powerful.
- * ${} property expansion will now be performed on the patterns read
- from files specified as includesfile or excludesfile attributes.
- * The <tar> and <untar> tasks now support GNU format for handling paths
- which are greater than 100 characters in length. In addition the <tar>
- task now supports nested filesets through which the file permissions
- may be controlled.
- * wlrun, wlstop and ejbjar now support Weblogic 6.0
- * The MPasre task has been updated to work with MParse 2.0
- * The documentation has been significantly updated.
- Fixed bugs:
- -----------
- * <signjar> no longer uses deprecated methods.
- * javadoc's failonerror attribute works again
- * javadoc's additionalparam attribute will now be split into separate
- parameters (on spaces) to allow for more than one parameter.
- * Changed <sql> task so that printing result sets works on Oracle
- * Changes to ddcreator and ejbc helper to respect the descriptor hierarchy
- keppgenerated in ejbc can now be turned off
- * ejbjar now correctly ignores <ejb-ref> elements in the deployment descriptor.
- CMP files are included by parsing the weblogic deployment descriptor rather
- than relying on the naming convention used in ant 1.2
- * ejbjar includes super classes and super interfaces into the generated ejb
- jar files. The <support> nested element allows support classes to be
- included in the EJB jar. The toplink element should now correctly locate
- the toplink descriptor.
- * <vssget> now correctly deals with spaces in arguments
- * <jar> fails early if a given manifest file doesn't exist
- * <rmic> doesn't search for the _Skel file anymore when stubversion is
- set to 1.2.
- * <rmic> uses the the same classpath to verify a class can be rmic'd
- as it passes to the compiler.
- * org.apache.tools.mail.MailMessage (and therefore <mail>) can now
- handle SMTP servers sending multi line responses.
- * nested <classpath> elements of <taskdef> now work for <taskdef>s not
- nested into <target> as well.
- * <property> and <available> will search for the resource "foo" instead
- of "/org/apache/tools/ant/taskdefs/foo" when given a relative resource
- name foo.
- * Handle build files in directories whose name contained a "#" character
- * <junit> can now log to files whose name contains a comma as well.
- * The AntClassLoader now refers to the loader which loaded it, any
- requests it does not handle itself. Previously these went to the
- primordial loader.
- Changes from Ant 1.1 to Ant 1.2
- ===============================
- Changes that could break older environments:
- --------------------------------------------
- * Semantics of <property> has changed again in the hope to be more
- intuitive. ${} expansion now happens at runtime and <property> tags
- living inside of targets only take effect if they are visited at
- runtime.
- As a side effect of this change, task's attributes get set at runtime
- not at parser time as well, which might change the results of
- <script>s or other custom tasks that reference other tasks by their id
- attribute.
- * copying of support files in <javac> has been removed - as well as
- the filtering attribute.
- * the <expand> and <keysubst> tasks have been removed.
- * the ignore and items attributes of directory based tasks have been removed.
- * the command line switches _not_ starting with - have been removed.
- * Path and EnumeratedAttribute have been moved from
- org.apache.tools.ant to org.apache.tools.ant.types.
- * the class attributes of <available>, <java>, <rmic> and <taskdef>
- have been removed.
- * the src attribute of <chmod> has been removed.
- * <patch> and <javadoc> have lost some of their attributes.
- * <java> and <cvs> have lost some undocumented attributes.
- * the Unix antRun script would search for command.sh in the directory
- it changed to and invoke this instead of command if present. This
- behavior has been dropped.
- * <ejbjar> task syntax has been changed significantly
- * <exec> is no longer implemented by org.apache.tool.ant.taskdefs.Exec.
- Custom tasks that rely on Project.createTask("exec") to return an
- instance of this class are going to fail.
- * nested <include> and <exclude> elements expect the value of their
- name attribute to be a single pattern, they don't accept multiple
- patterns anymore. Split them into multiple elements of the same type.
- * <delete dir="somedir" /> will now delete the directory itself as
- well as all included files. If you just want to clean out the
- directory and keep the empty one, use a nested fileset.
- Other changes:
- --------------
- * New tasks: antstructure, cab, execon, fail, ftp, genkey, jlink,
- junit, sql, javacc, jjtree, starteam, war, unwar, uptodate,
- native2ascii, copy, move, mparse.
- * copydir, copyfile, deltree and rename are now deprecated. They
- should be replaced with the new copy, delete and move tasks.
- * <java> uses a ClassLoader of its own in no-fork mode if a classpath is
- specified.
- * <style> will create the necessary target directories and reprocess
- all files if the stylesheet changes.
- * New data types fileset and patternset - expected to get a broader use.
- They, as well as PATH like structures, can now be defined on a global
- level and later be referenced by their id attribute.
- * You can specify environment variables to <exec>.
- * <get> can check whether a remote file is actually newer than a local
- copy before it starts a download (HTTP only).
- * Added a -logger option to allow the class which performs logging to be
- specified on the command line.
- * Added a -emacs option to tell the logger to leave out taskname adornments
- on log output.
- * <chmod> works on all files in parallel and supports multiple filesets.
- * <replace> can now use tokens and/or values that cross line boundaries.
- * build.compiler supports now jvc as well.
- * project specific help can now be obtained with the -projecthelp option.
- * Added a -debug option to make -verbose less verbose (and more useful)
- * Ant will now search for a file named build.xml in the parent directory
- and above (towards the root of the filesystem) if you didn't specify
- -buildfile and there is no build.xml in the current directory.
- * <echo> can now write to a file and accepts nested text.
- Fixed bugs:
- -----------
- * <chmod> didn't work when used as a directory based task.
- * Path, Available, Property didn't resolve relative filenames with
- respect to the Project's basedir.
- * Project didn't interpret the basedir attribute correctly in all
- cases.
- * Nested <src> in <javac> caused NullPointerException.
- * Corrupt Zip- and Jar-files ar now deleted if the task fails.
- * many more fixes we've forgotten to document here ...
- * The packagelistloc attribute of <javadoc>'s <link> child will be
- resolved as a file (i.e. it is either absolute or relative to
- basedir).
|