* partially applied functions with functools.partial have been fixed for _out and _err callbacks #160
* _out or _err being callables no longer puts the running command in the background. to achieve the previous behavior, pass _bg=True to your command.
* deprecated _with contexts #195
* _timeout_signal allows you to specify your own signal to kill a timed-out process with. use a constant from the signal stdlib module. #171
* signal exceptions can now be caught by number or name. SignalException_9 == SignalException_SIGKILL
* child processes that timeout via _timeout raise sh.TimeoutException instead of sh.SignalExeception_9 #172
* fixed help(sh) from the python shell and pydoc sh from the command line. #173
* program names can no longer be shadowed by names that sh.py defines internally. removed the requirement of trailing underscores for programs that could have their names shadowed, like id.
* memory optimization when a child process's stdin is a newline-delimted string and our bufsize is newlines
* feature, _done special keyword argument that accepts a callback to be called when the command completes successfully #185
* bugfix for being unable to print a baked command in python3+ #176
* bugfix for cwd not existing and causing the child process to continue running parent process code #202
* child process is now guaranteed to exit on exception between fork and exec.
* fix python2 deprecation warning when running with -3 PR #165
* bugfix where sh.py was attempting to execute directories #196, PR #189
* only backgrounded processes will ignore SIGHUP
* allowed ok_code to take a range object. #PR 210
* added sh.args with context which allows overriding of all command defaults for the duration of that context.
* added sh.pushd with context which takes a directory name and changes to that directory for the duration of that with context. PR #206
* tests now include python 3.4 if available. tests also stop on the first python that suite that fails.
* SIGABRT, SIGBUS, SIGFPE, SIGILL, SIGPIPE, SIGSYS have been added to the list of signals that throw an exception PR #201
* "callable" builtin has been faked for python3.1, which lacks it.
* "direct" option added to _piped special keyword argument, which allows sh to hand off a process's stdout fd directly to another process, instead of buffering its stdout internally, then handing it off. #119