Path to this page:
Subject: CVS commit: pkgsrc/shells/elvish
From: pin
Date: 2023-03-05 08:37:37
Message id: 20230305073737.A14A2FA90@cvs.NetBSD.org
Log Message:
shells/elvish: update to 0.19.1
Note: The 0.19.0 version was tagged prematurely by mistake, but it has been
picked up by some package managers. As a result, the 0.19.0 version is
considered to be "skipped" officially. If your package manager provides a
0.19.0 version, it is probably identical to 0.19.1 in functionalities.
Packagers who have already packaged 0.19.0 are still advised to \
"upgrade" to
0.19.1.
Notable new features
- A new doc module provides access to the documentation of builtin modules.
- A new conj command “appends” values to a list, and has a guaranteed time
complexity independent of the size of the list.
- A new inexact-num converts its argument to an inexact number.
- It is functionally identical to the now deprecated float64 command since the
Go float64 type is the only underlying inexact number type for now. Its
behavior may change in future if there are more underlying types for inexact
numbers.
- A new type of interactive abbreviation: edit:command-abbr (#1472).
- The order and compare commands now support boolean values (#1585).
- A new path:join command and path:separator and path:list-separator variables
(#1562).
- A new runtime: module that contains paths important for the Elvish runtime
(#1385, #1423).
- A new compact command that replaces consecutive runs of equal values with a
single copy, similar to the Unix uniq command.
- The order command has a new &key option (#1570).
- A new benchmark command has been added (#1586).
- When checking compilation errors, Elvish no longer stops after the first
error found. For example, if $a and $b are both not defined, echo $a $b now
yields two errors. This applies to both the interactive REPL and
elvish -compile-only.
- When using an unimported builtin modules from the REPL, the REPL now shows
the use command needed to import it, which can be executed from a key
binding. This functionality is bound to Ctrl-A by default.
- New variables exposing the terminal and null device in an OS-agnostic
fashion: $path:dev-tty and $path:dev-null. They are /dev/tty and /dev/null
on Unix, and CON and NUL on Windows (#1633).
Breaking changes
- When a styled or styled-segment is printed to terminal, the resulting
sequence will now always ignore any existing SGR state.
- Symbolic links are now always treated as ordinary files by the global
modifiers type:dir and type:regular in wildcard expansions.
- Support for shared vars has been removed, along with its API
(store:shared-var, store:set-shared-var and store:del-shared-var).
- The try command no longer supports the except keyword. It has been
superseded by the catch keyword.
Deprecated features
Deprecated features will be removed in 0.20.0.
The following deprecated features trigger a warning whenever the code is parsed
and compiled, even if it is not executed:
- The float64 command is now deprecated. Use num for constructing a typed
number, or inexact-num for constructing an inexact number.
- The documentation has advertised it as deprecated since the 0.16.0 release,
but deprecation warnings were never added.
Notable bugfixes
- Temporary assignment on an unset environment variables no longer leave it
set to an empty string (#1448).
- Broken symbolic links no longer terminate a wildcard expansion prematurely
(#1240).
- On Windows, command completion for executables now also works for local
files.
Files: