Permalink
Browse files

CHANGELOG: updates for 2.5b1

  • Loading branch information...
1 parent 41a41b1 commit 81a41e26f80b6c409a19be3e44cbc222e9195d03 @zanchey zanchey committed Jan 11, 2017
Showing with 74 additions and 17 deletions.
  1. +74 −17 CHANGELOG.md
View
@@ -1,31 +1,88 @@
# fish 2.5b1 (released ???)
+## Platform Changes
+
+Starting with version 2.5, fish requires a more up-to-date version of C++, specifically C++11 (from 2011). This affects some older platforms:
+
+### Linux
+
+For users building from source, GCC's g++ 4.8 or later, or LLVM's clang 3.3 or later, are known to work. Older platforms may require a newer compiler installed.
+
+Unfortunately, because of the complexity of the toolchain, binary packages are no longer published by the fish-shell developers for the following platforms:
+
+ - Red Hat Enterprise Linux and CentOS 5 & 6 for 64-bit builds
+ - Ubuntu 12.04 (EoLTS April 2017)
+ - Debian 7 (EoLTS May 2018)
+
+Installing newer version of fish on these systems will require building from source.
+
+### OS X SnowLeopard
+
+Starting with version 2.5, fish requires a C++11 standard library on OS X 10.6 ("SnowLeopard"). If this library is not installed, you will see this error: `dyld: Library not loaded: /usr/lib/libc++.1.dylib`
+
+MacPorts is the easiest way to obtain this library. After installing the SnowLeopard MacPorts release from the install page, run:
+
+```
+sudo port -v install libcxx
+```
+
+Now fish should launch successfully. (Please open an issue if it does not.)
+
+This is only necessary on 10.6. OS X 10.7 and later include the required library by default.
+
## Significant changes
-- fish now requires C++11 to build. GCC's g++ 4.8 or later, or LLVM's clang 3.3 or later, are known to work. Older platforms may require a newer compiler installed.
+
+- fish now requires C++11 to build. This affects some older platforms; please see the Platform changes section for more information.
- Attempting to exit with running processes in the background produces a warning, then signals them to terminate if a second attempt to terminate them is made. This brings the behaviour for running background processes into line with stopped processes. (#3497)
-- The `random` command can now have start, stop and step values specified, or the new `choice` subcommand can be used to pick an argument from a list (#3619).
-- The `test` command now prints errors for numeric operations on invalid integers (#3346, #3581).
-- List indexes are handled better, and a bit more liberally in some cases (`echo $PATH[1 .. 3]` is now valid) (#3579).
-- `function` now errors out if passed invalid flags (#3574).
-- `set_color` now supports italics ("-i") and dim mode ("-d") (#3650).
-- `command` now accepts "-q"/"--quiet" for `command -sq $command` (#3591).
-- Selection mode (used with "begin-selection") no longer selects a character the cursor does not move over (#3684).
-- The `help` command now reads the $fish_help_browser variable (#3131).
+- `random` can now have start, stop and step values specified, or the new `choice` subcommand can be used to pick an argument from a list (#3619).
+- A new key bindings preset, `fish_hybrid_key_bindings`, including all the Emacs-style and Vi-style bindings, which behaves like `fish_vi_key_bindings` in fish 2.3.0 (#3556).
+- `function` now returns an error when called with invalid options, rather than defining the function anyway (#3574). This was a regression present in fish 2.3 and 2.4.0.
- fish no longer prints a warning when it identifies a running instance of an old version (2.1.0 and earlier). Changes to universal variables may not propagate between these old versions and 2.5b1.
+- Improved compatiblity with Android (#3585), MSYS/mingw (#2360), Solaris (#3456, #3340)
+- Like other shells, the `test` builting now returns an error for numeric operations on invalid integers (#3346, #3581).
+- `complete` no longer recognises `--authoritative` and `--unauthoritative` options, and they are marked as obsolete.
+- `status` accepts subcommands, and should be used like `status is-interactive`. The old options continue to be supported for the foreseeable future (#3526), although only one subcommand or option can be specified at a time.
+- Selection mode (used with "begin-selection") no longer selects a character the cursor does not move over (#3684).
+- List indexes are handled better, and a bit more liberally in some cases (`echo $PATH[1 .. 3]` is now valid) (#3579).
## 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).
-- The `status` command now accepts subcommands like `status is-interactive`. The old forms continue to be supported for the foreseeable future (#3526).
+- 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).
-- A new function `edit_command_buffer` (bound to alt-e/alt-v by default) to edit the command buffer in $EDITOR (#3627).
-- __fish_man_page (bound to alt-h by default) now tries to recognize subcommands (e.g. `git add` will now open the "git-add" man page) (#3678).
-- Improved completions for `apt` (#3695), `nmcli` (#3648), `fusermount` (#3642), `make` (#3628).
-- Added completions for `VBoxHeadless`, `VBoxSDL`, `base64`, `caffeinate`, `dconf`,
- `dig`, `dpkg-reconfigure`, `feh`, `launchctl`, `lxc`, `mddiagnose`, `mdfind`,
- `mdimport`, `mdls`, `mdutil`, `mkvextract`, `nvram`, `objdump`,
- `sysbench`, and `tmutil`.
+- 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)
+
---
# fish 2.4.0 (released November 8, 2016)

0 comments on commit 81a41e2

Please sign in to comment.