• Use CRC32 to protect against a race condition where if a run took less than 1 second updates files would not appear to be updated.


  • Python 3 support (thanks Marc Abramowitz!)


  • Python 3 fixes


  • Python 3 compatibility, from Hugo Tavares
  • More Windows fixes, from Hugo Tavares


  • Windows fixes (thanks Dave Abrahams); including an option for more careful string splitting (useful when testing a script with a space in the path), and more careful handling of environmental variables.



  • Fixed regression with FoundDir.invalid


  • Windows fix for cleaning up scratch files more reliably
  • Allow spaces in the script name, e.g., C:/program files/some-script (but you must use multiple arguments to, more_args)).
  • Remove the resolution of scripts to an absolute path (just allow the OS to do this).
  • Don’t fail if there is an invalid symlink


  • now takes a keyword argument quiet. If quiet is false, then if there is any error (return code != 0, or stderr output) the complete output of the script will be printed.
  • ScriptTest puts a marker file in scratch directories it deletes, so that if you point it at a directory not created by ScriptTest it will raise an error. Without this, unwitting developers could point ScriptTest at the project directory, which would cause the entire project directory to be wiped.
  • ProcResults now no longer print the absolute path of the script (which is often system dependent, and so not good for doctests).
  • Added scripttest.ProcResults.wildcard_matches() which returns file objects based on a wildcard expression.


Initial release