Changes from Ant 1.9.7 TO Ant 1.9.8
===================================

Changes that could break older environments:
-------------------------------------------

 * <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

 * 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

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:
--------------

 * <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.

 * <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