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.3.1.
details: https://anonhg.NetBSD.org/pkgsrc/rev/ac2b9f4658dd
branches: trunk
changeset: 456005:ac2b9f4658dd
user: jperkin <jperkin%pkgsrc.org@localhost>
date: Fri Jul 16 08:50:50 2021 +0000
description:
fish: Update to 3.3.1.
While here fix a C++ <version> build issue seen on macOS.
fish 3.3.1 (released July 6, 2021)
==================================
This release of fish fixes the following problems identified in fish 3.3.0:
- The prompt and command line are redrawn correctly in response to universal
variable changes (:issue:`8088`).
- 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 (:issue:`8095`).
- The Vi mode indicator in the prompt is repainted correctly after
:kbd:`Ctrl-C` cancels the current command (:issue:`8103`).
- fish builds correctly on platforms that do not have a ``spawn.h`` header,
such as old versions of OS X (:issue:`8097`).
A number of improvements to the documentation, and fixes for completions, are
included as well.
If you are upgrading from version 3.2.2 or before, please also review the
release notes for 3.3.0 (included below).
fish 3.3.0 (released June 28, 2021)
===================================
Notable improvements and fixes
------------------------------
- ``fish_config`` gained a ``prompt`` subcommand to show and pick from the
sample prompts directly in the terminal, instead of having to open a
webbrowser. For example ``fish_config prompt choose default`` loads the
default prompt in the current session (:issue:`7958`).
- The documentation has been reorganized to be easier to understand
(:issue:`7773`).
Deprecations and removed features
---------------------------------
- The ``$fish_history`` value "default" is no longer special. It used to be
treated the same as "fish" (:issue:`7650`).
- Redirection to standard error with the ``^`` character has been disabled by
default. It can be turned back on using the ``stderr-nocaret`` feature flag,
but will eventually be disabled completely (:issue:`7105`).
- Specifying an initial tab to ``fish_config`` now only works with
``fish_config browse`` (e.g. ``fish_config browse variables``), otherwise it
would interfere with the new ``prompt`` subcommand (see below)
(:issue:`7958`).
Scripting improvements
----------------------
- ``math`` gained new functions ``log2`` (like the documentation claimed),
``max`` and ``min`` (:issue:`7856`). ``math`` functions can be used without
the parentheses (eg ``math sin 2 + 6``), and functions have the lowest
precedence in the order of operations (:issue:`7877`).
- Shebang (``#!``) lines are no longer required within shell scripts, improving
support for scripts with concatenated binary contents. If a file fails to
execute and passes a (rudimentary) binary safety check, fish will re-invoke
it using ``/bin/sh`` (:issue:`7802`).
- Exit codes are better aligned with bash. A failed execution now reports
``$status`` of 127 if the file is not found, and 126 if it is not executable.
- ``echo`` no longer writes its output one byte at a time, improving
performance and allowing use with Linux's special API files (``/proc``,
``/sys`` and such) (:issue:`7836`).
- fish should now better handle ``cd`` on filesystems with broken ``stat(3)``
responses (:issue:`7577`).
- Builtins now properly report a ``$status`` of 1 upon unsuccessful writes
(:issue:`7857`).
- ``string match`` with unmatched capture groups and without the ``--all`` flag
now sets an empty variable instead of a variable containing the empty string.
It also correctly imports the first match if multiple arguments are provided,
matching the documentation. (:issue:`7938`).
- fish produces more specific errors when a command in a command substitution
wasn't found or is not allowed. This now prints something like "Unknown
command" instead of "Unknown error while evaluating command substitution".
- ``fish_indent`` allows inline variable assignments (``FOO=BAR command``) to
use line continuation, instead of joining them into one line (:issue:`7955`).
- fish gained a ``--no-config`` option to disable configuration files. This
applies to user-specific and the systemwide ``config.fish`` (typically in
``/etc/fish/config.fish``), and configuration snippets (typically in
``conf.d`` directories). It also disables universal variables, history, and
loading of functions from system or user configuration directories
(:issue:`7921`, :issue:`1256`).
- When universal variables are unavailable for some reason, setting a universal
variable now sets a global variable instead (:issue:`7921`).
- ``$last_pid`` now contains the process ID of the last process in the
pipeline, allowing it to be used in scripts (:issue:`5036`, :issue:`5832`,
:issue:`7721`). Previously, this value contained the process group ID, but in
scripts this was the same as the running fish's process ID.
- ``process-exit`` event handlers now receive the same value as ``$status`` in
all cases, instead of receiving -1 when the exit was due to a signal.
- ``process-exit`` event handlers for PID 0 also received ``JOB_EXIT`` events;
this has been fixed.
- ``job-exit`` event handlers may now be created with any of the PIDs from the
job. The handler is passed the last PID in the job as its second argument,
instead of the process group.
- Trying to set an empty variable name with ``set`` no longer works (these
variables could not be used in expansions anyway).
- ``fish_add_path`` handles an undefined ``PATH`` environment variable
correctly (:issue:`8082`).
Interactive improvements
-------------------------
- Commands entered before the previous command finishes will now be properly
syntax highlighted.
- fish now automatically creates ``config.fish`` and the configuration
directories in ``$XDG_CONFIG_HOME/fish`` (by default ``~/.config/fish``) if
they do not already exist (:issue:`7402`).
- ``$SHLVL`` is no longer incremented in non-interactive shells. This means it
won't be set to values larger than 1 just because your environment happens to
run some scripts in $SHELL in its startup path (:issue:`7864`).
- fish no longer rings the bell when flashing the command line. The flashing
should already be enough notification and the bell can be annoying
(:issue:`7875`).
- ``fish --help`` is more helpful if the documentation isn't installed
(:issue:`7824`).
- ``funced`` won't include an entry on where a function is defined, thanks to
the new ``functions --no-details`` option (:issue:`7879`).
- A new variable, ``fish_killring``, containing entries from the killring, is
now available (:issue:`7445`).
- ``fish --private`` prints a note on private mode on startup even if
``$fish_greeting`` is an empty list (:issue:`7974`).
- fish no longer attempts to lock history or universal variable files on remote
filesystems, including NFS and Samba mounts. In rare cases, updates to these
files may be dropped if separate fish instances modify them simultaneously.
(:issue:`7968`).
- ``wait`` and ``on-process-exit`` work correctly with jobs that have already
exited (:issue:`7210`).
- ``__fish_print_help`` (used for ``--help`` output for fish's builtins) now
respects the ``LESS`` environment variable, and if not set, uses better
default pager settings (:issue:`7997`).
- Errors from ``alias`` are now printed to standard error, matching other
builtins and functions (:issue:`7925`).
- ``ls`` output is colorized on OpenBSD if colorls utility is installed
(:issue:`8035`)
- The default pager color looks better in terminals with light backgrounds
(:issue:`3412`).
- Further robustness improvements to the bash history import (:issue:`7874`).
- fish now tries to find a Unicode-aware locale for encoding (``LC_CTYPE``) if
started without any locale information, improving the display of emoji and
other non-ASCII text on misconfigured systems (:issue:`8031`). To allow a C
locale, set the variable ``fish_allow_singlebyte_locale`` to 1.
- The Web-based configuration and documentation now feature a dark mode if the
browser requests it (:issue:`8043`).
- Color variables can now also be given like ``--background red`` and ``-b
red``, not just ``--background=red`` (:issue:`8053`).
- ``exit`` run within ``fish_prompt`` now exits properly (:issue:`8033`).
- When attempting to execute the unsupported POSIX-style brace command group
(``{ ... }``) fish will suggest its equivalent ``begin; ...; end`` commands
(:issue:`6415`).
New or improved bindings
^^^^^^^^^^^^^^^^^^^^^^^^
- Pasting in Vi mode puts text in the right place in normal mode
(:issue:`7847`).
- Vi mode's :kbd:`u` is bound to ``undo`` instead of
``history-search-backward``, following GNU readline's behavior. Similarly,
:kbd:`Control-R` is bound to ``redo`` instead of ``history-search-backward``,
following Vim (:issue:`7908`).
- :kbd:`s` in Vi visual mode now does the same thing as :kbd:`c`
(:issue:`8039`).
- The binding for :kbd:`"*y` now uses ``fish_clipboard_copy``, allowing it to
support more than just ``xsel``.
- The :kbd:`Control-Space` binding can be correctly customised (:issue:`7922`).
- ``exit`` works correctly in bindings (:issue:`7967`).
- The :kbd:`F1` binding, which opens the manual page for the current command,
now works around a bug in certain ``less`` versions that fail to clear the
screen (:issue:`7863`).
- The binding for :kbd:`Alt-S` now toggles whether ``sudo`` is prepended, even
when it took the commandline from history instead of only adding it.
- The new functions ``fish_commandline_prepend`` and
``fish_commandline_append`` allow toggling the presence of a prefix/suffix on
the current commandline. (:issue:`7905`).
- ``backward-kill-path-component`` :kbd:`Control-W`) no longer erases parts of
two tokens when the cursor is positioned immediately after ``/``.
(:issue:`6258`).
Improved prompts
^^^^^^^^^^^^^^^^
- The default Vi mode prompt now uses foreground instead of background colors,
making it less obtrusive (:issue:`7880`).
- Performance of the "informative" git prompt is improved somewhat
(:issue:`7871`). This is still slower than the non-informative version by its
very nature. In particular it is IO-bound, so it will be very slow on slow
disks or network mounts.
- The sample prompts were updated. Some duplicated prompts, like the various
classic variants, or less useful ones, like the "justadollar" prompt were
removed, some prompts were cleaned up, and in some cases renamed. A new
"simple" and "disco" prompt were added (:issue:`7884`, :issue:`7897`,
:issue:`7930`). The new prompts will only take effect when selected and
existing installed prompts will remain unchanged.
- A new ``prompt_login`` helper function to describe the kind of "login" (user,
host and chroot status) for use in prompts. This replaces the old "debian
chroot" prompt and has been added to the default and terlar prompts
(:issue:`7932`).
- The Web-based configuration's prompt picker now shows and installs right
prompts (:issue:`7930`).
- The git prompt now has the same symbol order in normal and "informative"
mode, and it's customizable via ``$__fish_git_prompt_status_order``
(:issue:`7926`).
Completions
^^^^^^^^^^^
- Added completions for:
- ``firewall-cmd`` (:issue:`7900`)
- ``sv`` (:issue:`8069`)
- Improvements to plenty of completions!
- Commands that wrap ``cd`` (using ``complete --wraps cd``) get the same
completions as ``cd`` (:issue:`4693`).
- The ``--force-files`` option to ``complete`` works for bare arguments, not
just options (:issue:`7920`).
- Completion descriptions for functions don't include the function definition,
making them more concise (:issue:`7911`).
- The ``kill`` completions no longer error on MSYS2 (:issue:`8046`).
- Completion scripts are now loaded when calling a command via a relative path
(like ``./git``) (:issue:`6001`, :issue:`7992`).
- When there are multiple completion candidates, fish inserts their shared
prefix. This prefix was computed in a case-insensitive way, resulting in
wrong case in the completion pager. This was fixed by only inserting prefixes
with matching case (:issue:`7744`).
Improved terminal support
^^^^^^^^^^^^^^^^^^^^^^^^^
- fish no longer tries to detect a missing new line during startup, preventing
an erroneous ``⏎`` from appearing if the terminal is resized at the wrong
time, which can happen in tiling window managers (:issue:`7893`).
- fish behaves better when it disagrees with the terminal on the width of
characters. In particular, staircase effects with right prompts should be
gone in most cases (:issue:`8011`).
- If the prompt takes up the entire line, the last character should no longer
be chopped off in certain terminals (:issue:`8002`).
- fish's reflow handling has been disabled by default for kitty
(:issue:`7961`).
- The default prompt no longer produces errors when used with a dumb terminal
(:issue:`7904`).
- Terminal size variables are updated for window size change signal handlers
(``SIGWINCH``).
- Pasting within a multi-line command using a terminal that supports bracketed
paste works correctly, instead of producing an error (:issue:`7782`).
- ``set_color`` produces an error when used with invalid arguments, rather than
empty output which interacts badly with Cartesian product expansion.
For distributors
----------------
- fish runs correctly on platforms without the ``O_CLOEXEC`` flag for
``open(2)`` (:issue:`8023`).
diffstat:
shells/fish/Makefile | 8 +-
shells/fish/PLIST | 41 ++++++------
shells/fish/distinfo | 11 +-
shells/fish/patches/patch-build__tools_git__version__gen.sh | 18 +++++
4 files changed, 50 insertions(+), 28 deletions(-)
diffs (216 lines):
diff -r f44777e4df2b -r ac2b9f4658dd shells/fish/Makefile
--- a/shells/fish/Makefile Fri Jul 16 08:41:31 2021 +0000
+++ b/shells/fish/Makefile Fri Jul 16 08:50:50 2021 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.30 2021/04/08 10:46:52 nia Exp $
+# $NetBSD: Makefile,v 1.31 2021/07/16 08:50:50 jperkin Exp $
-DISTNAME= fish-3.2.2
+DISTNAME= fish-3.3.1
CATEGORIES= shells
MASTER_SITES= ${MASTER_SITE_GITHUB:=fish-shell/}
GITHUB_PROJECT= fish-shell
@@ -48,6 +48,10 @@
OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/conf.d
OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/completions
+# Avoid C++ <version> issues.
+post-extract:
+ ${MV} ${WRKSRC}/version ${WRKSRC}/version.txt
+
.include "../../devel/pcre2/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/gettext-tools/buildlink3.mk"
diff -r f44777e4df2b -r ac2b9f4658dd shells/fish/PLIST
--- a/shells/fish/PLIST Fri Jul 16 08:41:31 2021 +0000
+++ b/shells/fish/PLIST Fri Jul 16 08:50:50 2021 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.11 2021/03/19 10:19:35 nia Exp $
+@comment $NetBSD: PLIST,v 1.12 2021/07/16 08:50:50 jperkin Exp $
bin/fish
bin/fish_indent
bin/fish_key_reader
@@ -8,19 +8,14 @@
share/applications/fish.desktop
share/doc/fish/.buildinfo
share/doc/fish/CHANGELOG.rst
-share/doc/fish/_static/ajax-loader.gif
share/doc/fish/_static/basic.css
share/doc/fish/_static/classic.css
-share/doc/fish/_static/comment-bright.png
-share/doc/fish/_static/comment-close.png
-share/doc/fish/_static/comment.png
share/doc/fish/_static/default.css
share/doc/fish/_static/doctools.js
share/doc/fish/_static/documentation_options.js
-share/doc/fish/_static/down-pressed.png
-share/doc/fish/_static/down.png
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.js
share/doc/fish/_static/language_data.js
share/doc/fish/_static/minus.png
@@ -29,10 +24,8 @@
share/doc/fish/_static/pygments.css
share/doc/fish/_static/searchtools.js
share/doc/fish/_static/sidebar.js
+share/doc/fish/_static/underscore-1.12.0.js
share/doc/fish/_static/underscore.js
-share/doc/fish/_static/up-pressed.png
-share/doc/fish/_static/up.png
-share/doc/fish/_static/websupport.js
share/doc/fish/cmds/_.html
share/doc/fish/cmds/abbr.html
share/doc/fish/cmds/alias.html
@@ -104,6 +97,7 @@
share/doc/fish/cmds/popd.html
share/doc/fish/cmds/prevd.html
share/doc/fish/cmds/printf.html
+share/doc/fish/cmds/prompt_login.html
share/doc/fish/cmds/prompt_pwd.html
share/doc/fish/cmds/psub.html
share/doc/fish/cmds/pushd.html
@@ -152,6 +146,8 @@
share/doc/fish/fish_for_bash_users.html
share/doc/fish/genindex.html
share/doc/fish/index.html
+share/doc/fish/interactive.html
+share/doc/fish/language.html
share/doc/fish/license.html
share/doc/fish/objects.inv
share/doc/fish/relnotes.html
@@ -396,8 +392,10 @@
share/fish/completions/figlet.fish
share/fish/completions/file.fish
share/fish/completions/find.fish
+share/fish/completions/firewall-cmd.fish
share/fish/completions/fish.fish
share/fish/completions/fish_add_path.fish
+share/fish/completions/fish_config.fish
share/fish/completions/fish_indent.fish
share/fish/completions/fish_key_reader.fish
share/fish/completions/flac.fish
@@ -508,7 +506,6 @@
share/fish/completions/kitty.fish
share/fish/completions/kldload.fish
share/fish/completions/kldunload.fish
-share/fish/completions/la.fish
share/fish/completions/latex.fish
share/fish/completions/latexmk.fish
share/fish/completions/launchctl.fish
@@ -517,7 +514,6 @@
share/fish/completions/less.fish
share/fish/completions/light.fish
share/fish/completions/lightdm.fish
-share/fish/completions/ll.fish
share/fish/completions/ln.fish
share/fish/completions/localectl.fish
share/fish/completions/locate.fish
@@ -800,6 +796,7 @@
share/fish/completions/su.fish
share/fish/completions/subl.fish
share/fish/completions/sudo.fish
+share/fish/completions/sv.fish
share/fish/completions/svn.fish
share/fish/completions/sylpheed.fish
share/fish/completions/synclient.fish
@@ -1101,6 +1098,8 @@
share/fish/functions/fish_clipboard_copy.fish
share/fish/functions/fish_clipboard_paste.fish
share/fish/functions/fish_command_not_found.fish
+share/fish/functions/fish_commandline_append.fish
+share/fish/functions/fish_commandline_prepend.fish
share/fish/functions/fish_config.fish
share/fish/functions/fish_default_key_bindings.fish
share/fish/functions/fish_default_mode_prompt.fish
@@ -1141,6 +1140,7 @@
share/fish/functions/prevd-or-backward-word.fish
share/fish/functions/prevd.fish
share/fish/functions/prompt_hostname.fish
+share/fish/functions/prompt_login.fish
share/fish/functions/prompt_pwd.fish
share/fish/functions/psub.fish
share/fish/functions/pushd.fish
@@ -1191,6 +1191,8 @@
share/fish/man/man1/fish-doc.1
share/fish/man/man1/fish-faq.1
share/fish/man/man1/fish-for-bash-users.1
+share/fish/man/man1/fish-interactive.1
+share/fish/man/man1/fish-language.1
share/fish/man/man1/fish-releasenotes.1
share/fish/man/man1/fish-tutorial.1
share/fish/man/man1/fish.1
@@ -1231,6 +1233,7 @@
share/fish/man/man1/popd.1
share/fish/man/man1/prevd.1
share/fish/man/man1/printf.1
+share/fish/man/man1/prompt_login.1
share/fish/man/man1/prompt_pwd.1
share/fish/man/man1/psub.1
share/fish/man/man1/pushd.1
@@ -1293,20 +1296,16 @@
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/classic.fish
-share/fish/tools/web_config/sample_prompts/classic_status.fish
-share/fish/tools/web_config/sample_prompts/classic_vcs.fish
-share/fish/tools/web_config/sample_prompts/debian_chroot.fish
+share/fish/tools/web_config/sample_prompts/arrow.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
share/fish/tools/web_config/sample_prompts/informative_vcs.fish
-share/fish/tools/web_config/sample_prompts/justadollar.fish
-share/fish/tools/web_config/sample_prompts/lonetwin.fish
share/fish/tools/web_config/sample_prompts/minimalist.fish
share/fish/tools/web_config/sample_prompts/nim.fish
share/fish/tools/web_config/sample_prompts/pythonista.fish
-share/fish/tools/web_config/sample_prompts/robbyrussell.fish
-share/fish/tools/web_config/sample_prompts/screen_savvy.fish
-share/fish/tools/web_config/sample_prompts/sorin.fish
+share/fish/tools/web_config/sample_prompts/scales.fish
+share/fish/tools/web_config/sample_prompts/simple.fish
share/fish/tools/web_config/sample_prompts/terlar.fish
share/fish/tools/web_config/webconfig.py
share/locale/de/LC_MESSAGES/fish.mo
diff -r f44777e4df2b -r ac2b9f4658dd shells/fish/distinfo
--- a/shells/fish/distinfo Fri Jul 16 08:41:31 2021 +0000
+++ b/shells/fish/distinfo Fri Jul 16 08:50:50 2021 +0000
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.22 2021/04/08 10:46:52 nia Exp $
+$NetBSD: distinfo,v 1.23 2021/07/16 08:50:50 jperkin Exp $
-SHA1 (fish-3.2.2.tar.xz) = a30b2d21ebec63a00282181b8660224ce71edbad
-RMD160 (fish-3.2.2.tar.xz) = e24a3f7a3b073bc9295e897bd3103f7ae33702f4
-SHA512 (fish-3.2.2.tar.xz) = e82c5a390bd94f84c60843a94dc4f30bd46539828a54d2e96f208e0d54a0aa361a8c9d4a66cdf2fa636a5fab310a96bf1c165c58440c38d123f788fff3598f4a
-Size (fish-3.2.2.tar.xz) = 3411748 bytes
+SHA1 (fish-3.3.1.tar.xz) = 2a220f67b8eee0e0f2439411e9cc6c0320970caa
+RMD160 (fish-3.3.1.tar.xz) = 9ec5b3ee590427a9e7d7b4691da13970385ded0f
+SHA512 (fish-3.3.1.tar.xz) = fc50ca44fab3f2d942284d4f714150f7ccf1e49c73da36f8d4ae4a33a9b3280f98bed15848839f5d443b4274fd0ff90174bafa6a8e9a4da226dda63d7766a660
+Size (fish-3.3.1.tar.xz) = 3489152 bytes
+SHA1 (patch-build__tools_git__version__gen.sh) = 0c8feb0880d742e5de7f510a67680edbdd603aed
SHA1 (patch-cmake_Install.cmake) = 6ae3f511597773dfd9bf2d22c2d8dd0b60d87ae2
diff -r f44777e4df2b -r ac2b9f4658dd shells/fish/patches/patch-build__tools_git__version__gen.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/shells/fish/patches/patch-build__tools_git__version__gen.sh Fri Jul 16 08:50:50 2021 +0000
@@ -0,0 +1,18 @@
+$NetBSD: patch-build__tools_git__version__gen.sh,v 1.1 2021/07/16 08:50:50 jperkin 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
+@@ -12,9 +12,9 @@ DEF_VER=unknown
+
+ # First see if there is a version file (included in release tarballs),
+ # then try git-describe, then default.
+-if test -f version
++if test -f version.txt
+ 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
Home |
Main Index |
Thread Index |
Old Index