+1
- Downloaded the newer version and checked the NOTICE file
- verified the checksum
- Built some projects using this newer version, on Java 8, 17 and 20
- Checked manual docs for some of the tasks
-Jaikiran
On 16/08/23 6:05 pm, Jaikiran Pai wrote:
Hello everyone,
I've created RC1 release candidate for Ant 1.10.14 release:
git tag: ANT_1.10.14_RC1
on commit: 53f19eccf49acf526415997046dca5a5135b0e8f
tarballs: https://dist.apache.org/repos/dist/dev/ant/
revision: 63474
Maven artifacts:
https://repository.apache.org/content/repositories/orgapacheant-1057
Apart from regular bug fixes, this 1.10.14 release has crucial changes
around Ant's usage of Java SecurityManager. Many of you will be aware
that Java 17 deprecated (for removal) the use of SecurityManager. Java
18 then disallowed setting SecurityManager at runtime, by default. Ant
internally sets a SecurityManager at runtime to prevent System.exit()
calls from within tasks, from killing the JVM in which Ant process is
running. In Ant 1.10.13, we tried to keep using the SecurityManager
internally for a few more releases in Ant, to facilitate projects to
use Ant without requiring (major) changes to their build. The
workarounds we put in place in Ant 1.10.13 were brittle and complex
and although we had hoped they won't break user builds, they did end
up breaking several builds. Ultimately, these workarounds for usage of
SecurityManager are no longer feasible or adding value.
As such, this 1.10.14 release of Ant will no longer use (or set) Java
SecurityManager when running on Java versions 18 and higher. This has
implications for projects using Ant. Specifically, if any of the build
tasks (for example the "", "" or "" tasks)
or libraries used in those tasks are calling System.exit() or
Runtime.exit() and aren't forking a new JVM, then when running on Java
18 and higher, they may notice that the Ant JVM process gets killed.
Such builds are recommended to either not call
System.exit()/Runtime.exit() or use the "fork=true" option in relevant
tasks (wherever appropriate).
Furthermore, the usage of "" type when running on Java 18
and higher is no longer supported. More details are available in the
manual of that type https://dist.apache.org/repos/dist/dev/ant/manual/.
The complete set of changes in this release are noted in
https://dist.apache.org/repos/dist/dev/ant/RELEASE-NOTES-1.10.14.html.
Please do give this proposed release version a try against whichever
Java runtime versions you plan to use it against (this version
requires a minimum of Java 8 runtime, like any other Ant 1.10.x
versions). Even if you don't vote, if you do run into issues, please
report back - it takes time to create Ant releases, so catching any
blocker issues (like some of which we saw after Ant 1.10.13 was
released) early will help fix them sooner.
This vote will be open for at least 72 hours and close no earlier than
19th August 2023 12 PM.
-Jaikiran
-
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org