===============================
 pyutilib.subprocess CHANGELOG
===============================

-------------------------------------------------------------------------------
 Version 3.6.2
-------------------------------------------------------------------------------

- A bug fix for ctypes imports to support killing processes on MS Windows

-------------------------------------------------------------------------------
 Version 3.6.1
-------------------------------------------------------------------------------

- Fixes for output redirection
  - squash bug with the merged reader when pywin32 is installed
  - prevent exception if the output stream closes before the subprocess stream 

-------------------------------------------------------------------------------
 Version 3.6
-------------------------------------------------------------------------------

-  Overhaul of output redirection:
   - stderr is not redirected to stdout by default. This brings
   pyutilib.subprocess in line with the way python's subprocess
   module works.

   - stderr and stdout are "tee'able" separately by passing a
   2-element tuple to the "tee=" option

   - we can now use StringIO objects as stdout/stderr "files"
   (python's subprocess cannot accept StringIO objects directly)

   - more intuitive merging of stdout and stderr streams (line-by-line)

-------------------------------------------------------------------------------
 Version 3.5.4
-------------------------------------------------------------------------------

- For 3.x, 'str' types need to be encoded to 'bytes' before sending to stdin

- Closing a temporary file after we're done with it.

-------------------------------------------------------------------------------
 Version 3.5.3
-------------------------------------------------------------------------------

- Bug fix for exception handling.

- Removed test that dies ungracefully under PyPy

-------------------------------------------------------------------------------
 Version 3.5.2
-------------------------------------------------------------------------------

- Bug fix: using sys.platform instead of os.uname

- Resolving stream configuration issues with the temporary file.
  The default configuration for temporary files is w+b, but for
  some reason I get errors when I try to write to such a file.

- Adding tests to validate that subprocess output is captured, and
  that it can be tee'd to two streams.  Referencing sys.stdout to get
  encoding info, since sys.stdout might be overwritten.

- Convert text that may be bytes.

- Skipping memmon test on Darwin.

-------------------------------------------------------------------------------
 Version 3.5.1
-------------------------------------------------------------------------------

- Reverting changes that were causing problems in Python 2.x.

-------------------------------------------------------------------------------
 Version 3.5
-------------------------------------------------------------------------------

- Portability changes for Python 3.x

-------------------------------------------------------------------------------
 Version 3.4
-------------------------------------------------------------------------------

- Removing distracting output from tests.

- Switching pyutilib.subprocess from shlex.split to
  pyutilib.misc.quote_split because shelex.split appears to mishandle
  backslashes on Windows.

- Adding the ability to specify an input string to send to pyutilib.subprocess stdin.

- run_command() and SubprocessMngr now accept argument lists as
  well as single command string. Internally, the single string is
  tokenized into individual arguments before passing to subprocess.Popen().

-------------------------------------------------------------------------------
 Version 3.3
-------------------------------------------------------------------------------

- Adding a 'debug' option for the run() function.

- Adding tests that verify that the memmon and valgrind options work.

- Deprecating functionality for Python <2.4

- Changing the API of the kill_process method, which more effectively
  supports debugging.

- Change command-line for a test to execute without a shell. This is
  a critical issue, since this executable doesn't terminate … and the
  logic to enforce termination does not work on Windows if a shell is used.

- Protecting the ctypes import for Python2.4

-------------------------------------------------------------------------------
 Version 3.2.3
-------------------------------------------------------------------------------

- Reformatting with reindent

-------------------------------------------------------------------------------
 Version 3.2.2
-------------------------------------------------------------------------------

- Fixing issue on Windows spawning subprocesses.

-------------------------------------------------------------------------------
 Version 3.2.1
-------------------------------------------------------------------------------

- Update to package README files to point to the new PyUtilib? mailing lists.

-------------------------------------------------------------------------------
 Version 3.2
-------------------------------------------------------------------------------

- Misc edits to enable the import of this package within Jython.

- Only import ctypes with an MSWindows CPython installation.

-------------------------------------------------------------------------------
 Version 3.1
-------------------------------------------------------------------------------

- Serializing stdout and stderr output into stdout. If we segregate
  stdout and stderr into separate threads, then their output might be overlayed 
  in unexpected ways.  This change is motivated by our use of the 'timer'
  application, which prints stderr after flushing stdout.  Running 'timer' 
  within pyutilib.subprocess led to overlayed output.

-------------------------------------------------------------------------------
 Version 3.0
-------------------------------------------------------------------------------

- Initial release PyUtilib to create the pyutilib.subprocess package.

- See pyutilib.dist for previous ChangeLog information related to PyUtilib.

- Misc fix to improve testing robustness.

- Bug fix for output message.

