v0.5
Pre-release
Pre-release
Breaking changes
- The
println
builtin is now known asecho
, shadowing the externalecho
. - Changes on comparison builtins:
- A family of string comparison builtins have been added,
<s
,<=s
,==s
,!=s
,>s
and>=s
(#238). - The
is
builtin is the new generic (shallow) equality predicate. The deep equality predicatedeepeq
is now known simply aseq
. - The
==
builtin now compares numbers --== 1 1.0
is true, while== a a
throws an exception. To compare strings, use either==s
oris
.
- A family of string comparison builtins have been added,
- Automatic
use
'ing has been removed. All modules must beuse
d before use. - The
into-lines
builtin is now known asto-lines
. - The
history
builtin has been removed; use$le:history
instead (#267).
Other notable changes
- When run interactively, predicates that return false are now indicated with a ✗ sign.
- Completion listing now has black text over a light background (#184), and is no longer unnecessarily tall (https://asciinema.org/a/87937).
- Strings can now be indexed to obtain substrings (#243).
- The
peach
command, a parallel version ofeach
has been added (#244). - Multi-level modules are supported. For instance, the
a:b
module is the file~/.elvish/a/b.elv
(#249). - When exceptions are thrown, a full stack trace is now displayed (#207, https://asciinema.org/a/88801).
- An unstable builtin
-time
has been added that shows the time to run a function. - An unstable builtin
-override-wcwidth
has been added to override wcwidth. - The navigation mode now supports previewing UTF-8-encoded text files (https://asciinema.org/a/89374).
- A variable
$le:after-readline
has been added. It is a list of functions to be called just after the line editor completes reading input, with the input as the sole argument. - The auxiliary
elvish-stub
program has been removed, and elvish now always runs in foreground. As a nice side effect, elvish is go-gettable again.