Elvish 0.20.0 has been released on 2024-02-11, 11 months after 0.19.1, bringing new features and bugfixes.
As usual, prebuilt binaries are offered for most common platforms.
Notable new features
-
A new
os:module providing access to operating system functionality. -
A new
read-bytescommand for reading a fixed number of bytes. -
New commands in the
file:module:file:open-output,file:seekandfile:tell. -
Maps now have their keys sorted when printed.
-
The
peachcommand now has a&num-workersoption (#648). -
The
from-jsoncommand now supports integers of arbitrary precision, and outputs them as exact integers rather than inexact floats. -
A new
str:fieldscommand (#1689). -
The
orderandcomparecommands now support a&totaloption, which allows sorting and comparing values of mixed types. -
The language server now supports showing the documentation of builtin functions and variables on hover (#1684).
-
Elvish now respects the
NO_COLORenvironment variable. Builtin UI elements as well as styled texts will not have colors if it is set and non-empty.
Notable bugfixes
-
has-value $li $vnow works correctly when$liis a list and$vis a composite value, like a map or a list. -
A bug with how the hash code of a map was computed could lead to unexpected results when using maps as map keys; it has now been fixed.
Breaking changes
-
The
exceptkeyword in thetrycommand was deprecated since 0.18.0 and is now removed. Usecatchinstead. -
The
float64command was deprecated since 0.16.0 and emitted deprecation warnings since 0.19.1, and is now removed. Usenumorinexact-numinstead.
Deprecated features
Deprecated features will be removed in 0.21.0.
The following deprecated features trigger a warning whenever the code is parsed and compiled, even if it is not executed:
-
The
eawkcommand is now deprecated. Usere:awkinstead.