2015-12-30 22:54:32 -08:00
|
|
|
================
|
|
|
|
Xonsh Change Log
|
|
|
|
================
|
|
|
|
|
|
|
|
Current Developments
|
|
|
|
====================
|
2016-03-23 18:12:59 -04:00
|
|
|
**Added:**
|
|
|
|
|
|
|
|
* Added a new shell type ``'none'``, used to avoid importing ``readline`` or
|
|
|
|
``prompt_toolkit`` when running scripts or running a single command.
|
2016-03-21 14:54:42 +02:00
|
|
|
* New: `sudo` functionality on Windows through an alias
|
2016-03-23 14:28:39 +01:00
|
|
|
* Automatically enhance colors for readability in the default terminal (cmd.exe)
|
|
|
|
on Windows. This functionality can be enabled/disabled with the
|
|
|
|
$INTENSIFY_COLORS_ON_WIN environment variable.
|
2016-03-31 16:56:39 -04:00
|
|
|
* Added ``Ellipsis`` lookup to ``__xonsh_env__`` to allow environment variable checks, e.g. ``'HOME' in ${...}``
|
2016-03-23 14:28:39 +01:00
|
|
|
|
|
|
|
|
2016-03-23 18:12:59 -04:00
|
|
|
**Changed:**
|
2016-03-20 13:52:40 -04:00
|
|
|
|
2016-03-23 18:12:59 -04:00
|
|
|
* Running scripts through xonsh (or running a single command with ``-c``) no
|
|
|
|
longer runs the user's rc file, unless the ``--login`` option is specified.
|
|
|
|
Also avoids loading aliases and environments from foreign shells, as well as
|
|
|
|
loading bash completions.
|
|
|
|
* rc files are now compiled and cached, to avoid re-parsing when they haven't
|
|
|
|
changed.
|
2016-03-20 13:52:40 -04:00
|
|
|
|
|
|
|
**Deprecated:** None
|
|
|
|
|
|
|
|
**Removed:** None
|
|
|
|
|
2016-03-22 23:57:51 -04:00
|
|
|
**Fixed:**
|
|
|
|
|
|
|
|
* Fixed bug with loading prompt-toolkit shell < v0.57.
|
2016-03-20 13:52:40 -04:00
|
|
|
|
|
|
|
**Security:** None
|
|
|
|
|
|
|
|
v0.2.7
|
|
|
|
====================
|
2016-02-13 01:37:23 -05:00
|
|
|
**Added:**
|
|
|
|
|
|
|
|
* Added new valid ``$SHELL_TYPE`` called ``'best'``. This selects the best value
|
|
|
|
for the concrete shell type based on the availability on the user's machine.
|
2016-02-18 01:06:29 -05:00
|
|
|
* New environment variable ``$XONSH_COLOR_STYLE`` will set the color mapping
|
|
|
|
for all of xonsh.
|
|
|
|
* New ``XonshStyle`` pygments style will determine the approriate color
|
|
|
|
mapping based on ``$XONSH_COLOR_STYLE``. The associated ``xonsh_style_proxy()``
|
|
|
|
is intended for wrapping ``XonshStyle`` when actually being used by
|
|
|
|
pygments.
|
|
|
|
* The functions ``print_color()`` and ``format_color()`` found in ``xonsh.tools``
|
|
|
|
dispatch to the approriate shell color handling and may be used from
|
|
|
|
anywhere.
|
|
|
|
* ``xonsh.tools.HAVE_PYGMENTS`` flag now denotes if pygments is installed and
|
|
|
|
available on the users system.
|
|
|
|
* The ``ansi_colors`` module is now availble for handling ANSI color codes.
|
|
|
|
* ``?`` and ``??`` operator output now has colored titles, like in IPython.
|
|
|
|
* ``??`` will syntax highlight source code if pygments is available.
|
|
|
|
* Python mode output is now syntax highlighted if pygments is available.
|
2016-02-21 13:00:01 -05:00
|
|
|
* New ``$RIGHT_PROMPT`` environment variable for displaying right-aligned
|
|
|
|
text in prompt-toolkit shell.
|
2016-03-12 19:33:17 -05:00
|
|
|
* Added ``!(...)`` operator, which returns an object representing the result
|
2016-03-16 12:33:03 -04:00
|
|
|
of running a command. The truth value of this object is True if the
|
|
|
|
return code is equal to zero and False otherwise.
|
2016-03-06 21:52:54 +01:00
|
|
|
* Optional dependency on the win_unicode_console package to enable unicode
|
|
|
|
support in cmd.exe on Windows. This can be disabled/enabled with the
|
|
|
|
``$WIN_UNICODE_CONSOLE`` environment variable.
|
2016-02-07 18:00:22 -05:00
|
|
|
|
2016-02-13 01:37:23 -05:00
|
|
|
**Changed:**
|
|
|
|
|
|
|
|
* Updated ``$SHELL_TYPE`` default to ``'best'``.
|
2016-02-18 01:06:29 -05:00
|
|
|
* Shell classes are now responsible for implementing their own color
|
|
|
|
formatting and printing.
|
|
|
|
* Prompt coloring, history diffing, and tracing uses new color handling
|
|
|
|
capabilities.
|
|
|
|
* New ``Token.Color`` token for xonsh color names, e.g. we now use
|
|
|
|
``Token.Color.RED`` rather than ``Token.RED``.
|
2016-03-16 12:33:03 -04:00
|
|
|
* Untracked files in git are ignored when determining if a git workdir is
|
|
|
|
is dirty. This affects the coloring of the branch label.
|
2016-03-08 00:35:10 -05:00
|
|
|
* Regular expression globbing now uses ``re.fullmatch`` instead of
|
|
|
|
``re.match``, and the result of an empty regex glob does not cause the
|
|
|
|
argument to be deleted.
|
2016-02-07 18:00:22 -05:00
|
|
|
|
2016-03-20 13:52:40 -04:00
|
|
|
|
2016-02-07 18:00:22 -05:00
|
|
|
|
2016-02-18 01:06:29 -05:00
|
|
|
**Removed:**
|
|
|
|
|
|
|
|
* The ``xonsh.tools.TERM_COLORS`` mapping has been axed, along with all
|
2016-02-22 23:32:02 -05:00
|
|
|
references to it. This may cause a problem if you were using a raw color code
|
|
|
|
in your xonshrc file from ``$FORMATTER_DICT``. To fix, simply remove these
|
|
|
|
references.
|
2016-02-07 18:00:22 -05:00
|
|
|
|
2016-02-09 02:36:57 -05:00
|
|
|
**Fixed:**
|
|
|
|
|
2016-03-18 12:20:13 -04:00
|
|
|
* Multidimensional slicing, as in numpy, no longer throws SyntaxErrors.
|
2016-02-09 02:36:57 -05:00
|
|
|
* Some minor zsh fixes for more platforms and setups.
|
2016-03-06 23:38:55 -05:00
|
|
|
* The ``BaseShell.settitle`` method no longer has its commands captured by
|
|
|
|
``$(...)``
|
2016-02-07 18:00:22 -05:00
|
|
|
|
2016-03-20 13:52:40 -04:00
|
|
|
|
2016-02-07 18:00:22 -05:00
|
|
|
|
|
|
|
v0.2.6
|
|
|
|
====================
|
2016-02-13 01:37:23 -05:00
|
|
|
**Added:**
|
2016-01-24 12:08:50 -05:00
|
|
|
|
2016-02-13 01:37:23 -05:00
|
|
|
* ``trace`` alias added that enables users to turn on and off the printing
|
2016-02-04 21:48:59 -05:00
|
|
|
of source code lines prior to their execution. This is useful for debugging scripts.
|
|
|
|
* New ability to force callable alias functions to be run in the foreground, i.e.
|
2016-02-13 01:37:23 -05:00
|
|
|
the main thread from which the function was called. This is useful for debuggers
|
2016-02-04 21:48:59 -05:00
|
|
|
and profilers which may require such access. Use the ``xonsh.proc.foreground``
|
|
|
|
decorator on an alias function to flag it. ``ForegroundProcProxy`` and
|
|
|
|
``SimpleForegroundProcProxy`` classes have been added to support this feature.
|
|
|
|
Normally, forcing a foreground alias is not needed.
|
2016-01-24 12:08:50 -05:00
|
|
|
* Added boolean ``$RAISE_SUBPROC_ERROR`` environment variable. If true
|
2016-02-13 01:37:23 -05:00
|
|
|
and a subprocess command exits with a non-zero return code, a
|
2016-01-24 12:08:50 -05:00
|
|
|
CalledProcessError will be raised. This is useful in scripts that should
|
|
|
|
fail at the first error.
|
2016-01-27 18:47:17 -05:00
|
|
|
* If the ``setproctitle`` package is installed, the process title will be
|
|
|
|
set to ``'xonsh'`` rather than the path to the Python interpreter.
|
2016-02-05 23:50:46 -05:00
|
|
|
* zsh foreign shell interface now supported natively in xonsh, like with Bash.
|
|
|
|
New ``source-zsh`` alias allows easy access to zsh scripts and functions.
|
2016-02-13 21:50:44 +03:00
|
|
|
* Vox virtual environment manager added.
|
2016-01-21 21:11:00 -05:00
|
|
|
|
2016-02-05 23:50:46 -05:00
|
|
|
**Changed:**
|
|
|
|
|
|
|
|
* The ``foreign_shell_data()`` keyword arguments ``envcmd`` and ``aliascmd``
|
|
|
|
now default to ``None``.
|
2016-02-05 01:31:34 -05:00
|
|
|
* Updated alias docs to pull in usage from the commands automatically.
|
2016-01-21 21:11:00 -05:00
|
|
|
|
2016-01-25 17:24:16 +02:00
|
|
|
**Fixed:**
|
|
|
|
|
2016-02-04 21:48:59 -05:00
|
|
|
* Hundreds of bugs related to line and column numbers have been addressed.
|
2016-01-25 17:24:16 +02:00
|
|
|
* Fixed path completion not working for absolute paths or for expanded paths on Windows.
|
2016-02-05 11:25:15 -05:00
|
|
|
* Fixed issue with hg dirty branches and $PATH.
|
2016-02-05 23:50:46 -05:00
|
|
|
* Fixed issues related to foreign shell data in files with whitespace in the names.
|
2016-02-13 01:37:23 -05:00
|
|
|
* Worked around bug in ConEmu/cmder which prevented ``get_git_branch()``
|
2016-02-07 15:03:07 -05:00
|
|
|
from working in these terminal emulators on Windows.
|
2016-01-21 21:11:00 -05:00
|
|
|
|
|
|
|
|
|
|
|
v0.2.5
|
|
|
|
===========
|
2015-12-30 22:54:32 -08:00
|
|
|
**Added:**
|
|
|
|
|
2016-02-13 01:37:23 -05:00
|
|
|
* New configuration utility 'xonfig' which reports current system
|
2016-01-06 02:03:49 -08:00
|
|
|
setup information and creates config files through an interactive
|
|
|
|
wizard.
|
|
|
|
* Toolkit for creating wizards now available
|
2016-01-10 23:21:31 -05:00
|
|
|
* timeit and which aliases will now complete their arguments.
|
2016-02-13 01:37:23 -05:00
|
|
|
* $COMPLETIONS_MENU_ROWS environment variable controls the size of the
|
2015-12-30 23:00:05 -08:00
|
|
|
tab-completion menu in prompt-toolkit.
|
2016-01-06 19:04:13 -05:00
|
|
|
* Prompt-toolkit shell now supports true multiline input with the ability
|
|
|
|
to scroll up and down in the prompt.
|
2015-12-30 22:54:32 -08:00
|
|
|
|
|
|
|
**Changed:**
|
|
|
|
|
2016-01-06 02:03:49 -08:00
|
|
|
* The xonfig wizard will run on interactive startup if no configuration
|
|
|
|
file is found.
|
|
|
|
* BaseShell now has a singleline() method for prompting a single input.
|
|
|
|
* Environment variable docs are now auto-generated.
|
2016-02-13 01:37:23 -05:00
|
|
|
* Prompt-toolkit shell will now dynamically allocate space for the
|
2015-12-30 23:00:05 -08:00
|
|
|
tab-completion menu.
|
2016-01-10 19:43:57 -05:00
|
|
|
* Looking up nonexistent environment variables now generates an error
|
|
|
|
in Python mode, but produces a sane default value in subprocess mode.
|
|
|
|
* Environments are now considered to contain all manually-adjusted keys,
|
|
|
|
and also all keys with an associated default value.
|
2015-12-30 22:54:32 -08:00
|
|
|
|
|
|
|
**Removed:**
|
|
|
|
|
2016-02-13 01:37:23 -05:00
|
|
|
* Removed ``xonsh.ptk.shortcuts.Prompter.create_prompt_layout()`` and
|
2016-01-18 16:22:03 -05:00
|
|
|
``xonsh.ptk.shortcuts.Prompter.create_prompt_application()`` methods
|
|
|
|
to reduce portion of xonsh that forks prompt-toolkit. This may require
|
|
|
|
users to upgrade to prompt-toolkit v0.57+.
|
2015-12-30 22:54:32 -08:00
|
|
|
|
|
|
|
**Fixed:**
|
|
|
|
|
2015-12-30 23:02:28 -08:00
|
|
|
* First prompt in the prompt-toolkit shell now allows for up and down
|
|
|
|
arrows to search through history.
|
2016-01-05 11:32:38 -08:00
|
|
|
* Made obtaining the prompt-toolkit buffer thread-safe.
|
2016-02-13 01:37:23 -05:00
|
|
|
* Now always set non-detypable environment variables when sourcing
|
2016-01-10 23:21:31 -05:00
|
|
|
foreign shells.
|
2016-01-14 12:01:21 -05:00
|
|
|
* Fixed issue with job management if a TTY existed but was not controlled
|
|
|
|
by the process, posix only.
|
2016-01-14 14:24:32 -05:00
|
|
|
* Jupyter kernel no longer times out when using foreign shells on startup.
|
2016-01-15 17:35:12 -05:00
|
|
|
* Capturing redirections, e.g. ``$(echo hello > f.txt)``, no longer fails
|
|
|
|
with a decoding error.
|
2016-01-18 22:55:22 -05:00
|
|
|
* Evaluation in a Jupyter cell will return pformatted object.
|
|
|
|
* Jupyter with redirect uncaptured subprocs to notebook.
|
|
|
|
* Tab completion in Jupyter fixed.
|
2015-12-30 22:54:32 -08:00
|
|
|
|
|
|
|
|
|
|
|
v0.2.1 - v0.2.4
|
|
|
|
===============
|
|
|
|
You are reading the docs...but you still feel hungry.
|
|
|
|
|
|
|
|
v0.2.0
|
|
|
|
=============
|
|
|
|
**Added:**
|
|
|
|
|
|
|
|
* Rich history recording and replaying
|
|
|
|
|
|
|
|
v0.1.0
|
|
|
|
=============
|
|
|
|
**Added:**
|
|
|
|
|
|
|
|
* Naturally typed environment variables
|
|
|
|
* Inherits the environment from BASH
|
|
|
|
* Uses BASH completion for subprocess commands
|
|
|
|
* Regular expression filename globbing
|
|
|
|
* Its own PLY-based lexer and parser
|
|
|
|
* xonsh code parses into a Python AST
|
|
|
|
* You can do all the normal Python things, like arithmetic and importing
|
|
|
|
* Captured and uncaptured subprocesses
|
|
|
|
* Pipes, redirection, and non-blocking subprocess syntax support
|
|
|
|
* Help and superhelp with ? and ??
|
|
|
|
* Command aliasing
|
|
|
|
* Multiline input, unlike ed
|
|
|
|
* History matching like in IPython
|
|
|
|
* Color prompts
|
|
|
|
* Low system overhead
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<v0.1.0
|
|
|
|
=============
|
|
|
|
The before times, like 65,000,000 BCE.
|