Xonsh

Latest version: v0.17.0

Safety actively analyzes 640747 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 12 of 20

0.7.9

====================

**Added:**

* The python-mode ``(expr)`` syntax may now be used inside of subprocess
arguments, not just as a stand-alone argument. For example:

.. code-block:: sh

$ x = 'hello'
$ echo /path/to/(x)
/path/to/hello

This syntax will even properly expand to the outer product if the ``expr``
is a list (or other non-string iterable) of values:

.. code-block:: sh

$ echo /path/to/(['hello', 'world'])
/path/to/hello /path/to/world

$ echo (['a', 'b']):('x', 'y')
a:x a:y b:x b:y

Previously this was not possible.
* New ``$DOTGLOB`` environment variable enables globs to match
"hidden" files which start with a literal ``.``. Set this
variable to ``True`` to get this matching behavior.
Cooresponding API changes have been made to
``xonsh.tools.globpath()`` and ``xonsh.tools.iglobpath()``
* New environment variable ``$FOREIGN_ALIASES_SUPPRESS_SKIP_MESSAGE``
enables the removal of skipping foreign alias messages.
* New ``--suppress-skip-message`` command line option for skipping
foreign alias messages when sourcing foreign shells.


**Fixed:**

* In Bash completions, if there are no files to source, a ``set()`` will
no longer be inserted into the completion script.
* Fixed issue with TAB completion in readline not replacing values
with spaces properly when the prefix was unquoted.

0.7.8

====================

**Added:**

* ``xonsh.lib.collections.ChainDB``, a chain map which merges mergable fields


**Fixed:**

* Pass all params to voxapi.create
* PTK tab-completion now auto-accepts completion if only one option is present
(note that fix is only for PTK2)

0.7.7

====================

**Added:**

* A xontrib which adds support for autojump to xonsh
* Added new env-var ``XONSH_HISTORY_MATCH_ANYWHERE``. If set to ``True`` then
up-arrow history matching will match existing history entries with the search
term located anywhere, not just at the beginning of the line. Default value is
``False``


**Changed:**

* Improved iteration over virtual environments in ``Vox.__iter__``


**Fixed:**

* Fix for ``Enter`` not returning from Control-R search buffer
* Fixed automatic wrapping of many subprocesses that spanned multiple lines via
line continuation characters with logical operators separating the commands.
For example, the following now works:

.. code-block:: sh

echo 'a' \
and echo 'b'
* Environment swapping would not properly reraise errors due to weird
Python name binding issue.

0.7.6

====================

**Added:**

* Callable aliases may now accept a ``stack`` argument. If they do, then the
stack, as computed from the aliases call site, is provided as a list of
``FrameInfo`` objects (as detailed in the standard library ``inspect``
module). Otherwise, the ``stack`` parameter is ``None``.
* ``SubprocSpec`` now has a ``stack`` attribute, for passing the call stack
to callable aliases. This defaults to ``None`` if the spec does not
need the stack. The ``resolve_stack()`` method computes the ``stack``
attribute.


**Changed:**

* xonsh/environ.py
Exceptions are caught in the code executed under Env.swap()


**Fixed:**

* Scripts are now cached by their realpath, not just abspath.
* Fixed a potential crash (``AssertionError: wrong color format``) on Python 3.5 and prompt_toolkit 1.
* The ``completer`` command now correctly finds completion functions
when nested inside of other functions.
* Fixed a crash when using the ``$XONSH_STDERR_PREFIX/POSTFIX`` with
prompt_toolkit and Pygments 2.2.

0.7.5

====================

**Fixed:**

* Recent command history in ptk2 prompt now returns most recently executed
commands first (as expected)
* Fixed a regression taat prevented the readline backend from beeing used. This
regression was caused by the new ansi-color names, which are incompatible with
pygments 2.2.

0.7.4

====================

**Added:**

* New ``xonsh-cat`` command line utility, which is a xonsh replacement
for the standard UNIX ``cat`` command.
* The new ``xonsh.xoreutils.cat.cat_main()`` enables the ``xonsh.xoreutils.cat``
module to be run as a command line utility.
* New ``CommandsCache.is_only_functional_alias()`` and
``CommandsCache.lazy_is_only_functional_alias()`` methods for determining if
if a command name is only implemented as a function, and thus has no
underlying binary command to execute.
* ``xonsh.xontribs.xontribs_load()`` is a new first-class API for loading
xontribs via a Python function.
* ``$COMPLETIONS_DISPLAY`` now supports readline-like behavior on
prompt-toolkit v2.


**Changed:**

* The xonsh Jupyter kernel now will properly redirect the output of commands
such as ``git log``, ``man``, ``less`` and other paged commands to the client.
This is done by setting ``$PAGER = 'cat'``. If ``cat`` is not available
on the system, ``xonsh-cat`` is used instead.
* The ``setup()`` function for starting up a working xonsh has ``aliases``,
``xontribs``, and ``threadable_predictors`` as new additional keyword
arguments for customizing the loading of xonsh.


**Fixed:**

* Fixed a bug with converting new PTK2 colors names to old names when using PTK1 or Jupyter
as the shell type.
* ``CommandsCache.locate_binary()`` will now properly return None when
``ignore_alias=False`` and the command is only a functional alias,
such as with ``cd``. Previously, it would return the name of the
command.
* Fixed issue with ``$COMPLETIONS_DISPLAY`` raising an error on
prompt-toolkit v2 when the value was not set to ``multi``.
* ValueError when executing ``vox list``

Page 12 of 20

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.