Skip to content

Releases: xonsh/xonsh

0.16.0

23 Apr 18:35
Compare
Choose a tag to compare

Added:

  • Square brackets can now be used in command arguments without quotes (e.g. echo a[b])
  • Add XONSH_BASH_PATH_OVERRIDE option (off-by-default) to override what is
    returned by xonsh.platform.bash_command.
  • Added PATH.prepend(path) to add path to the beginning.

Changed:

  • Xonsh AppImage now on Python 3.12 that works faster.
  • Xonsh AppImage: pinned prompt-toolkit version until fix upstream issue.
  • Builtin aliases (xontrib, history) switched to threadable mode.
  • EnvPath methods (append, remove, add, insert) prepare the path before action.
  • Replaced black formatter with ruff-format <https://docs.astral.sh/ruff/>_
  • source_foreign_fn now does not run subshells in interactive mode, so
    associated RC files like zshrc and bashrc will not be auto-loaded on
    sourcing.

Removed:

  • Removed ArgParserAlias.hook_pre_add_argument, ArgParserAlias.hook_post_add_argument.
    Please use custom action instead to modify the argument options.
  • Removed deprecated module xonsh.proc
  • Removed usage of deprecated cgi module

Fixed:

  • Fixed an issue with completions when using absolute paths to commands and having $UPDATE_COMPLETIONS_ON_KEYPRESS set to True. #5127
  • Jobs: fixed "index out of range" exception.
  • Expressions like 2>1 are now parsed correctly as Python code instead of being treated like special io-redirection operators.
  • Redirect tokens in quotes (e.g. ">", "2>", "2>1") are now correctly passed to commands as regular arguments.
  • Fixed NotADirectoryError during load dircolors.
  • Fixed a bug that caused xonfig web to overwrite its own configuration file. See #5297
  • If an error is encountered while loading the xonshrc file, the traceback is now output as plain text rather than as a list of Tokens

Authors:

  • Gil Forsyth
  • Noortheen Raja
  • anki-code
  • pre-commit-ci[bot]
  • Peter Ye
  • dependabot[bot]
  • l-no

xonsh.AppImage excluded from this release because of #5364.

0.15.1

07 Mar 15:12
Compare
Choose a tag to compare

Fixed:

  • pytest: Fix pytest collection starting at pytest>=8.1.0

Authors:

  • doronz88
  • Daniel Saunders
  • Andrew

0.15.0

25 Feb 00:15
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.14.4...0.15.0

0.14.4

16 Jan 13:58
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.14.3...0.14.4

0.14.3

05 Dec 15:56
Compare
Choose a tag to compare

Added:

  • Added on_pre_spec_run event.
  • Added on_post_spec_run event.

Fixed:

  • xonsh now adds the user site packages directory to sys.path where
    required for proper xontrib discovery

Authors:

  • Gil Forsyth
  • pre-commit-ci[bot]
  • Jacqueline Leykam
  • Joshix-1

0.14.2

17 Nov 15:59
Compare
Choose a tag to compare

