v2.3
v2.3
This release includes significant changes to the interactive terminal
This release brings some major improvements to the discoverability of commands and their parameters in the interactive terminal.
User Facing Changes:
New builtin:
method
. This is used to help turn some commands into a "method", similar in concept to object orientated development where the tab- completer will return a list of other commands that are compatible with the formers output data types. It's purely an autocompletion tool and has no effect in shell scripts.Autocompletion suggestions will differ based on what pipes are used. The idea behind this is to improve the discoverability of commands. All tokens can still be used to pipeline to any command type (like before). This rule only affects autocomplete suggestions in the interactive prompt.
|
will show all available aliases, functions, builtins and external commands, as usual->
will default to showing only compatible commands defined inmethod
(see above), however if no methods are found then->
will fall back to suggesting all available aliases, functions, builtins and external commands, like|
.
The idea here is for
->
to surface commands that are commonly expected to be pipelined together but without forcing the user to pause and remember which token exposes what commands. While|
is still available for familiarityAutocompletion de-duplication now places hyphen-prefixed flags at the end of the results when sorting. This helps bring more relevant flags forward, with hyphen-prefixed flags still visible when users press
-
External commands return a error message if the exit status is non-zero (issue #299)
» exec: false Error in `exec` (1,1): exit status 1
Index()
([
) now returns a different data type from the root object if the element is a string, integer, float64, boolean or nil (issue #316)runtime
was missing a few flags for reporting supported data types against the newer APIsGeneric types (
*
/generic
) to include two spaces between columns when marshalledSyntax highlighter colour tweaks -- no longer using background highlighting because that looks weird and unreadable on some terminal colour schemes
Bug fixes to the fast parser
Bug fixes to readline merged from
v2.2.1200
(issue #362)
Non-User Facing / Maintenance Changes:
hcl
andbson
types now useReadArray
templates so their behavior should mimic JSON and YAMLFast parser is now aware of which pipe token (eg
|
,->
,=>
,?
) is usedUnit test concurrency fix
New tests written for the fast parser
Refactored code around hint text and completions to allow for a potential new UI feature to be built in the future
Updated documentation
Published: 26.09.2021 at 11:33
See Also
- Define Method Relationships (
method
): Define a methods supported data-types - Shell Runtime (
runtime
): Returns runtime information on the internal state of Murex ->
Arrow Pipe: Pipes stdout from the left hand command to stdin of the right hand command|
POSIX Pipe: Pipes stdout from the left hand command to stdin of the right hand command
This document was generated from gen/changelog/v2.3_doc.yaml.