Releases: xonsh/xonsh
Releases · xonsh/xonsh
0.16.0
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 byxonsh.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 likezshrc
andbashrc
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
0.15.0
What's Changed
- Pin prompt-toolkit version by @anki-code in #5288
- Now VSCode supports xonsh as default shell by @jaraco in #5273
- Now Atuin supports xonsh by @Matthieu-LAURENT39 in #5272
New Contributors
- @Matthieu-LAURENT39 made their first contribution in #5272
Full Changelog: 0.14.4...0.15.0
0.14.4
What's Changed
- Update config.yml: improve the text by @anki-code in #5247
- Add len() protocol to LazyObject to support Sphinx 5+ by @stefanor in #5249
- fix test_bash_completer for the date command by @rautyrauty in #5258
- Actually fully disable system clipboard (#5155) by @azertyfun in #5261
- Use %COMSPEC% not "cmd" to prevent hijacking. Fixes #5254 by @JamesParrott in #5255
New Contributors
- @rautyrauty made their first contribution in #5258
- @azertyfun made their first contribution in #5261
- @JamesParrott made their first contribution in #5255
Full Changelog: 0.14.3...0.14.4
0.14.3
0.14.2
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
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
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
toxonsh.tools
. This allows to usewith 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 therepr(cmd)
to uncover the cases when the command name has\n
,\t
or not visible color codes and raises the error. abbrevs
xontrib transferred toxontrib-abbrevs <https://github.com/xonsh/xontrib-abbrevs>
_.bashisms
xontrib transferred toxontrib-bashisms <https://github.com/xonsh/xontrib-bashisms>
_.free_cwd
xontrib transferred toxontrib-free-cwd <https://github.com/xonsh/xontrib-free-cwd>
_.whole_word_jumping
xontrib transferred toxontrib-whole-word-jumping <https://github.com/xonsh/xontrib-whole-word-jumping>
_.fish_completer
xontrib transferred toxontrib-fish-completer <https://github.com/xonsh/xontrib-fish-completer>
_.vox
,autovox
,voxapi
xontribs transferred toxontrib-vox <https://github.com/xonsh/xontrib-vox>
_.pdb
,xog
xontribs transferred toxontrib-debug-tools <https://github.com/xonsh/xontrib-debug-tools>
_.
Fixed:
- Fixed xpip alias for xonsh AppImage.
- Fixed missing
webconfig/js/xonsh_sticker.svg
inxonfig 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
Added:
- tests for methods changed in tools.py (is_tok_color_dict)
$XDG_CACHE_HOME
,$XONSH_CACHE_DIR
are now available insideXonsh
- #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 variableXONSH_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