pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/shells/fish fish: update to 3.5.0.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/a9a74658267d
branches:  trunk
changeset: 383383:a9a74658267d
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Thu Aug 18 18:11:51 2022 +0000

description:
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:

 shells/fish/Makefile                                        |   5 +--
 shells/fish/PLIST                                           |  19 ++++++++++--
 shells/fish/distinfo                                        |  10 +++---
 shells/fish/patches/patch-build__tools_git__version__gen.sh |  12 ++++----
 4 files changed, 29 insertions(+), 17 deletions(-)

diffs (194 lines):

diff -r 14f917c641c9 -r a9a74658267d shells/fish/Makefile
--- a/shells/fish/Makefile      Thu Aug 18 17:51:13 2022 +0000
+++ b/shells/fish/Makefile      Thu Aug 18 18:11:51 2022 +0000
@@ -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 -r 14f917c641c9 -r a9a74658267d shells/fish/PLIST
--- a/shells/fish/PLIST Thu Aug 18 17:51:13 2022 +0000
+++ b/shells/fish/PLIST Thu Aug 18 18:11:51 2022 +0000
@@ -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 @@
 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/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/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.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/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/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/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/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/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-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/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/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/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/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/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/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 -r 14f917c641c9 -r a9a74658267d shells/fish/distinfo
--- a/shells/fish/distinfo      Thu Aug 18 17:51:13 2022 +0000
+++ b/shells/fish/distinfo      Thu Aug 18 18:11:51 2022 +0000
@@ -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 -r 14f917c641c9 -r a9a74658267d shells/fish/patches/patch-build__tools_git__version__gen.sh
--- a/shells/fish/patches/patch-build__tools_git__version__gen.sh       Thu Aug 18 17:51:13 2022 +0000
+++ b/shells/fish/patches/patch-build__tools_git__version__gen.sh       Thu Aug 18 18:11:51 2022 +0000
@@ -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 @@
  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
+        :



Home | Main Index | Thread Index | Old Index