summaryrefslogtreecommitdiff
path: root/WHATSNEW
diff options
context:
space:
mode:
Diffstat (limited to 'WHATSNEW')
-rw-r--r--WHATSNEW453
1 files changed, 434 insertions, 19 deletions
diff --git a/WHATSNEW b/WHATSNEW
index 89b4cfa72..73539a95b 100644
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -1,40 +1,281 @@
-Changes from Ant 1.9.15 TO Ant 1.9.16
-=====================================
+Changes from Ant 1.10.10 TO Ant 1.10.11
+======================================
+
+Fixed bugs:
+-----------
+
+ * a race condition could lead to NullPointerExceptions when running
+ tasks in parallel.
+ Bugzilla Report 65316
Other changes:
--------------
+ * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
+ has a new protected createExecuteWatchdog() method for allowing it to be overriden.
+ Github Pull Request #147
+
* Upgraded AntUnit to 1.4.1.
+
+Changes from Ant 1.10.9 TO Ant 1.10.10
+======================================
+
Fixed bugs:
-----------
+ * SCP (with sftp=true) task would fail if fetching file located in root directory
+ Bugzilla Report 64742
+
+ * javac task would fail if the arguments file it (internally) created didn't quote
+ the # character. This has now been fixed.
+ Bugzilla Reports 64912, 64790
+
+ * made sure LegacyXmlResultFormatter encodes characters illegal in
+ XML the same way JUnit5's built-in formatter would.
+ Bugzilla Report 65030
+
+ * LegacyXmlResultFormatter no longer double-encodes <>& in system-err
+ and system-out
+ Bugzilla Report 63436
+
+ * Fixes a bug in junitlauncher task's legacy-xml formatter, where the testcase
+ representing a @Parameterized JUnit4 test wasn't being reported in the XML.
+ Bugzilla Report 64952
+
* Fixes a bug where the ant-testutil-sources.jar that gets published to Maven
central repository didn't contain any source files.
Bugzilla Report 65110
+ * The <http> condition didn't follow redirects from http to https.
+ Bugzilla Report 65105
+
+ * ZipOutputStream now overrides write(int) in order to make sure
+ single byte writes get the same treatment as array writes.
+ Github Pull Request #145
+
+ * Fixes a potential deadlock in junitlauncher task when using legacy-xml
+ reporter.
+ Bugzilla Report 64733
+
+Other changes:
+--------------
+
+ * javaversion condition now has a new "atmost" attribute. See the javaversion
+ manual for more details
+
+ * The "listener" nested element of the "junitlauncher" task now has a new
+ "useLegacyReportingName" attribute which can be used to control the test
+ identifiers names that get reported by the listener. See the junitlauncher
+ manual for more details.
+ Note that this change also introduces a new "setUseLegacyReportingName" method
+ on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
+ interface. This will break backward compatibility with any of your custom
+ result formatters which implemented this interface and such implementations
+ are now expected to implement this new method.
+
+ * a new attribute preserveduplicates allows <resourcelist> to return
+ the same resource multiple times when set to true.
+ Bugzilla Report 64854
+
+ * a new attribute filterbeforeconcat in <concat> can be used to
+ decide whether the filterchain should be applied to the
+ concatenated content (the default) or each nested resource
+ individually before concatenating them.
+ Bugzilla Report 64855
+
+ * the ssh tasks now share a new nested element additionalConfig that
+ can be used to set config values for the jsch Session used by the
+ task.
+ Bugzilla Report 65089
+
+ * added new discardOutput and discardError properties to redirector
+ and the exec, apply and java tasks which can be used to completely
+ discard any (error) output. This is a platform independent
+ alternative to directiong output to any kind of null device.
+
+ * junitlauncher now prints a more useful and instantaneous summary of
+ tests being run, closely matching the junit task's summary.
+ Bugzilla Report 64836
+
+Changes from Ant 1.10.8 TO Ant 1.10.9
+=====================================
+
+Fixed bugs:
+-----------
+
+ * the ftp task could throw a NullPointerException if an error occured
+ Bugzilla Report 64438
+
+ * propertyset now also sees in-scope local properties
+ Bugzilla Report 50179
+
+ * replaced our version of ReaderInputStream with the battle-tested
+ version of Apache Commons IO as our version had problems with
+ surrogate pairs (and likely other edge cases as well).
+ Bugzilla Report 40455
+
+ * <fixcrlf> will no longer remove the temporary file it just created
+ before writing to it.
+
+ * <sshexec> and <scp> didn't deal with wildcard hostnames in ssh
+ config files properly.
+ Bugzilla Report 64530
+
+Other changes:
+--------------
+
+ * Ant will no longer log a warning if it doesn't find tools.jar
+ Bugzilla Report 63577
+
+ * the <jar> task accepts now a nested <indexjarsmapper> element
+ that can be used to perform custom filename transformations
+ for the <indexjars> archives.
+ Github Pull Request #134
+
+ * added a new PropertyEnumerator interface that extensions can
+ provide if they are managing properties unknown to the Ant project.
+
+ * added some special code to support GraalVM JavaScript as
+ javax.script scripting engine for JavaScript. In particular we
+ relax some security settings of GraalVM so that scripts can access
+ Ant objects.
+
+ Also Ant enables Nashorn compatibility mode by default, you can
+ disable that by setting the magic Ant property
+ ant.disable.graal.nashorn.compat to true.
+
+ See the script task manual for additional details.
+
+ * If the magic property ant.tmpdir hasn't been set and Ant can
+ control the permissions of directories it creates it will create an
+ owner-owned temporary directory unaccessible to others as default
+ tempdir as soon as a temporary file is created for the first time,
-Changes from Ant 1.9.14 TO Ant 1.9.15
+Changes from Ant 1.10.7 TO Ant 1.10.8
=====================================
+Fixed bugs:
+-----------
+
+ * "legacy-xml" formatter of junitlauncher task wasn't writing out
+ the stacktrace for failures. This is now fixed.
+ Bugzilla Report 63827
+
+ * sshexec failed to write output to a file if the file didn't exist
+
+ * Fixes a regression in javac task involving command line argument
+ files.
+ Bugzilla Report 63874
+
+ * sshexec, sshsession and scp now support a new sshConfig parameter.
+ It specified the SSH configuration file (typically ${user.home}/.ssh/config)
+ defining the username and keyfile to be used per host.
+
+ * "legacy-xml" formatter of junitlauncher task wasn't writing out
+ exceptions that happen in @BeforeAll method of a test. This is now fixed.
+ Bugzilla Report 63850
+
+ * Building Ant from source could result in the javadocs target failing if the
+ optional dependencies were missing. This has now been fixed.
+ Bugzilla Report 63438
+
+ * Fixes a potential ConcurrentModificationException in XMLLogger.
+ Bugzilla Report 63921
+
+ * Fixes a bug in junitlauncher task in forked mode, where if a listener element
+ was used as a sibling element for either the test or testclasses element,
+ then the forked mode launch would fail.
+ Bugzilla Report 63958
+
+ * Fixes an issue in AntStructure where an incorrect DTD was being generated.
+ Github Pull Request #116
+
+ * Fixes an incorrect variable name usage in junit-frames-xalan1.xsl.
+ Github Pull Request #117
+
Other changes:
--------------
+ * org.apache.tools.mail.MailMessage will now send a fully qualified
+ domain name in its HELO message.
+ Github Pull Request #101
+
* The runant.py script should now work with Python 3.
Github Pull Request #96
+ * tstamp task now honors SOURCE_DATE_EPOCH environment variable for
+ reproducible builds (https://reproducible-builds.org/specs/source-date-epoch/#idm55)
+ Bugzilla Report 62617
+
* rmic has been removed from Java 15. The task will now throw an
exception if you try to use it while running Java 15 or newer.
* a new property ant.tmpdir provides improved control over the
location Ant uses to create temporary files
-Changes from Ant 1.9.13 TO Ant 1.9.14
+Changes from Ant 1.10.6 TO Ant 1.10.7
+=====================================
+
+Fixed bugs:
+-----------
+
+ * FTP still tries checking or entering directories after a timeout
+ Bugzilla Report 63454
+
+ * junitlauncher - does not detect failure in @BeforeAll
+ Bugzilla Report 63479
+
+ * Error using ant-1.10.6 with jdk8
+ Bugzilla Report 63457
+
+ * FTP task no longer duplicates a check for a file being a symlink.
+ Bugzilla Report 63259
+
+ * junitlauncher task, when used in fork mode with "<testclasses>",
+ used to create the wrong number of listeners per test class. This
+ has now been fixed.
+ Bugzilla Report 63446
+
+ * The "legacy-xml" junitlauncher task's listener would not include
+ @ParameterizedTest testcases in its XML report file. This has now
+ been fixed.
+ Bugzilla Report 63680
+
+Other changes:
+--------------
+
+ * FTP task timeout improvements.
+ Bugzilla Reports 63252 and 47414
+
+ * junitlauncher task now supports selecting test classes for execution,
+ based on the JUnit 5 tags, through the new "includeTags" and
+ "excludeTags" attributes.
+
+ * prefer https over http when building ant itself, and in the ant
+ documentation and sources
+
+ * changed the references and Maven coordinates of JavaMail dependency
+ to Jakarta Mail and thus javax.mail to jakarta.mail - and upgraded
+ the dependency to 1.6.3.
+
+Changes from Ant 1.10.5 TO Ant 1.10.6
=====================================
Changes that could break older environments:
-------------------------------------------
+ * image task no longer works on Java 9+ because internal classes
+ supporting Java Advanced Imaging are removed; imageio task (based on
+ ImageIO and AWT) is provided as a replacement.
+
+ * junitlauncher task has changed the class names and package names of
+ the task as well as some of the supporting classes of that task. If
+ any code depended on these class or package names, they will have to
+ be updated to reference these newly named classes. This however,
+ doesn't impact build scripts if their reference to junitlauncher task
+ was merely through the use of the <junitlauncher> element.
+
* ClearCase#runS has been augmented by a two arg-version and the
one-arg version will no longer be called. This may affect
subclasses that have overridden runS.
@@ -46,6 +287,10 @@ Fixed bugs:
mail task.
Bugzilla Report 62621
+ * Fixes an issue in junitreport task, which used to throw a
+ java.net.MalformedURLException when saxon was used on Windows OS.
+ Bugzilla Report 62594
+
* augment task now throws a BuildException (as noted in its manual)
instead of a IllegalStateException in the absence of the "id" attribute.
Bugzilla Report 62655
@@ -54,10 +299,29 @@ Fixed bugs:
an incorrect compression level for a zip entry. This is now fixed.
Bugzilla Report 62686
+ * sync task, in some cases on case insensitive file systems, would consider
+ a file in a destination directory to be orphaned and would delete it.
+ This task has now been fixed to infer the case sensitivity of the filesystem
+ of the destination directory.
+ Bugzilla Report 62890
+
+ * Fixes a potential java.util.ConcurrentModificationException in
+ org.apache.tools.ant.Project#getCopyOfReferences.
+ Github Pull Request #81
+
* cccheckout would ignore an error of the "ls checkout" command even
if failOnError was set to false.
Bugzilla Report 63071
+ * The isreachable condition could in some cases return true even if the
+ actual address could potentially be unreachable. This is now fixed
+ and the resolved address is actually checked for reachability.
+
+ * Fixes an issue where scp transfer completion tracking wasn't being
+ triggered for 100% completion.
+ Github Pull Request #91
+
+
Other changes:
--------------
* generatekey task now supports SubjectAlternativeName during key
@@ -66,6 +330,9 @@ Other changes:
* the <modified> selector has a new built-in algorithm 'lastmodified'
which computes a value based upon the lastmodified time of the file.
+ * junitlauncher task now supports running tests in a forked JVM. More
+ details available in the junitlauncher task manual.
+
* signjar and verifyjar now support the -providerName, -providerClass
and -providerArg command line options of keytool via new attributes.
Bugzilla Report 65234
@@ -77,16 +344,38 @@ Other changes:
* added several attributes to <javadoc> that support modules.
Bugzilla Report 62424
+ * properties used or set by BuildFileTask/BuildFileRule are documented
+ in MagicTestNames. A new magic property, ant.test.basedir.ignore, is
+ introduced for cases where Ant projects set up for test purposes
+ must ignore basedir set externally by test harness.
+
+ * a new CharSet type is provided for encoding or charset attributes in
+ tasks that must deal with different character encodings in files,
+ file names and other string resources.
+
+ * org.apache.tools.ant.AntClassLoader is now multi-release jar aware.
+ Starting Java 9, jar files can be packaged as multi-release jars,
+ AntClassLoader now recognizes such multi-release jar files while
+ loading resources at runtime in Java 9+ runtime environments.
+ Bugzilla Report 62952
+
+ * Added jmod and link tasks, to support jmod and jlink tools of JDK 9+.
+ Github Pull Request #80
+
* Jsch library dependency has now been upgraded to 0.1.55. Jsch is
the library behind the sshexec and scp Ant tasks.
Github Pull Request #84
+ * The "http" condition, now has a "readTimeout" attribute which can be
+ used to control the amount of time to wait for the read to complete.
+ Bugzilla Report 63193
+
* ftp task manual has been updated to mention that the remote listing of
files honours the followsymlinks attribute.
Bugzilla Report 63226
-Changes from Ant 1.9.12 TO Ant 1.9.13
+Changes from Ant 1.10.4 TO Ant 1.10.5
=====================================
Fixed bugs:
@@ -103,7 +392,12 @@ Fixed bugs:
root.
Bugzilla Report 62502
-Changes from Ant 1.9.11 TO Ant 1.9.12
+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:
@@ -133,6 +427,15 @@ Fixed bugs:
* 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.
@@ -144,6 +447,9 @@ Fixed bugs:
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
@@ -156,6 +462,11 @@ Other changes:
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.
@@ -166,7 +477,15 @@ Other changes:
can be used to specify the file's encoding.
Bugzilla Report 62379
-Changes from Ant 1.9.10 TO Ant 1.9.11
+ * 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:
@@ -178,12 +497,23 @@ Changes that could break older environments:
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
@@ -197,16 +527,48 @@ Fixed bugs:
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
+ requested. Java 11 removes support for CORBA and the switches have
been removed from the rmic tool.
-Changes from Ant 1.9.9 TO Ant 1.9.10
-====================================
+ * 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:
-----------
@@ -214,6 +576,9 @@ Fixed bugs:
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.
@@ -224,6 +589,11 @@ Fixed bugs:
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.
@@ -245,9 +615,23 @@ Other changes:
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
@@ -277,20 +661,21 @@ Other changes:
* Updated Maven Ant Tasks, Jakarta Regexp and JUnit 4 to the latest
stable version (2.1.3, 1.4, and 4.12 respectively); updated
- Java Mail API, JRuby and Jython to the latest Java 5 compatible
- version (1.5.6, 1.6.8 and 2.5.3, respectively); added resolve targets
- for Ivy and AntUnit to facilitate releases and updates, respectively.
+ JRuby to the latest Java 5 compatible version (1.6.8); added
+ resolve target for AntUnit to facilitate updates.
Github Pull Request #50
-* Updated Commons Net to the latest Java 5 compatible version (2.2).
+ * 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.9.8 TO Ant 1.9.9
-===================================
+Changes from Ant 1.10.0 TO Ant 1.10.1
+=====================================
Fixed bugs:
-----------
- * Ant 1.9.8 made Path#systemClasspath final which broke the Eclipse
+ * Ant 1.10.0 made Path#systemClasspath final which broke the Eclipse
integration.
Bugzilla Report 60582
@@ -300,17 +685,36 @@ Fixed bugs:
newlines present in command line arguments.
Bugzilla Report 60562
-Changes from Ant 1.9.7 TO Ant 1.9.8
-===================================
+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.
@@ -318,6 +722,9 @@ Changes that could break older environments:
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:
-----------
@@ -365,6 +772,11 @@ Fixed bugs:
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
@@ -402,6 +814,9 @@ Other changes:
* 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