xonsh/news/rs.rst

51 lines
2 KiB
ReStructuredText
Raw Normal View History

2016-10-04 20:27:33 -04:00
**Added:**
2016-10-04 20:59:17 -04:00
* New subprocess specification class ``SubprocSpec`` is used for specifiying
2016-10-04 20:27:33 -04:00
and manipulating subprocess classes prior to execution.
* New ``PopenThread`` class runs subprocesses on a a separate thread.
* New ``CommandPipeline`` and ``HiddenCommandPipeline`` classes manage the
execution of a pipeline of commands via the execution of the last command
in the pipeline. Instances may be iterated and stream lines from the
stdout buffer.
* ``$XONSH_STORE_STDOUT`` is now available on all platforms!
* The ``CommandsCache`` now has the ability to predict whether or not a
command must be run in the foreground using ``Popen`` or may use a
background thread and can use ``PopenThread``.
* Callable aliases may now use the full gamut of functions signatures:
``f()``, ``f(args)``, ``f(args, stdin=None)``,
``f(args, stdin=None, stdout=None)``, and `
``f(args, stdin=None, stdout=None, stderr=None)``.
* Uncaptured subprocesses now recieve a PTY file handle for stdout and
stderr.
2016-10-05 10:10:47 -04:00
* New ``$XONSH_PROC_FREQUENCY`` environment variable that specifies how long
loops in the subprocess framwork should sleep. This may be adjusted from
its default value to improved perfromance and mitigate "leaky" pipes on
slower machines.
2016-10-04 20:27:33 -04:00
**Changed:**
* The ``run_subproc()`` function has been replaced with a new implementation.
* Piping between processes now uses OS pipes.
* ``$XONSH_STORE_STDIN`` now uses ``os.pread()`` rather than ``tee`` and a new
file.
**Deprecated:** None
**Removed:**
2016-10-04 20:59:17 -04:00
* ``CompletedCommand`` and ``HiddenCompletedCommand`` classes have been removed
in favor of ``CommandPipeline`` and ``HiddenCommandPipeline``.
* ``SimpleProcProxy`` and ``SimpleForegroundProcProxy`` have been removed
in favor of a more general mechanism for dispatching callable aliases
implemented in the ``ProcProxy`` class.
2016-10-04 20:27:33 -04:00
**Fixed:**
* May now Crtl-C out of an infinite loop with a subprocess, such as
```while True: sleep 1``.
* Fix for stdin redirects.
* Backgrounding works with ``$XONSH_STORE_STDOUT``
**Security:** None