- update to 3.7.1:
* Deleting the last history entry via `history delete` works
again (#10190).
* Wildcards (`*`) will no longer sometimes generate paths that
did not exist (#10205).
* A crash when trying to run an ELF program with a missing
interpreter has been fixed. This crashed in the process after
fork, so did not affect the fish process that tried to start
the program (#10199).
* `funced` will now always `source` the file after it has
written it, even if the contents did not change. This
prevents issues if the file was otherwise modified (#10318).
* The warning for when a builtin returns a negative exit code
was improved, now mentioning the original status (#10187).
* Added completions for `cobra-cli`, `dmidecode`, `mycli`,
`ollama`, `pstree`
- Update to 3.7.0:
in a search (#10005). This makes it nicer to search something with ↑ and then later decide
* Closing the history pager with enter will now copy the search text to the commandline
* See https://github.com/fish-shell/fish-shell/releases/tag/3.7.0
may not be expected. (bsc#1217808, CVE-2023-49284)
* By default, Control-R now opens the command history in the pager,
* see https://github.com/fish-shell/fish-shell/releases/tag/3.4.0
* Pasting with a multi-line command no longer causes
- Define GenericName and proper category in fish.desktop
of the scripting differences between bash and fish
may be omitted: $start and $end default to 1 and -1
a substring
OBS-URL: https://build.opensuse.org/request/show/1164533
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=91
- Update to 3.7.0:
* The history pager will now also attempt subsequence matches (#9476),
so you can find a command line like git log 3.6.1..Integration_3.7.0 by searching for gitInt.
* Opening the history pager will now fill the search field with a search string if you’re already
in a search (#10005). This makes it nicer to search something with ↑ and then later decide
to switch to the full pager.
* Closing the history pager with enter will now copy the search text to the commandline
if there was no match, so you can continue editing the command you tried to find right away (#9934).
* Performance improvements for command completions and globbing, where supported by the operating system,
especially on slow filesystems such as NFS (#9891, #9931, #10032, #10052).
* fish can now be configured to wait a specified amount of time for a multi-key sequence to be completed,
instead of waiting indefinitely. For example, this makes binding kj to switching modes in vi mode possible.
The timeout can be set via the new fish_sequence_key_delay_ms variable (#7401),
and may be set by default in future versions.
* See https://github.com/fish-shell/fish-shell/releases/tag/3.7.0
for more details
OBS-URL: https://build.opensuse.org/request/show/1136000
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=88
- New upstream release 3.6.4
* This release contains a complete fix for the test suite failure in fish
3.6.2 and 3.6.3.
- New upstream release 3.6.3
* This release contains a fix for a test suite failure in fish 3.6.2.
- New upstream release 3.6.2
This release of fish contains a security fix for CVE-2023-49284, a minor security problem identified
in fish 3.6.1 and previous versions (thought to affect all released versions of fish).
fish uses certain Unicode non-characters internally for marking wildcards and expansions. It
incorrectly allowed these markers to be read on command substitution output, rather than
transforming them into a safe internal representation.
For example, ``echo \UFDD2HOME`` has the same output as ``echo $HOME``.
While this may cause unexpected behavior with direct input, this may become a minor security problem
if the output is being fed from an external program into a command substitution where this output
may not be expected. (bsc#1217808, CVE-2023-49284)
- Enable tests
OBS-URL: https://build.opensuse.org/request/show/1132463
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/fish?expand=0&rev=40
- Add bugzilla references
- New upstream release 3.6.4
* This release contains a complete fix for the test suite failure in fish
3.6.2 and 3.6.3.
- New upstream release 3.6.3
* This release contains a fix for a test suite failure in fish 3.6.2.
- New upstream release 3.6.2
This release of fish contains a security fix for CVE-2023-49284, a minor security problem identified
in fish 3.6.1 and previous versions (thought to affect all released versions of fish).
fish uses certain Unicode non-characters internally for marking wildcards and expansions. It
incorrectly allowed these markers to be read on command substitution output, rather than
transforming them into a safe internal representation.
For example, ``echo \UFDD2HOME`` has the same output as ``echo $HOME``.
While this may cause unexpected behavior with direct input, this may become a minor security problem
if the output is being fed from an external program into a command substitution where this output
may not be expected. (bsc#1217808, CVE-2023-49284)
- Enable tests
- Actually, awk is required for many scripts provided with the
shell.
- Update to version 3.6.1:
* The Web-based configuration for abbreviations has been removed,
as it was not functional with the changes abbreviations
introduced in 3.6.0.
* 'read' will now print an error if told to set a read-only
variable, instead of silently doing nothing.
* 'set_color -v' no longer crashes fish.
* Using fish_vi_key_bindings in combination with fish's
--no-config mode works without locking up the shell.
* The history pager now uses more screen space, usually half the
screen.
* Variables that were set while the locale was C (the default
ASCII-only locale) will now properly be encoded if the locale
is switched.
* Escape during history search restores the original command line
again.
* Using --help on builtins now respects the $MANPAGER variable,
in preference to $PAGER.
* The documentation for the ':', '[' and '.' builtin commands can
now be looked up with 'man'.
* fish no longer crashes when searching history for non-ASCII
codepoints case-insensitively.
* Themes that don't specify every color option can be installed
correctly in the Web-based configuration.
* Compatibility with Midnight Commander's prompt integration has
been improved.
* A spurious error, noted when using fish in Google Drive
directories under WSL 2, has been silenced.
* Using 'read' in 'fish_greeting' or similar functions will not
trigger an infinite loop.
* The git prompt will compute the stash count to be used
independently of the informative status.
* Added completions for: apkanalyzer, neovim, otool, pre-commit,
proxychains, scrypt, stow, trash and helper utilities
(trash-empty, trash-list, trash-put and trash-restore) and
ssh-copy-id.
* Improvements to many completions, including the speed of
completing directories in WSL 2.
* Completions using __fish_complete_suffix are now offered in
the correct order (regression).
* 'git' completions for 'git-foo'-style commands was restored
(regression).
* File completion now offers ../ and ./ again (regression).
* Improvements and corrections to the documentation.
- update to 3.6.0:
* By default, Control-R now opens the command history in the pager,
* Abbrevations are more flexible
* The \\x and \\X escape syntax is now equivalent. \\xAB previously
behaved the same as \\XAB, except that it would error if the value “AB” was larger than “7f”
* The fish_git_prompt will now only turn on features if the appropriate
variable has been set to a true value (of “1”, “yes” or “true”)
instead of just checking if it is defined.
* Abbreviations are no longer stored in universal variables.
* The short option -r for abbreviations has changed from rename to regex,
for consistency with string.
* argparse can now be used without option specifications, to allow using
--min-args, --max-args or for commands that take no options
* set --show now shows when a variable was inherited from fish’s parent process,
which should help with debugging
* The read limit is now restored to the default when fish_read_limit is unset
* fish_clipboard_copy and fish_clipboard_paste can now be used in pipes
* A new variable, fish_cursor_selection_mode, can be used to configure whether
the command line selection includes the character under the cursor (inclusive) or not (exclusive)
* The complete-and-search binding, used with Shift-Tab by default,
selects the first item in the results immediately
* The key combination for the QUIT terminal sequence, often Control-Backslash (\\x1c),
can now be sused as a binding
* commandline gained two new options, --selection-start and --selection-end,
to set the start/end of the current selection
- update to 3.5.1:
* Cursor shaping for Vi mode is enabled by default in tmux,
and will be used if the outer terminal is capable
* ``printf`` returns a better error when used with arguments
interpreted as octal numbers
* ``history merge`` when in private mode is now an error,
rather than wiping out other sessions' history
* The error message when launching a command that is built
for the wrong architecture on macOS is more helpful
- setup fish.keyring
- version update to 3.5.0
* A new path builtin command to filter and transform paths (#7659, #8958).
* Tab (or any key bound to complete) now expands wildcards instead of
invoking completions, if there is a wildcard in the path component under
the cursor (#954, #8593).
* Scripts can now catch and handle the SIGINT and SIGTERM signals, either via
function --on-signal or with trap (#6649).
* see https://github.com/fish-shell/fish-shell/releases/tag/3.5.0
for more details
- version update to 3.4.1
* An error printed after upgrading, where old instances could pick up a newer
version of the fish_title function, has been fixed (#8778)
* fish builds correctly on NetBSD (#8788) and OpenIndiana (#8780).
* nextd-or-forward-word, bound to Alt-Right Arrow by default, was
inadvertently changed to move like forward-bigword. This has been
corrected (#8790).
* funcsave -q and funcsave --quiet now work correctly (#8830).
* Issues with the csharp and nmcli completions were corrected.
* see https://github.com/fish-shell/fish-shell/releases/tag/3.4.1
for more details
- Drop 8784-old-school-cmd-subst.patch: merged upstream
- Add 8784-old-school-cmd-subst.patch fixing fish_title.fish
- version update to 3.4.0
* fish’s command substitution syntax has been extended: $(cmd) now
has the same meaning as (cmd) but it can be used inside double
quotes, to prevent line splitting of the results (#159)
* Complementing the prompt command in 3.3.0, fish_config gained
a theme subcommand to show and pick from the sample themes
(meaning color schemes) directly in the terminal, instead of
having to open a Web browser.
* set and read learned a new option, --function, to set a variable
in the function’s top scope. This should be a more familiar way
of scoping variables and avoids issues with --local, which is
actually block-scoped (#565, #8145)
* string pad now excludes escape sequences like colors that fish
knows about, and a new --visible flag to string length makes
it use that kind of visible width. This is useful to get the
number of terminal cells an already colored string would occupy,
like in a prompt. (#8182, #7784, #4012)
* Performance improvements to globbing, especially on systems
using glibc. In some cases (large directories with files with
many numbers in the names) this almost halves the time taken
to expand the glob.
* Autosuggestions can now be turned off by setting
$fish_autosuggestion_enabled to 0, and (almost) all highlighting
can be turned off by choosing the new “None” theme. The exception
is necessary colors, like those which distinguish autosuggestions
from the actual command line. (#8376)
* The fish_git_prompt function, which is included in the default
prompts, now overrides git to avoid running commands set by
per-repository configuration. This avoids a potential security
issue in some circumstances, and has been assigned CVE-2022-20001
(#8589). [bsc#1197139]
* see https://github.com/fish-shell/fish-shell/releases/tag/3.4.0
for more details
- We don't need to remove unnecessary completions (curl and pyenv
in this case), the ones in /usr/share/fish/vendor_completions.d
have precedence. Now just to make all other packages put theirs
in the right location!
- Update to 3.3.1:
* The prompt and command line are redrawn correctly in response to universal variable changes.
* A superfluous error that was produced when setting the PATH or CDPATH environment variables to include colon-delimited components that do not exist was removed.
* The Vi mode indicator in the prompt is repainted correctly after Ctrl-C cancels the current command.
- Update to 3.2.2:
* Background jobs no longer interfere with syntax highlighting (fish 3.2.1 regression)
* The command-not-found handler used suggestions from pacman on Arch
Linux, but this caused major slowdowns on some systems and has been disabled
* Certain programs (such as lazygit) could create situations where
fish would not receive keystrokes correctly, but it is now more
robust in these situations
* Completions for aura and tshark should no longer produce errors.
* fish will no longer hang on exit if another process is in the foreground
on macOS
* Arguments longer than 1024 characters no longer trigger excessive
CPU usage on macOS
- Update to 3.2.1:
* Commands in key bindings are run with fish's internal terminal
modes, instead of the terminal modes typically used for commands.
This fixes a bug introduced in 3.2.0, where text would unexpectedly
appear on the terminal, especially when pasting
* Prompts which use the internal __fish_print_pipestatus function will
display correctly rather than carrying certain modifiers (such as
bold) further than intended
* Redirections to internal file descriptors is allowed again, reversing
the changes in 3.2.0. This fixes a problem with Midnight Commander
* Universal variables should be fully reliable regardless of operating
system again
* fish_git_prompt no longer causes screen flickering in certain terminals
* fish_add_path manipulates the fish_user_paths variable correctly
when moving multiple paths
* Pasting with a multi-line command no longer causes
__fish_tokenizer_state error
* psub inside event handlers cleans up temporary files properly
* Event handlers declared with --on-job-exit $fish_pid no longer run
constantly, although these functions should use --on-event fish_exit
instead.
* Changing terminal modes inside config.fish works
* set_color --print-colors no longer prints all colors in bold
* Completing commands starting with a - no longer prints an error
* Running fish_command_not_found directly no longer produces an error
on macOS or other OSes which do not have a handler available
* The new type builtin now has the (deprecated) --quiet long form of -q
* help and fish_config work correctly when fish is running in a Chrome
OS Crostini Linux VM
* The history file can be made a symbolic link without it being overwritten,
matching a similar improvement for the universal variable file in 3.2.0.
* An unhelpful error ("access: No error"), seen on Cygwin, is no longer produced
* Improvements to the rsync completions, some completion descriptions,
and completions that use IP address
* Improvements to the appearance of fish_config
- explicitly list binaries in spec file
- Define GenericName and proper category in fish.desktop
- Update to 3.2.0:
* Undo and redo support for the command-line editor and pager search
* Builtins can now output before all data is read
* Prompts will now be truncated instead of replaced with "> "
* Better errors with "test"
* A new theme for the documentation and Web-based configuration
* fish --no-execute will no longer complain about unknown commands
or non-matching wildcards
* string match --regex now integrates named PCRE2 capture groups
as fish variables
* Globs and other expansions are limited to 512,288 results
* A new "fish for bash users" documentation page gives a quick overview
of the scripting differences between bash and fish
* Range limits in index range expansions like $x[$start..$end]
may be omitted: $start and $end default to 1 and -1
* the type, _ (gettext), . (source) and : (no-op) functions
are now implemented builtins for performance purposes
* The output for set --show has been shortened
* string sub has a new --end option to specify the end index of
a substring
* string trim now also trims vertical tabs by default
* string repeat now handles multiple arguments, repeating each one
* The true and false builtins ignore any arguments
* status gained new dirname and basename convenience subcommands
* jobs now shows continued child processes correctly
* A new fish_status_to_signal function for transforming exit statuses
to signal names has been added
* fish -c now reads the remaining arguments into $argv
* The pwd command supports the long options --logical and --physical
* https://github.com/fish-shell/fish-shell/releases/tag/3.2.0
- Remove fix-pc-file-paths.patch
- pc file contained references to /usr/local (boo#1181888)
* fix-pc-file-paths.patch - Already fixed upstream
- Fix empty output of fish builtin help
- Update to 3.1.2:
* Commands such as fzf and enhancd, when used with eval, would
hang. eval buffered output too aggressively, which has been
fixed (#6955).
- Changes in 3.1.2:
* Commands which involve . ( ... | psub) now work correctly, as
a bug in the function --on-job-exit option has been fixed (#6613).
* Conflicts between upstream packages for ripgrep and bat, and the
fish packages, have been resolved (#5822).
* Starting fish in a directory without read access, such as via
su, no longer crashes (#6597).
* Glob ordering changes which were introduced in 3.1.0 have been
reverted, returning the order of globs to the previous state (#6593).
* Redirections using the deprecated caret syntax to a file
descriptor (eg ^&2) work correctly (#6591).
* Redirections that append to a file descriptor (eg 2>>&1)
work correctly (#6614).
* Building fish on macOS (#6602) or with new versions of GCC
(#6604, #6609) is now successful.
* time is now correctly listed in the output of builtin -n,
and time --help works correctly (#6598).
* Exported universal variables now update properly (#6612).
* status current-command gives the expected output when used
with an environment override - that is, F=B status current-command
returns status instead of F=B (#6635).
* test no longer crashes when used with "nan" or "inf" arguments,
erroring out instead (#6655).
* Copying from the end of the command line no longer crashes
fish (#6680).
* read no longer removes multiple separators when splitting a
variable into a list, restoring the previous behaviour from fish
3.0 and before (#6650).
* Functions using --on-job-exit and --on-process-exit work
reliably again (#6679).
* Functions using --on-signal INT work reliably in interactive
sessions, as they did in fish 2.7 and before (#6649). These handlers
have never worked in non-interactive sessions, and making them
work is an ongoing process.
* Functions using --on-variable work reliably with variables which
are set implicitly (rather than with set), such as
"fish_bind_mode" and "PWD" (#6653).
* 256 colors are properly enabled under certain conditions that were
incorrectly detected in fish 3.1.0 ($TERM begins with xterm, does
not include "256color", and $TERM_PROGRAM is not set) (#6701).
* The Mercurial (hg) prompt no longer produces an error when the
current working directory is removed (#6699). Also, for performance
reasons it shows only basic information by default; to restore the
detailed status, set $fish_prompt_hg_show_informative_status.
* The VCS prompt, fish_vcs_prompt, no longer displays Subversion (svn)
status by default, due to the potential slowness of this operation (#6681).
* Pasting of commands has been sped up (#6713).
* Using extended Unicode characters, such as emoji, in a non-Unicode
capable locale (such as the C or POSIX locale) no longer renders
all output blank (#6736).
* help prefers to use xdg-open, avoiding the use of open on Debian
systems where this command is actually openvt (#6739).
* Command lines starting with a space, which are not saved in history,
now do not get autosuggestions. This fixes an issue with Midnight
Commander integration (#6763), but may be changed in a future version.
* Copying to the clipboard no longer inserts a newline at the end of the
content, matching fish 2.7 and earlier (#6927).
* fzf in complex pipes no longer hangs. More generally, code run as
part of command substitutions or eval will no longer have separate
process groups. (#6624, #6806).
- Remove fix-gcc10-build.patch: upstreamed
- Don't require python3 at all, it's only used for tests but there's
no %check section.
- Fix build with gcc10 fix-gcc10-build.patch (boo#1167862)
- Use python3 rather then python2
- Update to 3.1.0
* A new $pipestatus variable contains a list of exit statuses
of the previous job, for each of the separate commands in a pipeline
* fish no longer buffers pipes to the last function in a pipeline,
improving many cases where pipes appeared to block or hang
* cd now always looks for its argument in the current directory as a
last resort, even if the CDPATH variable does not include it or "."
* fish's debugging arguments have been significantly improved
* new builtin command, time, which allows timing of fish functions
and builtins as well as external commands
* Brace expansion now only takes place if the braces include a "," or
a variable expansion, meaning common commands such as
git reset HEAD@{0} do not require escaping
* many other fixes and improvements
- Drop the curl compilations, the curl package now provides a
better version.
- Update to 3.0.2
* The PWD environment variable is now ignored when it should be
- Update to 3.0.1
* exec does not complain about running foreground jobs (#5449)
* while loops now evaluate to the last executed command (#4982)
* The error when a command is not found is now a single time (#5588)
* Significant perf improvements to core shell (#5447)
* Starting in symlinked working directories works (#5525)
* The nim prompt now works correctly in web-based config (#5490)
* Killing the term while fish is in vi normal mode fixed (#5528)
* Misc crash fixes (#5550,#5548, #5479, #5453)
- Update to 3.0.0
* Process and job expansion has largely been removed
* A literal {} now expands to itself, rather than nothing
* Literally accessing a zeor-index is now illegal syntax
* for loop variables are no longer local to the for block
* Local exported (set -1x) vars are now visible to functions
* The new math builtin does not support logical expressions
* fish now supports && || and ! for better migration from POSIX
* Variables may be used as commanes (#154)
* fish may be started in private mode via fish --private
* A new wait command for waiting on backgrounded processes
* math is now a builtin wrather than a wrapper around bc (#3157)
* while sets $status to a non-zero value if the loop is not exec'd (#4982)
* Command sub output now limited to 10MB by default
* The machine hostname is now exposed as the $hostname reserved variable
* Bare bind invocations in config.fish now work
- Trim some bias from description.
- Anchor grep patterns in %post(un) so that it does not erroneously
match other lines.
- Update to 2.7.1
* macos specific fix for iTerm2
- cleanup with spec-cleaner
- use https URL
- rpmlint: fix E: devel-file-in-non-devel-package
- rpmlint: fix E: env-script-interpreter
- Don't Require python-curses its not needed or used
- Update to 2.7.0. Notable improvements:
* A new cdh (change directory using recent history) command provides a more
friendly alternative to prevd/nextd and pushd/popd (#2847).
* A new argparse command is available to allow fish script to parse arguments
with the same behavior as builtin commands. This also includes the fish_opt helper command. (#4190).
* Invalid array indexes are now silently ignored (#826, #4127).
* Improvements to the debugging facility, including a prompt specific to the
debugger (fish_breakpoint_prompt) and a status is-breakpoint subcommand (#1310).
* string supports new lower and upper subcommands, for altering the case of
strings (#4080). The case changing is not locale-aware yet.
* string escape has a new --style=xxx flag where xxx can be script, var,
or url (#4150), and can be reversed with string unescape (#3543).
* History can now be split into sessions with the fish_history variable,
or not saved to disk at all (#102).
* Read history is now controlled by the fish_history variable rather than
the --mode-name flag (#1504).
* command now supports an --all flag to report all directories with the
command. which is no longer a runtime dependency (#2778).
* fish can run commands before starting an interactive session using the new
--init-command/-C options (#4164).
* set has a new --show option to show lots of information about variables
(#4265).
* Full changelog: https://github.com/fish-shell/fish-shell/releases/tag/2.7.0
- Update to 2.6.0. Notable fixes and improvements:
* Jobs running in the background can now be removed from the list of jobs
with the new disown builtin, which behaves like the same command in other
shells (#2810).
* Command substitutions now have access to the terminal, like in other
shells. This allows tools like fzf to work properly (#1362, #3922).
* In cases where the operating system does not report the size of the
terminal, the COLUMNS and LINES environment variables are used; if they
are unset, a default of 80x24 is assumed.
* New French (#3772 & #3788) and improved German (#3834) translations.
* fish no longer depends on the which external command.
* Full changelog: https://github.com/fish-shell/fish-shell/releases/tag/2.6.0
- Update to 2.5.0
Notable fixes and improvements
* alias, run without options or arguments, lists all defined aliases, and
aliases now include a description in the function signature that identifies
them.
* complete accepts empty strings as descriptions (#3557).
* command accepts -q/--quiet in combination with --search (#3591), providing
a simple way of checking whether a command exists in scripts.
* Abbreviations can now be renamed with abbr --rename OLD_KEY NEW_KEY (#3610).
* The command synopses printed by --help options work better with copying and
pasting (#2673).
* help launches the browser specified by the $fish_help_browser variable if it
is set (#3131).
* History merging could lose items under certain circumstances and is now
fixed (#3496).
* The $status variable is now set to 123 when a syntactically invalid command
is entered (#3616).
* Exiting fish now signals all background processes to terminate, not just
stopped jobs (#3497).
* A new prompt_hostname function which prints a hostname suitable for use in
prompts (#3482).
* The __fish_man_page function (bound to Alt-h by default) now tries to
recognize subcommands (e.g. git add will now open the "git-add" man page)
(#3678).
* A new function edit_command_buffer (bound to Alt-e & Alt-v by default) to
edit the command buffer in an external editor (#1215, #3627).
* set_color now supports italics (--italics), dim (--dim) and reverse
(--reverse) modes (#3650).
* Filesystems with very slow locking (eg incorrectly-configured NFS) will no
longer slow fish down (#685).
* Improved completions for apt (#3695), fusermount (#3642), make (#3628),
netctl-auto (#3378), nmcli (#3648), pygmentize (#3378), and tar (#3719).
* Added completions for:
VBoxHeadless (#3378)
VBoxSDL (#3378)
base64 (#3378)
caffeinate (#3524)
dconf (#3638)
dig (#3495)
dpkg-reconfigure (#3521 & #3522)
feh (#3378)
launchctl (#3682)
lxc (#3554 & #3564),
mddiagnose (#3524)
mdfind (#3524)
mdimport (#3524)
mdls (#3524)
mdutil (#3524)
mkvextract (#3492)
nvram (#3524)
objdump (#3378)
sysbench (#3491)
tmutil (#3524)
* Full changelog https://github.com/fish-shell/fish-shell/releases/tag/2.5.0
- Update to version 2.4.0
## Notable fixes and improvements
* The documentation is now generated properly and with the
correct version identifier.
* Automatic cursor changes are now only enabled on the
subset of XTerm versions known to support them, resolving a
problem where older versions printed garbage to the terminal
before and after every prompt (#3499).
* Improved the title set in Apple Terminal.app.
* Added completions for `defaults` and improved completions
for `diskutil` (#3478).
# fish 2.4b1 (released October 18, 2016)
## Significant changes
* The clipboard integration has been revamped with explicit
bindings. The killring commands no longer copy from, or
paste to, the X11 clipboard - use the new copy (`C-x`) and
paste (`C-v`) bindings instead. The clipboard is now
available on OS X as well as systems using X11 (e.g. Linux).
(#3061)
* `history` uses subcommands (`history delete`) rather than
options (`history --delete`) for its actions (#3367). You
can no longer specify multiple actions via flags (e.g.,
`history --delete --save something`).
* New `history` options have been added, including `--max=n`
to limit the number of history entries, `--show-time` option
to show timestamps (#3175, #3244), and `--null` to null
terminate history entries in the search output.
* `history search` is now case-insensitive by default (which
also affects `history delete`) (#3236).
* `history delete` now correctly handles multiline commands
(#31).
* Vi-style bindings no longer include all of the default
emacs-style bindings; instead, they share some definitions
(#3068).
* If there is no locale set in the environment, various
known system configuration files will be checked for a
default. If no locale can be found, `en_US-UTF.8` will be
used (#277).
* A number followed by a caret (e.g. `5^`) is no longer
treated as a redirection (#1873).
* The `$version` special variable can be overwritten, so
that it can be used for other purposes if required.
## Notable fixes and improvements
* The `fish_realpath` builtin has been renamed to `realpath`
and made compatible with GNU `realpath` when run without
arguments (#3400). It is used only for systems without a
`realpath` or `grealpath` utility (#3374).
* Improved color handling on terminals/consoles with 8-16
colors, particularly the use of bright named color (#3176,
#3260).
* `fish_indent` can now read from files given as arguments,
rather than just standard input (#3037).
* Fuzzy tab completions behave in a less surprising manner
(#3090, #3211).
* `jobs` should only print its header line once (#3127).
* Wildcards in redirections are highlighted appropriately
(#2789).
* Suggestions will be offered more often, like after
removing characters (#3069).
* `history --merge` now correctly interleaves items in
chronological order (#2312).
* Options for `fish_indent` have been aligned with the other
binaries - in particular, `-d` now means `--debug`. The
`--dump` option has been renamed to `--dump-parse-tree`
(#3191).
* The display of bindings in the Web-based configuration has
been greatly improved (#3325), as has the rendering of
prompts (#2924).
* fish should no longer hang using 100% CPU in the C locale
(#3214).
* A bug in FreeBSD 11 & 12, Dragonfly BSD & illumos
prevented fish from working correctly on these platforms
under UTF-8 locales; fish now avoids the buggy behaviour
(#3050).
* Prompts which show git repository information (via
`__fish_git_prompt`) are faster in large repositories
(#3294) and slow filesystems (#3083).
* fish 2.3.0 reintroduced a problem where the greeting was
printed even when using `read`; this has been corrected
again (#3261).
* Vi mode changes the cursor depending on the current mode
(#3215).
* Command lines with escaped space characters at the end
tab-complete correctly (#2447).
* Added completions for:
+ `arcanist` (#3256)
+ `connmanctl` (#3419)
+ `figlet` (#3378)
+ `mdbook` (#3378)
+ `ninja` (#3415)
+ `p4`, the Perforce client (#3314)
+ `pygmentize` (#3378)
+ `ranger` (#3378)
* Improved completions for `aura` (#3297), `abbr` (#3267),
`brew` (#3309), `chown` (#3380, #3383),`cygport` (#3392),
`git` (#3274, #3226, #3225, #3094, #3087, #3035, #3021,
#2982, #3230), `kill & `pkill` (#3200), `screen` (#3271),
`wget` (#3470), and `xz` (#3378).
* Distributors, packagers and developers will notice that
the build process produces more succinct output by default;
use `make V=1` to get verbose output (#3248).
* Improved compatibility with minor platforms including musl
(#2988), Cygwin (#2993), Android (#3441, #3442), Haiku
(#3322) and Solaris .
- Dropped no longer necessary
no-return-in-nonvoid-function.patch
- Use shared libpcre instead of bundled one
- Small packaging changes
- Update source url to point to github as within the release notes,
the older url doens't seem available
- Update to v2.3.1
- Significant changes
* A new fish_key_reader binary for decoding interactive keypresses (#2991).
* fish_mode_prompt has been updated to reflect the changes in the way the
Vi input mode is set up (#3067), making this more reliable.
* fish_config can now properly be launched from the OS X app bundle (#3140).
- Notable fixes and improvements
* Extra lines were sometimes inserted into the output under Windows (Cygwin
and Microsoft Windows Subsystem for Linux) due to TTY timestamps
not being updated (#2859).
* The string builtin's match mode now handles the combination of -rnv (match,
invert and count) correctly (#3098).
* Improvements to TTY special character handling (#3064), locale handling (#3124)
and terminal environment variable handling (#3060).
* Work towards handling the terminal modes for external commands launched
from initialisation files (#2980).
* Ease the upgrade path from fish 2.2.0 and before by warning users to restart
fish if the string builtin is not available (#3057).
* type -a now syntax-colorizes function source output.
* Added completions for alsamixer, godoc, gofmt, goimports, gorename, lscpu,
mkdir, modinfo, netctl-auto, poweroff, termite, udisksctl and xz (#3123).
* Improved completions for apt (#3097), aura (#3102),git (#3114), npm (#3158),
string and suspend (#3154).
- Update to v2.3.0
- Significant Changes
* A new string builtin to handle… strings!
* After seeing an escape character wait up to 300ms for an a
dditional character.
* Add new directories for vendor functions and configuration
snippets (#2498)
* A new fish_realpath builtin and associated function to allow
the use of realpath even on those platforms that don't ship
an appropriate command. (#2932)
* Alt-# toggles the current command line between commented and
uncommented states, making it easy to save a command in
history without executing it.
* The fish_vi_mode function is now deprecated in favour of
fish_vi_key_bindings
- Backward-incompatible changes
* Unmatched globs will now cause an error, except when used
with for, set or count (#2719, #2394) and and or will now bind
to the closest if or while, allowing compound conditions without
begin and end (#1428)
* set -ql now searches up to function scope for variables (#2502)
* status -f will now behave the same when run as the main script
or using source (#2643)
* source no longer puts the file name in $argv if no arguments
are given (#139)
- Full release notes at
https://github.com/fish-shell/fish-shell/releases/tag/2.3.0
- Recommends: terminfo (required for some terminals)
- Requires: man (required for completions, otherwise fish complains
about non existant `apropos` on every TAB)
- update to v2.2.0
See full changelog on
https://github.com/fish-shell/fish-shell/releases/tag/2.2.0
- Drop check_for_command-not-found_command_on_suse.patch
- Require: python-curses Its required for the prompt page on
the web config
- no-return-in-nonvoid-function.patch: fix no-return-in-nonvoid-function
error
- Added check_for_command-not-found_command_on_suse.patch
(https://github.com/fish-shell/fish-shell/issues/1208)
- Fixed conflict with youtube-dl
- update to 2.1.1
- The fish_config web interface now uses an authentication token
to protect requests and only responds to requests from the local
machine with this token, preventing a remote code execution
attack (closing CVE-2014-2914).
- psub and funced are no longer vulnerable to attacks which
allow local privilege escalation and data tampering (closing
CVE-2014-2906 and CVE-2014-3856)
- fishd uses a secure path for its socket, preventing a local
privilege escalation attack (closing CVE-2014-2905)
- __fish_print_packages is no longer vulnerable to attacks which
would allow local privilege escalation and data tampering
(closing CVE-2014-3219)
- fishd now ignores SIGPIPE, fixing crashes using tools like
GNU Parallel and which occurred more often as a result of
the other fishd changes.
- update to 2.1.0
- removed rpath patch as it has been resolved upstream
- Update to version 2.0
- Initial RPM
OBS-URL: https://build.opensuse.org/request/show/1132454
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=85
- update to 3.6.0:
* By default, Control-R now opens the command history in the pager,
* Abbrevations are more flexible
* The \\x and \\X escape syntax is now equivalent. \\xAB previously
behaved the same as \\XAB, except that it would error if the value “AB” was larger than “7f”
* The fish_git_prompt will now only turn on features if the appropriate
variable has been set to a true value (of “1”, “yes” or “true”)
instead of just checking if it is defined.
* Abbreviations are no longer stored in universal variables.
* The short option -r for abbreviations has changed from rename to regex,
for consistency with string.
* argparse can now be used without option specifications, to allow using
--min-args, --max-args or for commands that take no options
* set --show now shows when a variable was inherited from fish’s parent process,
which should help with debugging
* The read limit is now restored to the default when fish_read_limit is unset
* fish_clipboard_copy and fish_clipboard_paste can now be used in pipes
* A new variable, fish_cursor_selection_mode, can be used to configure whether
the command line selection includes the character under the cursor (inclusive) or not (exclusive)
* The complete-and-search binding, used with Shift-Tab by default,
selects the first item in the results immediately
* The key combination for the QUIT terminal sequence, often Control-Backslash (\\x1c),
can now be sused as a binding
* commandline gained two new options, --selection-start and --selection-end,
to set the start/end of the current selection
OBS-URL: https://build.opensuse.org/request/show/1058904
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=78
- update to 3.5.1:
* Cursor shaping for Vi mode is enabled by default in tmux,
and will be used if the outer terminal is capable
* ``printf`` returns a better error when used with arguments
interpreted as octal numbers
* ``history merge`` when in private mode is now an error,
rather than wiping out other sessions' history
* The error message when launching a command that is built
for the wrong architecture on macOS is more helpful
- setup fish.keyring
OBS-URL: https://build.opensuse.org/request/show/990730
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=76
- version update to 3.4.0
* fish’s command substitution syntax has been extended: $(cmd) now
has the same meaning as (cmd) but it can be used inside double
quotes, to prevent line splitting of the results (#159)
* Complementing the prompt command in 3.3.0, fish_config gained
a theme subcommand to show and pick from the sample themes
(meaning color schemes) directly in the terminal, instead of
having to open a Web browser.
* set and read learned a new option, --function, to set a variable
in the function’s top scope. This should be a more familiar way
of scoping variables and avoids issues with --local, which is
actually block-scoped (#565, #8145)
* string pad now excludes escape sequences like colors that fish
knows about, and a new --visible flag to string length makes
it use that kind of visible width. This is useful to get the
number of terminal cells an already colored string would occupy,
like in a prompt. (#8182, #7784, #4012)
* Performance improvements to globbing, especially on systems
using glibc. In some cases (large directories with files with
many numbers in the names) this almost halves the time taken
to expand the glob.
* Autosuggestions can now be turned off by setting
$fish_autosuggestion_enabled to 0, and (almost) all highlighting
can be turned off by choosing the new “None” theme. The exception
is necessary colors, like those which distinguish autosuggestions
from the actual command line. (#8376)
* The fish_git_prompt function, which is included in the default
prompts, now overrides git to avoid running commands set by
per-repository configuration. This avoids a potential security
issue in some circumstances, and has been assigned CVE-2022-20001
OBS-URL: https://build.opensuse.org/request/show/962059
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=68
- Update to 3.3.1:
* The prompt and command line are redrawn correctly in response to universal variable changes.
* A superfluous error that was produced when setting the PATH or CDPATH environment variables to include colon-delimited components that do not exist was removed.
* The Vi mode indicator in the prompt is repainted correctly after Ctrl-C cancels the current command.
(it's the first time I submit a package via OBS, don't know if I do properly...)
OBS-URL: https://build.opensuse.org/request/show/916049
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=66
- Update to 3.2.2:
* Background jobs no longer interfere with syntax highlighting (fish 3.2.1 regression)
* The command-not-found handler used suggestions from pacman on Arch
Linux, but this caused major slowdowns on some systems and has been disabled
* Certain programs (such as lazygit) could create situations where
fish would not receive keystrokes correctly, but it is now more
robust in these situations
* Completions for aura and tshark should no longer produce errors.
* fish will no longer hang on exit if another process is in the foreground
on macOS
* Arguments longer than 1024 characters no longer trigger excessive
CPU usage on macOS
OBS-URL: https://build.opensuse.org/request/show/886504
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=64
- Update to 3.2.1:
* Commands in key bindings are run with fish's internal terminal
modes, instead of the terminal modes typically used for commands.
This fixes a bug introduced in 3.2.0, where text would unexpectedly
appear on the terminal, especially when pasting
* Prompts which use the internal __fish_print_pipestatus function will
display correctly rather than carrying certain modifiers (such as
bold) further than intended
* Redirections to internal file descriptors is allowed again, reversing
the changes in 3.2.0. This fixes a problem with Midnight Commander
* Universal variables should be fully reliable regardless of operating
system again
* fish_git_prompt no longer causes screen flickering in certain terminals
* fish_add_path manipulates the fish_user_paths variable correctly
when moving multiple paths
* Pasting with a multi-line command no longer causes
__fish_tokenizer_state error
* psub inside event handlers cleans up temporary files properly
* Event handlers declared with --on-job-exit $fish_pid no longer run
constantly, although these functions should use --on-event fish_exit
instead.
* Changing terminal modes inside config.fish works
* set_color --print-colors no longer prints all colors in bold
* Completing commands starting with a - no longer prints an error
* Running fish_command_not_found directly no longer produces an error
on macOS or other OSes which do not have a handler available
* The new type builtin now has the (deprecated) --quiet long form of -q
* help and fish_config work correctly when fish is running in a Chrome
OS Crostini Linux VM
* The history file can be made a symbolic link without it being overwritten,
matching a similar improvement for the universal variable file in 3.2.0.
* An unhelpful error ("access: No error"), seen on Cygwin, is no longer produced
* Improvements to the rsync completions, some completion descriptions,
and completions that use IP address
* Improvements to the appearance of fish_config
- explicitly list binaries in spec file
OBS-URL: https://build.opensuse.org/request/show/879954
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=62
- Update to 3.2.0:
* Undo and redo support for the command-line editor and pager search
* Builtins can now output before all data is read
* Prompts will now be truncated instead of replaced with "> "
* Better errors with "test"
* A new theme for the documentation and Web-based configuration
* fish --no-execute will no longer complain about unknown commands
or non-matching wildcards
* string match --regex now integrates named PCRE2 capture groups
as fish variables
* Globs and other expansions are limited to 512,288 results
* A new "fish for bash users" documentation page gives a quick overview
of the scripting differences between bash and fish
* Range limits in index range expansions like $x[$start..$end]
may be omitted: $start and $end default to 1 and -1
* the type, _ (gettext), . (source) and : (no-op) functions
are now implemented builtins for performance purposes
* The output for set --show has been shortened
* string sub has a new --end option to specify the end index of
a substring
* string trim now also trims vertical tabs by default
* string repeat now handles multiple arguments, repeating each one
* The true and false builtins ignore any arguments
* status gained new dirname and basename convenience subcommands
* jobs now shows continued child processes correctly
* A new fish_status_to_signal function for transforming exit statuses
to signal names has been added
* fish -c now reads the remaining arguments into $argv
* The pwd command supports the long options --logical and --physical
* https://github.com/fish-shell/fish-shell/releases/tag/3.2.0
- Remove fix-pc-file-paths.patch
OBS-URL: https://build.opensuse.org/request/show/876027
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=58
- Update to 3.1.2:
* Commands such as fzf and enhancd, when used with eval, would
hang. eval buffered output too aggressively, which has been
fixed (#6955).
- Changes in 3.1.2:
* Commands which involve . ( ... | psub) now work correctly, as
a bug in the function --on-job-exit option has been fixed (#6613).
* Conflicts between upstream packages for ripgrep and bat, and the
fish packages, have been resolved (#5822).
* Starting fish in a directory without read access, such as via
su, no longer crashes (#6597).
* Glob ordering changes which were introduced in 3.1.0 have been
reverted, returning the order of globs to the previous state (#6593).
* Redirections using the deprecated caret syntax to a file
descriptor (eg ^&2) work correctly (#6591).
* Redirections that append to a file descriptor (eg 2>>&1)
work correctly (#6614).
* Building fish on macOS (#6602) or with new versions of GCC
(#6604, #6609) is now successful.
* time is now correctly listed in the output of builtin -n,
and time --help works correctly (#6598).
* Exported universal variables now update properly (#6612).
* status current-command gives the expected output when used
with an environment override - that is, F=B status current-command
returns status instead of F=B (#6635).
* test no longer crashes when used with "nan" or "inf" arguments,
erroring out instead (#6655).
* Copying from the end of the command line no longer crashes
fish (#6680).
* read no longer removes multiple separators when splitting a
OBS-URL: https://build.opensuse.org/request/show/799148
OBS-URL: https://build.opensuse.org/package/show/shells/fish?expand=0&rev=52