summaryrefslogtreecommitdiff
path: root/shells/fish
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2022-08-18 18:11:51 +0000
committerwiz <wiz@pkgsrc.org>2022-08-18 18:11:51 +0000
commit58093fb3da5c6cab950e447ca07ad3206f111e82 (patch)
tree5ad535884f138e0bd872c772e8a0e5096479ea19 /shells/fish
parentc87aa96787c7d6e141d9ae73edc76a44bdd4857b (diff)
downloadpkgsrc-58093fb3da5c6cab950e447ca07ad3206f111e82.tar.gz
fish: update to 3.5.0.
fish 3.5.0 (released June 16, 2022) =================================== Notable improvements and fixes ------------------------------ - A new ``path`` builtin command to filter and transform paths (:issue:`7659`, :issue:`8958`). For example, to list all the separate extensions used on files in /usr/share/man (after removing one extension, commonly a ".gz"):: path filter -f /usr/share/man/** | path change-extension '' | path extension | path sort -u - 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 (:issue:`954`, :issue:`8593`). - Scripts can now catch and handle the SIGINT and SIGTERM signals, either via ``function --on-signal`` or with ``trap`` (:issue:`6649`). Deprecations and removed features --------------------------------- - The ``stderr-nocaret`` feature flag, introduced in fish 3.0 and enabled by default in fish 3.1, has been made read-only. That means it is no longer possible to disable it, and code supporting the ``^`` redirection has been removed (:issue:`8857`, :issue:`8865`). To recap: fish used to support ``^`` to redirect stderr, so you could use commands like:: test "$foo" -gt 8 ^/dev/null to ignore error messages. This made the ``^`` symbol require escaping and quoting, and was a bit of a weird shortcut considering ``2>`` already worked, which is only one character longer. So the above can simply become:: test "$foo" -gt 8 2>/dev/null - The following feature flags have been enabled by default: - ``regex-easyesc``, which makes ``string replace -r`` not do a superfluous round of unescaping in the replacement expression. That means e.g. to escape any "a" or "b" in an argument you can use ``string replace -ra '([ab])' '\\\\$1' foobar`` instead of needing 8 backslashes. This only affects the *replacement* expression, not the *match* expression (the ``'([ab])'`` part in the example). A survey of plugins on GitHub did not turn up any affected code, so we do not expect this to affect many users. This flag was introduced in fish 3.1. - ``ampersand-nobg-in-token``, which means that ``&`` will not create a background job if it occurs in the middle of a word. For example, ``echo foo&bar`` will print "foo&bar" instead of running ``echo foo`` in the background and then starting ``bar`` as a second job. Reformatting with ``fish_indent`` would already introduce spaces, turning ``echo foo&bar`` into ``echo foo & bar``. This flag was introduced in fish 3.4. To turn off these flags, add ``no-regex-easyesc`` or ``no-ampersand-nobg-in-token`` to :envvar:`fish_features`` and restart fish:: set -Ua fish_features no-regex-easyesc Like ``stderr-nocaret``, they will eventually be made read-only. - Most ``string`` subcommands no longer append a newline to their input if the input didn't have one (:issue:`8473`, :issue:`3847`) - Fish's escape sequence removal (like for ``string length --visible`` or to figure out how wide the prompt is) no longer has special support for non-standard color sequences like from Data General terminals, e.g. the Data General Dasher D220 from 1984. This removes a bunch of work in the common case, allowing ``string length --visible`` to be much faster with unknown escape sequences. We don't expect anyone to have ever used fish with such a terminal (:issue:`8769`). - Code to upgrade universal variables from fish before 3.0 has been removed. Users who upgrade directly from fish versions 2.7.1 or before will have to set their universal variables & abbreviations again. (:issue:`8781`) - The meaning of an empty color variable has changed (:issue:`8793`). Previously, when a variable was set but empty, it would be interpreted as the "normal" color. Now, empty color variables cause the same effect as unset variables - the general highlighting variable for that type is used instead. For example:: set -g fish_color_command blue set -g fish_color_keyword would previously make keywords "normal" (usually white in a dark terminal). Now it'll make them blue. To achieve the previous behavior, use the normal color explicitly: ``set -g fish_color_keyword normal``. This makes it easier to make self-contained color schemes that don't accidentally use color that was set before. ``fish_config`` has been adjusted to set known color variables that a theme doesn't explicitly set to empty. - ``eval`` is now a reserved keyword, so it can't be used as a function name. This follows ``set`` and ``read``, and is necessary because it can't be cleanly shadowed by a function - at the very least ``eval set -l argv foo`` breaks. Fish will ignore autoload files for it, so left over ``eval.fish`` from previous fish versions won't be loaded. - The git prompt in informative mode now defaults to skipping counting untracked files, as this was extremely slow. To turn it on, set :envvar:`__fish_git_prompt_showuntrackedfiles` or set the git config value "bash.showuntrackedfiles" to ``true`` explicitly (which can be done for individual repositories). The "informative+vcs" sample prompt already skipped display of untracked files, but didn't do so in a way that skipped the computation, so it should be quite a bit faster in many cases (:issue:`8980`). - The ``__terlar_git_prompt`` function, used by the "Terlar" sample prompt, has been rebuilt as a configuration of the normal ``fish_git_prompt`` to ease maintenance, improve performance and add features (like reading per-repo git configuration). Some slight changes remain; users who absolutely must have the same behavior are encouraged to copy the old function (:issue:`9011`, :issue:`7918`, :issue:`8979`). Scripting improvements ---------------------- - Quoted command substitution that directly follow a variable expansion (like ``echo "$var$(echo x)"``) no longer affect the variable expansion (:issue:`8849`). - Fish now correctly expands command substitutions that are preceded by an escaped dollar (like ``echo \$(echo)``). This regressed in version 3.4.0. - ``math`` can now handle underscores (``_``) as visual separators in numbers (:issue:`8611`, :issue:`8496`):: math 5 + 2_123_252 - ``math``'s ``min`` and ``max`` functions now take a variable number of arguments instead of always requiring 2 (:issue:`8644`, :issue:`8646`):: > math min 8,2,4 2 - ``read`` is now faster as the last process in a pipeline (:issue:`8552`). - ``string join`` gained a new ``--no-empty`` flag to skip empty arguments (:issue:`8774`, :issue:`8351`). - ``read`` now only triggers the ``fish_read`` event, not the ``fish_prompt`` event (:issue:`8797`). It was supposed to work this way in fish 3.2.0 and later, but both events were emitted. - The TTY modes are no longer restored when non-interactive shells exit. This fixes wrong tty modes in pipelines with interactive commands. (:issue:`8705`). - Some functions shipped with fish printed error messages to standard output, but they now they rightly go to standard error (:issue:`8855`). - ``jobs`` now correctly reports CPU usage as a percentage, instead of as a number of clock ticks (:issue:`8919`). - ``process-exit`` events now fire when the process exits even if the job has not yet exited, fixing a regression in 3.4.1 (:issue:`8914`). Interactive improvements ------------------------ - Fish now reports a special error if a command wasn't found and there is a non-executable file by that name in :envvar:`PATH` (:issue:`8804`). - ``less`` and other interactive commands would occasionally be stopped when run in a pipeline with fish functions; this has been fixed (:issue:`8699`). - Case-changing autosuggestions generated mid-token now correctly append only the suffix, instead of duplicating the token (:issue:`8820`). - ``ulimit`` learned a number of new options for the resource limits available on Linux, FreeBSD ande NetBSD, and returns a specific warning if the limit specified is not available on the active operating system (:issue:`8823`, :issue:`8786`). - The ``vared`` command can now successfully edit variables named "tmp" or "prompt" (:issue:`8836`, :issue:`8837`). - ``time`` now emits an error if used after the first command in a pipeline (:issue:`8841`). - ``fish_add_path`` now prints a message for skipped non-existent paths when using the ``-v`` flag (:issue:`8884`). - Since fish 3.2.0, pressing :kbd:`Control-D` while a command is running would end up inserting a space into the next commandline, which has been fixed (:issue:`8871`). - A bug that caused multi-line prompts to be moved down a line when pasting or switching modes has been fixed (:issue:`3481`). - The Web-based configuration system no longer strips too many quotes in the abbreviation display (:issue:`8917`, :issue:`8918`). - Fish started with ``--no-config`` will now use the default keybindings (:issue:`8493`) - When fish inherits a :envvar:`USER` environment variable value that doesn't correspond to the current effective user ID, it will now correct it in all cases (:issue:`8879`, :issue:`8583`). - Fish sets a new :envvar:`EUID`` variable containing the current effective user id (:issue:`8866`). - ``history search`` no longer interprets the search term as an option (:issue:`8853`) - The status message when a job terminates should no longer be erased by a multiline prompt (:issue:`8817`) New or improved bindings ^^^^^^^^^^^^^^^^^^^^^^^^ - The :kbd:`Alt-S` binding will now insert ``doas`` instead of ``sudo`` if necessary (:issue:`8942`). - The ``kill-whole-line`` special input function now kills the newline preceeding the last line. This makes ``dd`` in vi-mode clear the last line properly. - The new ``kill-inner-line`` special input function kills the line without any newlines, allowing ``cc`` in vi-mode to clear the line while preserving newlines (:issue:`8983`). - On terminals that emit special sequences for these combinations, :kbd:`Shift-Space` is bound like :kbd:`Space`, and :kbd:`Ctrl-Return` is bound like :kbd:`Return` (:issue:`8874`). Improved prompts ^^^^^^^^^^^^^^^^ - A new ``Astronaut`` prompt (:issue:`8775`), a multi-line prompt using plain text reminiscent of the Starship.rs prompt. Completions ^^^^^^^^^^^ - Added completions for: - ``archlinux-java`` (:issue:`8911`) - ``apk`` (:issue:`8951`) - ``brightnessctl`` (:issue:`8758`) - ``efibootmgr`` (:issue:`9010`) - ``fastboot`` (:issue:`8904`) - ``optimus-manager`` (:issue:`8913`) - ``rclone`` (:issue:`8819`) - ``sops`` (:issue:`8821`) - ``tuned-adm`` (:issue:`8760`) - ``wg-quick`` (:issue:`8687`) - ``complete`` can now be given multiple ``--condition`` options. They will be attempted in the order they were given, and only if all succeed will the completion be made available (as if they were connected with ``&&``). This helps with caching - fish's complete system stores the return value of each condition as long as the commandline doesn't change, so this can reduce the number of conditions that need to be evaluated (:issue:`8536`, :issue:`8967`). Improved terminal support ^^^^^^^^^^^^^^^^^^^^^^^^^ - Working directory reporting is enabled for kitty (:issue:`8806`). - Changing the cursor shape is now enabled by default in iTerm2 (:issue:`3696`). For distributors ---------------- - libatomic is now correctly detected as necessary when building on RISC-V (:issue:`8850`, :issue:`8851`). - In some cases, the build process found the wrong libintl on macOS. This has been corrected (:issue:`5244`). - The paths for completions, functions, and configuration snippets now include subdirectories ``fish/vendor_completions.d``, ``fish/vendor_functions.d``, and ``fish/vendor_conf.d`` (respectively) within ``XDG_DATA_HOME`` (or ``~/.local/share`` if not defined) (:issue:`8887`, :issue:`7816`).
Diffstat (limited to 'shells/fish')
-rw-r--r--shells/fish/Makefile5
-rw-r--r--shells/fish/PLIST19
-rw-r--r--shells/fish/distinfo10
-rw-r--r--shells/fish/patches/patch-build__tools_git__version__gen.sh12
4 files changed, 29 insertions, 17 deletions
diff --git a/shells/fish/Makefile b/shells/fish/Makefile
index 3fb50549d16..341984ece8a 100644
--- a/shells/fish/Makefile
+++ b/shells/fish/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.36 2022/08/09 12:08:30 jperkin Exp $
+# $NetBSD: Makefile,v 1.37 2022/08/18 18:11:51 wiz Exp $
-DISTNAME= fish-3.4.1
-PKGREVISION= 1
+DISTNAME= fish-3.5.0
CATEGORIES= shells
MASTER_SITES= ${MASTER_SITE_GITHUB:=fish-shell/}
GITHUB_PROJECT= fish-shell
diff --git a/shells/fish/PLIST b/shells/fish/PLIST
index 5c622437a9a..ad734dc1d86 100644
--- a/shells/fish/PLIST
+++ b/shells/fish/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.14 2022/04/21 11:24:52 jperkin Exp $
+@comment $NetBSD: PLIST,v 1.15 2022/08/18 18:11:51 wiz Exp $
bin/fish
bin/fish_indent
bin/fish_key_reader
@@ -8,6 +8,7 @@ man/man1/fish_key_reader.1
share/applications/fish.desktop
share/doc/fish/.buildinfo
share/doc/fish/CHANGELOG.rst
+share/doc/fish/_static/_sphinx_javascript_frameworks_compat.js
share/doc/fish/_static/basic.css
share/doc/fish/_static/classic.css
share/doc/fish/_static/default.css
@@ -15,7 +16,7 @@ share/doc/fish/_static/doctools.js
share/doc/fish/_static/documentation_options.js
share/doc/fish/_static/file.png
share/doc/fish/_static/fish.png
-share/doc/fish/_static/jquery-3.5.1.js
+share/doc/fish/_static/jquery-3.6.0.js
share/doc/fish/_static/jquery.js
share/doc/fish/_static/language_data.js
share/doc/fish/_static/minus.png
@@ -94,6 +95,7 @@ share/doc/fish/cmds/nextd.html
share/doc/fish/cmds/not.html
share/doc/fish/cmds/open.html
share/doc/fish/cmds/or.html
+share/doc/fish/cmds/path.html
share/doc/fish/cmds/popd.html
share/doc/fish/cmds/prevd.html
share/doc/fish/cmds/printf.html
@@ -221,6 +223,7 @@ share/fish/completions/apt-zip-list.fish
share/fish/completions/apt.fish
share/fish/completions/aptitude.fish
share/fish/completions/arc.fish
+share/fish/completions/archlinux-java.fish
share/fish/completions/arepack.fish
share/fish/completions/argparse.fish
share/fish/completions/arp.fish
@@ -261,6 +264,7 @@ share/fish/completions/bosh.fish
share/fish/completions/bower.fish
share/fish/completions/break.fish
share/fish/completions/brew.fish
+share/fish/completions/brightnessctl.fish
share/fish/completions/btdownloadcurses.py.fish
share/fish/completions/btdownloadheadless.py.fish
share/fish/completions/btrfs.fish
@@ -379,6 +383,7 @@ share/fish/completions/dvipdf.fish
share/fish/completions/dvipdfm.fish
share/fish/completions/ebuild.fish
share/fish/completions/echo.fish
+share/fish/completions/efibootmgr.fish
share/fish/completions/egrep.fish
share/fish/completions/eix-sync.fish
share/fish/completions/eix.fish
@@ -406,6 +411,7 @@ share/fish/completions/exit.fish
share/fish/completions/expand.fish
share/fish/completions/ezjail-admin.fish
share/fish/completions/fab.fish
+share/fish/completions/fastboot.fish
share/fish/completions/feh.fish
share/fish/completions/ffmpeg.fish
share/fish/completions/ffplay.fish
@@ -676,6 +682,7 @@ share/fish/completions/open.fish
share/fish/completions/openocd.fish
share/fish/completions/openssl.fish
share/fish/completions/opkg.fish
+share/fish/completions/optimus-manager.fish
share/fish/completions/optipng.fish
share/fish/completions/or.fish
share/fish/completions/p4.fish
@@ -691,6 +698,7 @@ share/fish/completions/pactree.fish
share/fish/completions/pandoc.fish
share/fish/completions/passwd.fish
share/fish/completions/patch.fish
+share/fish/completions/path.fish
share/fish/completions/patool.fish
share/fish/completions/pbget.fish
share/fish/completions/pdfelatex.fish
@@ -766,6 +774,7 @@ share/fish/completions/rc-service.fish
share/fish/completions/rc-status.fish
share/fish/completions/rc-update.fish
share/fish/completions/rcctl.fish
+share/fish/completions/rclone.fish
share/fish/completions/read.fish
share/fish/completions/readlink.fish
share/fish/completions/realpath.fish
@@ -831,6 +840,7 @@ share/fish/completions/sha512sum.fish
share/fish/completions/shortcuts.fish
share/fish/completions/signify.fish
share/fish/completions/snap.fish
+share/fish/completions/sops.fish
share/fish/completions/sort.fish
share/fish/completions/source.fish
share/fish/completions/spago.fish
@@ -894,6 +904,7 @@ share/fish/completions/tree.fish
share/fish/completions/tsc.fish
share/fish/completions/tshark.fish
share/fish/completions/ttx.fish
+share/fish/completions/tuned-adm.fish
share/fish/completions/type.fish
share/fish/completions/udevadm.fish
share/fish/completions/udisksctl.fish
@@ -929,6 +940,7 @@ share/fish/completions/wajig.fish
share/fish/completions/watch.fish
share/fish/completions/wc.fish
share/fish/completions/wesnoth.fish
+share/fish/completions/wg-quick.fish
share/fish/completions/wget.fish
share/fish/completions/whatis.fish
share/fish/completions/which.fish
@@ -1002,7 +1014,6 @@ share/fish/completions/zstdmt.fish
share/fish/completions/zypper.fish
share/fish/config.fish
share/fish/functions/N_.fish
-share/fish/functions/__fish_abbr_old.fish
share/fish/functions/__fish_any_arg_in.fish
share/fish/functions/__fish_anypython.fish
share/fish/functions/__fish_append.fish
@@ -1296,6 +1307,7 @@ share/fish/man/man1/nextd.1
share/fish/man/man1/not.1
${PLIST.open}share/fish/man/man1/open.1
share/fish/man/man1/or.1
+share/fish/man/man1/path.1
share/fish/man/man1/popd.1
share/fish/man/man1/prevd.1
share/fish/man/man1/printf.1
@@ -1364,6 +1376,7 @@ share/fish/tools/web_config/partials/prompt.html
share/fish/tools/web_config/partials/variables.html
share/fish/tools/web_config/sample_prompts/acidhub.fish
share/fish/tools/web_config/sample_prompts/arrow.fish
+share/fish/tools/web_config/sample_prompts/astronaut.fish
share/fish/tools/web_config/sample_prompts/default.fish
share/fish/tools/web_config/sample_prompts/disco.fish
share/fish/tools/web_config/sample_prompts/informative.fish
diff --git a/shells/fish/distinfo b/shells/fish/distinfo
index dc765311c55..30abfc5661c 100644
--- a/shells/fish/distinfo
+++ b/shells/fish/distinfo
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.27 2022/04/21 11:24:52 jperkin Exp $
+$NetBSD: distinfo,v 1.28 2022/08/18 18:11:51 wiz Exp $
-BLAKE2s (fish-3.4.1.tar.xz) = b249650ce101af78302e0eb53df4982f9d6b8e18160faf3669fe2a9112df1617
-SHA512 (fish-3.4.1.tar.xz) = 20a2892ec0c413c4c3fcfe5fbf52fb2398de35a9172758728bd2ccdccc5fb6e0e18712a664d02db67543d47180a4d04f3998a6297d23088926b6d03baefdf981
-Size (fish-3.4.1.tar.xz) = 3293068 bytes
-SHA1 (patch-build__tools_git__version__gen.sh) = 0c8feb0880d742e5de7f510a67680edbdd603aed
+BLAKE2s (fish-3.5.0.tar.xz) = 5b5fbfe81c15618b2cfc65d090bcbea2be3422684b38df8882832d51b274e745
+SHA512 (fish-3.5.0.tar.xz) = ccec4abcdb425563688c6112f3c9c57add16aa3a05c121d2633b655d27185e1c96c263d51d6af7d83c068580d7d0723c072f1a4853fa8b6736291beeab64b859
+Size (fish-3.5.0.tar.xz) = 3326276 bytes
+SHA1 (patch-build__tools_git__version__gen.sh) = d66abecc900fa411f6da9c5fbb9f70f533025a49
SHA1 (patch-cmake_Install.cmake) = 1defcb125ab0082649f1b6e592df96a9c5d49c0a
diff --git a/shells/fish/patches/patch-build__tools_git__version__gen.sh b/shells/fish/patches/patch-build__tools_git__version__gen.sh
index 870dea301e8..95b9b360bec 100644
--- a/shells/fish/patches/patch-build__tools_git__version__gen.sh
+++ b/shells/fish/patches/patch-build__tools_git__version__gen.sh
@@ -1,10 +1,10 @@
-$NetBSD: patch-build__tools_git__version__gen.sh,v 1.1 2021/07/16 08:50:50 jperkin Exp $
+$NetBSD: patch-build__tools_git__version__gen.sh,v 1.2 2022/08/18 18:11:51 wiz Exp $
Rename version file to avoid C++ <version> issue.
---- build_tools/git_version_gen.sh.orig 2021-07-06 14:45:37.000000000 +0000
+--- build_tools/git_version_gen.sh.orig 2022-06-16 10:49:19.000000000 +0000
+++ build_tools/git_version_gen.sh
-@@ -12,9 +12,9 @@ DEF_VER=unknown
+@@ -13,9 +13,9 @@ git_permission_failed=0
# First see if there is a version file (included in release tarballs),
# then try git-describe, then default.
@@ -13,6 +13,6 @@ Rename version file to avoid C++ <version> issue.
then
- VN=$(cat version) || VN="$DEF_VER"
+ VN=$(cat version.txt) || VN="$DEF_VER"
- elif ! VN=$(git -C "$FISH_BASE_DIR" describe --always --dirty 2>/dev/null); then
- VN="$DEF_VER"
- fi
+ else
+ if VN=$(git -C "$FISH_BASE_DIR" describe --always --dirty 2>/dev/null); then
+ :