This release sees new optional features plus major bug fixes to the existing code base:
config shell keys have changed names:
This is to better describe their functionality now that those values are also used for
DynamicDesc autocompletions as well as recursive directory lookups.
This change might break some of your existing profile config!
configshell max-suggestions now defaults at
12rather than 6
select, allows you to inline SQL queries against any tabulated output (eg
ps -fe, jsonlines arrays, CSV files, etc). This works via importing output into an in memory sqlite3 database. However this also breaks cross compiling due to the C includes with sqlite3. Thus this builtin will remain optional for now.
// +buildheaders in
.gofiles, optionals can be copied (or symlinked) from
builtins/imports_build. This enables us to write a user friendly pre-compiling build script to enable users to easily select which optional builtins to include.
^zhas been fixed in UNIX. This was a regression bug introduced a while back however no tests were in place to catch it. Unfortunately this kind of testing would fall outside of unit testing each function so I'll need to add another layer of testing against the compiled executable to verify any future regressions like these: discussion To use this feature, run a command and then press
^z(ctrl+z) to pause the process. You can check which jobs have been paused via
jobsand/or modify processes to run in the background/foreground via
ReadArrayWithType(). This solves some edge cases in
foreachwhere elements might not match the same data type as the parent object (eg a
jsonobject might have
strelements in an array)
Dynamicautocompletions are executed to fall in line with
DynamicDesc. This should bring improvements to running autocompletions in the background and thus improve the user experience with regards to the shell's responsiveness. The next step would be to have a lower soft-timeout
Published: 30.04.2021 at 10:00
*(generic): generic (primitive)
ReadArrayWithType()(type): Read from a data type one array element at a time and return the elements contents and data type
bg: Run processes in the background
fg: Sends a background process into the foreground
foreach: Iterate through an array
jobs: Lists all running functions within the current murex session
jsonl: JSON Lines (primitive)
select: Inlining SQL into shell pipelines