Changes Report

Release History

Version Date Description
1.0.1 2009-09-28 Maintenance Release
1.0 2009-03-15 First Public Release


Release 1.0.1 - 2009-09-28

Type Changes By
fix On a Mac, the unit tests never finish. Culprit is InputStreamPumper which sets its stop member in the run method; however, run might really be executed after the stopProcessing method is called if the process thread completes before the InputStreamPumper starts. Fixes EXEC-33. henrib
fix Fixes NPE in DefaultExecutor.setExitValues(). Fixes EXEC-40. Thanks to Peter Henderson. sgoeschl
fix Copies all data from an System.input stream to an output stream of the executed process. Fixes EXEC-33. Thanks to Milos Kleint. sgoeschl

Release 1.0 - 2009-03-15

Type Changes By
fix Removed useless synchronized statement in OpenVmsProcessingEnvironment.createProcEnvironment Fixes EXEC-37. Thanks to Sebastien Bazley. sgoeschl
fix Using System.in for child process will actually hang your application - see JIRA for more details. Since there is no easy fix an IllegalRuntimeException is thrown when System.in is passed. Fixes EXEC-33. sgoeschl
fix Fixing a few findbugs issues. Fixes EXEC-35. Thanks to Luc Maisonobe. sgoeschl
fix Handle null streams consistently. Fixes EXEC-32. Thanks to Marco Ferrante. sgoeschl
fix After a long discussion we decided to stick to following groupId "org.apache.commons" instead of "commons-exec". sgoeschl
fix The Ant build now works even when junit is not on the classpath Thanks to Kevin Jackson. sgoeschl
fix Fixed broken "groupId" from "org.apache.commons" to "commons-exec" sgoeschl
fix Renamed EnvironmentUtil to EnvironmentUtils to align with other classes in this project and commons in general. Please note that this change could break existing clients (but would be rather unlikely). Fixes EXEC-27. Thanks to Benjamin Bentmann. sgoeschl
fix Make environment variables respect casing rules of platforms. Under Windows "PATH", "Path" and "path" would access the same environment variable whereas the real name is "Path". Fixes EXEC-30. Thanks to Benjamin Bentmann. sgoeschl
fix Invoking DefaultExecutor.execute(CommandLine command, Map environment) using a 'null' Map results in inheriting all environment variables of the current process while passing an empty map implies starting the new process with no environment variables. In short 'null' is not the same as an empty map. Fixes EXEC-31. Thanks to Benjamin Bentmann. sgoeschl
add Added one additional test : DefaultExecutorTest.testExecuteWithFancyArg Fixes EXEC-26. Thanks to Benjamin Bentmann. sgoeschl
fix Using variable substitution within CommandLine broke the regression tests under Windows. Found also another bug when calling CommandLine.getExecutable() the result was not substituted at all. As a general rule we do variable substitution and file separator fixing on the command line executable and variable substitution but NO file separator fixing for the command line arguments. Fixes EXEC-25. sgoeschl
add Added convinience method to add two parameters to the CommandLine using one method invocation. sgoeschl
fix Implemented better regression test for OpenVMS affecting also the Executor and CommandLauncher interface. sgoeschl
add Added test scripts for OpenVMS - he seems to be the last human having access to an OpenVMS box ... :-) sebb
add With the help of the Apache Commons community I added the first results of cross-OS testing. Thanks to Simone Gianni,Bindul Bhowmik,Niall Pemberton,Sebastian Bazley. sgoeschl
add The regression tests now also works on Windows - so it should work now on Linux, Windows and Mac OS X sgoeschl
add Added DebugUtils to improve cross-platform testing. sgoeschl
remove Removed commons-logging integration sgoeschl
add Made DefaultExecutor.launch() protected to enable mocking. Fixes SANDBOX-62. Thanks to Jeremy Lacoste. sgoeschl
add Made ProcessDestroyer optional and pluggable when using Executor. Fixes SANDBOX-107. Thanks to Niklas Gustavsson. sgoeschl
add CommandLine can now expand the given command line by a user-suppied map. This allows to execute something like "${JAVA_HOME}/bin/java -jar ${myapp}" sgoeschl
add Added methods to provide pre-quoted arguments. Fixes SANDBOX-192. Thanks to Reinhold Fuereder. sgoeschl
add Exposing a ExecuteWatchdog.destroy() to kill an asynchrounous process manually. This formalizes a workaround described in the JIRA Fixes SANDBOX-193. Thanks to Reinhold Fuereder. sgoeschl
add Extending exit value handling to support applications returning an error code. Fixes SANDBOX-203. sgoeschl
fix Cleaned up the source code to get rid of javadoc errors and unused imports. Fixes SANDBOX-204. sgoeschl
add Added a few regression tests for the watchdog since they were missing. Fixes SANDBOX-204. sgoeschl