Fixed:

  • history: fix json file permissions upon sudo (#5220)
  • cd with no arguments will always return to $HOME
  • Correctly parse multi line foreign aliases
  • Upgrade Python version at the introduction (#5193)

Authors:

  • Gil Forsyth
  • Noortheen Raja
  • anki-code
  • pre-commit-ci[bot]
  • dependabot[bot]
  • doronz88
  • mgunyho
  • ShalokShalom
  • Wilfried Pollan

0.14.1

16 Aug 07:02
Compare
Choose a tag to compare

Added:

  • Added history delete command to both the JSON and SQLite history backends allowing users to delete commands from history that matches a pattern.
  • Now you can become a sponsor to xonsh - https://github.com/sponsors/xonsh
  • Added preliminary support for Python v3.12

Changed:

  • Always load rc files except that --norc is passed.
  • Unset the default line continuation environment variables ($MULTILINE_PROMPT_PRE and $MULTILINE_PROMPT_POS) to allow differentiating between user setting an empty value and not setting anything
  • Dropped support for Python v3.8

Fixed:

  • This change fixes issue #4855, that is, rc files will be loaded in non-interactive mode.
  • platform: fix BASH_COMPLETIONS_DEFAULT on M1
  • Fix wrong verification for the simple output, introduced by PR5072

Authors:

  • Noortheen Raja
  • anki-code
  • pre-commit-ci[bot]
  • Evgeny
  • doronz88
  • Ivan Ogasawara
  • HackTheOxidation
  • Cosine Chen

0.14.0

19 May 13:34
Compare
Choose a tag to compare

Added:

  • key_bindings: map escape-f as another word completer for macOS
  • Added history pull command to SQLite history backend to pull the history from parallel sessions and add to the current session.
  • Add support for Semantic Prompt <https://gitlab.freedesktop.org/Per_Bothner/specifications/blob/master/proposals/semantic-prompts.md>_ for line continuations in multiline prompts via two environment variables: $MULTILINE_PROMPT_PRE (e.g., \x01\x1b]133;P;k=c\x07\x02), and $MULTILINE_PROMPT_POS (e.g., \x01\x1b]133;B\x07\x02) that are inserted before/after each continuation line 'dots' block to mark input
  • Wheels for Python 3.11 are part of the automated release action
  • Added chdir to xonsh.tools. This allows to use with chdir("dir"): to run commands block in the certain directory without manually cd-ing.
  • Display the current branch of Fossil VCS checkouts in the prompt,
    similar to git and hg.
  • Added link to xonsh on Mastodon - https://mastodon.online/@xonsh
  • xontrib load: added option -s to skip warning about not installed xontribs.

Changed:

  • Altered documentation for xonshrc to remove Python REPL prompts so that you can copy the code without having to edit it.
  • xonsh AppImage - bumped python to 3.11
  • The prompt end character switched to @.
  • The command not found error will show the repr(cmd) to uncover the cases when the command name has \n, \t or not visible color codes and raises the error.
  • abbrevs xontrib transferred to xontrib-abbrevs <https://github.com/xonsh/xontrib-abbrevs>_.
  • bashisms xontrib transferred to xontrib-bashisms <https://github.com/xonsh/xontrib-bashisms>_.
  • free_cwd xontrib transferred to xontrib-free-cwd <https://github.com/xonsh/xontrib-free-cwd>_.
  • whole_word_jumping xontrib transferred to xontrib-whole-word-jumping <https://github.com/xonsh/xontrib-whole-word-jumping>_.
  • fish_completer xontrib transferred to xontrib-fish-completer <https://github.com/xonsh/xontrib-fish-completer>_.
  • vox, autovox, voxapi xontribs transferred to xontrib-vox <https://github.com/xonsh/xontrib-vox>_.
  • pdb, xog xontribs transferred to xontrib-debug-tools <https://github.com/xonsh/xontrib-debug-tools>_.

Fixed:

  • Fixed xpip alias for xonsh AppImage.
  • Fixed missing webconfig/js/xonsh_sticker.svg in xonfig web.
  • update load_xontrib pytest fixture to handle auto-loaded xontribs
  • Suppress subprocess traceback on exception in case $XONSH_SHOW_TRACEBACK=False with $RAISE_SUBPROC_ERROR=True.
  • Improve the error message when $RAISE_SUBPROC_ERROR is set to True.
  • Fixed xontrib-jupyter to work in JupyterLab and terminal-based Euporie <https://github.com/joouha/euporie>_ environment.

Authors:

  • Gil Forsyth
  • Noortheen Raja
  • anki-code
  • pre-commit-ci[bot]
  • Evgeny
  • Mark Bestley
  • Samuel Dion-Girardeau
  • doronz88
  • Ivan Ogasawara
  • Tobias Becker
  • AkshayWarrier
  • Thomas Hess
  • kouhe3

0.13.4

08 Dec 14:49
Compare
Choose a tag to compare

Added:

  • tests for methods changed in tools.py (is_tok_color_dict)
  • $XDG_CACHE_HOME, $XONSH_CACHE_DIR are now available inside Xonsh
  • #2455 Add on_command_not_found event, fired when a command is not found.
  • #3279 Add XONSH_HISTORY_IGNORE_REGEX support. You can specify a regular
    expression in the environment variable XONSH_HISTORY_IGNORE_REGEX and any
    command that matches the expression will not be added to the history.
  • commands_cache: add a configurable value to disable cache. useful for running scripts

Changed:

  • is_str_str_dict changed to check for Token:style dict

Removed:

  • $COMMANDS_CACHE_SIZE_WARNING is removed. When $COMMANDS_CACHE_SAVE_INTERMEDIATE is enabled,
    the cache file size is optimized.

Fixed:

  • #4668 Fix ptk completion stacking when auto-suggest is on and no normal completions are generated.
  • $XONSH_STYLE_OVERRIDES cannot be assigned dict of {Token: str} #4375
  • fixed stale results when $COMMANDS_CACHE_SAVE_INTERMEDIATE is enabled.
  • #4951 Fix gitstatus prompt when rebasing
  • fixed using aliases to override commands without the file extension on Windows

Authors:

  • Noortheen Raja
  • pre-commit-ci[bot]
  • Vasilis Gerakaris
  • Lie Ryan
  • Blake Ramsdell
  • Justin
  • yotamolenik
  • austin-yang
  • Marco Rubin
  • Qyriad

0.13.3

15 Sep 13:52
Compare
Choose a tag to compare

Fixed:

  • pygments startup crash when incorrect prepending bg: to noinherit
    style directives

Authors:

  • Gil Forsyth