| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| Apache Commons Exec |
| Version 1.4.0 |
| Release Notes |
| |
| Apache Commons Exec is a library to reliably execute external processes from within the JVM. |
| |
| Maintenance and feature Release (Java 8 or above) |
| |
| Changes in this version include: |
| |
| New features: |
| o Add ShutdownHookProcessDestroyer.isEmpty(). Thanks to Gary Gregory. |
| o Add DefaultExecuteResultHandler.waitFor(Duration). Thanks to Gary Gregory. |
| o Add Watchdog.Watchdog(Duration). Thanks to Gary Gregory. |
| o Add ExecuteWatchdog.ExecuteWatchdog(Duration). Thanks to Gary Gregory. |
| o Add PumpStreamHandler.setStopTimeout(Duration) and deprecate PumpStreamHandler.setStopTimeout(long). Thanks to Gary Gregory. |
| o Add DefaultExecutor.Builder. Thanks to Gary Gregory. |
| o Add DaemonExecutor.Builder. Thanks to Gary Gregory. |
| o Add ExecuteWatchdog.Builder. Thanks to Gary Gregory. |
| o Add Watchdog.Builder. Thanks to Gary Gregory. |
| |
| Fixed Bugs: |
| o EXEC-105: Fix code snippet in tutorial page. Thanks to Dimitrios Efthymiou. |
| o EXEC-100: Sync org.apache.commons.exec.OS with the newest Ant source file. |
| o EXEC-64: DefaultExecutor swallows IOException cause instead of propagating it (work-round for Java 1.5). Thanks to Michael Vorburger. |
| o Java-style Array declaration and remove empty finally block #26. Thanks to nullptr. |
| o Use JUnit 5 assertThrows() #72. Thanks to John Patrick. |
| o [StepSecurity] ci: Harden GitHub Actions #107. Thanks to step-security-bot, Gary Gregory. |
| o Port from JUnit 4 to 5. Thanks to Gary Gregory. |
| o [Javadoc] CommandLine.toCleanExecutable(final String dirtyExecutable) IllegalArgumentException #61. Thanks to ArdenL-Liu, Gary Gregory. |
| o ExecuteException propagates its cause to its IOException superclass. Thanks to Gary Gregory. |
| o Propagate exception in DebugUtils.handleException(String, Exception). Thanks to Gary Gregory. |
| o Deprecate StringUtils.toString(String[], String) in favor of String.join(CharSequence, CharSequence...). Thanks to Gary Gregory. |
| o EXEC-78: No need to use System.class.getMethod("getenv",...) any more. |
| o EXEC-70: Delegate thread creation to java.util.concurrent.ThreadFactory. |
| o Avoid NullPointerException in MapUtils.prefix(Map, String). Thanks to Gary Gregory. |
| |
| Changes: |
| o Bump github actions #52. Thanks to Gary Gregory, Dependabot. |
| o EXEC-111: Update from Java 5 to 6. Thanks to Gary Gregory. |
| o Update from Java 7 to 8. Thanks to Gary Gregory. |
| o Bump actions/cache from 2 to 3.0.11 #48, #51, #55, #69. Thanks to Gary Gregory. |
| o Bump actions/checkout from 2.3.2 to 3.1.0 #24, #46, #68. Thanks to Dependabot, Gary Gregory. |
| o Bump actions/setup-java from 1.4.0 to 3.8.0 #21, #50, #70, #78. Thanks to Dependabot, Gary Gregory. |
| o Bump junit from 4.13 to 5.9.1 Vintage #23, #33. Thanks to Dependabot. |
| o Bump maven-pmd-plugin from 2.7.1 to 3.19.0 #45, #62. Thanks to Dependabot. |
| o Bump maven-checkstyle-plugin from 2.13 to 3.2.0 #29, #60. Thanks to Dependabot. |
| o Bump commons-parent from 52 to 65, #49, #65, #79, #88, #105, #137. Thanks to Dependabot, Gary Gregory. |
| o Bump japicmp-maven-plugin from 0.15.6 to 0.16.0. Thanks to Gary Gregory. |
| |
| Removed: |
| o Deprecate DefaultExecuteResultHandler.waitFor(long). Thanks to Gary Gregory. |
| o Deprecate ExecuteWatchdog.ExecuteWatchdog(long). Thanks to Gary Gregory. |
| o Deprecate Watchdog.Watchdog(long). Thanks to Gary Gregory. |
| o Drop obsolete and unmaintained Ant build. Thanks to Gary Gregory. |
| o Drop CLIRR plugin, replaced by JApiCmp. Thanks to Gary Gregory. |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-exec//changes-report.html |
| |
| For complete information on Apache Commons Exec, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Commons Exec website: |
| |
| https://commons.apache.org/proper/commons-exec/ |
| |
| Download page: https://commons.apache.org/proper/commons-exec//download_text.cgi |
| |
| Have fun! |
| -Apache Commons Team |
| |
| ============================================================================= |
| |
| Apache Commons Exec 1.3 RELEASE NOTES |
| |
| The Apache Commons Exec team is pleased to announce the commons-exec-1.3 release! |
| |
| Apache Commons Exec is a library to reliably execute external processes from within the JVM. |
| |
| Changes in this version include: |
| |
| New features: |
| o DefaultExecutor async execute prevents shutdown hooks running. |
| Issue: EXEC-69. Thanks to Richard Atkins, Michael Vorburger. |
| |
| Fixed Bugs: |
| o Remove remaining raw types, unchecked conversions |
| Issue: EXEC-81. Thanks to Stephen Compall. |
| |
| o NPE in EnvironmentUtils.toString(map) |
| Issue: EXEC-80. |
| |
| Changes: |
| o No need to use System.class.getMethod("getenv",...) any more |
| Issue: EXEC-78. |
| |
| o Update JUnit dependency to 4.11 |
| Issue: EXEC-77. |
| |
| o Update to Java 5 |
| Issue: EXEC-76. |
| |
| |
| Have fun! |
| -Apache Commons Exec team |
| |
| ============================================================================= |
| |
| Apache Commons Exec 1.2 RELEASE NOTES |
| |
| The Apache Commons Exec team is pleased to announce the Apache commons-exec-1.2 release! |
| |
| Apache Commons Exec is a library to reliably execute external processes from within the JVM. |
| |
| Feature and fix release. Requires a minimum of Java 1.3. |
| |
| Changes in this version include: |
| |
| New features: |
| |
| o Set names for started threads. Issue: EXEC-55. Thanks to Dominik Stadler. |
| |
| Fixed Bugs: |
| |
| o Issue: EXEC-68. |
| Watchdog kills process immediately if timeout is too large. |
| Thanks to Joel McCance. |
| |
| o Issue: EXEC-57. |
| Applied the patch from Nickolay Martinov but the timeout disguises the fact that the process might be still running. |
| Therefore added a sanity check in order to throw an exception if the timeout for join() was exceeded. |
| Thanks to Nickolay Martinov. |
| |
| o Issue: EXEC-60. |
| Fixed deadlock by calling the timeout observers outside of the synchronized block thereby removing a prerequisite of a deadlock. |
| Also added a test case to demonstrate that this problem is fixed (which of course can not guarantee the absence of a dead lock). |
| Thanks to Peter Kofler. |
| |
| o Issue: EXEC-52. |
| Tests fail on HP-UX, because it uses a different syntax for the ping command. |
| Thanks to Nickolay Martinov. |
| |
| o Issue: EXEC-49. |
| "Write dead end" IOException when using Piped streams w/PumpStreamHandler. |
| When encountering a PipedOutputStream we will automatically close it to avoid the exception. |
| Thanks to Kevin Telford. |
| |
| o Issue: EXEC-34. |
| Race condition prevent watchdog working using ExecuteStreamHandler. |
| Patch submittd by Kristian Rosenvold. |
| Thanks to Marco Ferrante. |
| |
| For complete information on Apache Commons Exec, including instructions on how to submit bug reports, patches, or suggestions for improvement, see the Apache Commons Exec website: |
| |
| https://commons.apache.org/proper/commons-exec/ |
| |
| |
| Have fun! |
| -Apache Commons Exec team |
| |
| ============================================================================= |
| |