This is a major release that brings a significant number of changes and improvements, including a complete overhaul of the parser. Backwards compatibility is a high priority however these new features bring greater readability and consistency to shell scripting. So while the older syntax remains for compatibility, it is worth migrating over to the newer syntax for all new code being written
bson
. This was disabled by default and likely never used. So it has been removed to reduce Murex’s testing footprint. It can easily be re-added if anyone does actually use itcoreutils
. This was actually enabled by default for Windows builds. However rewriting Linux/UNIX coreutils for Windows support is a massive project in its own right and with the maturity of WSL there’s almost no reason to run Murex on “native Windows”. So the coreutils
builtin has been dropped to allow us to focus on the responsibilities of the shell5 * 5
or foobar = $foo + "bar"
, etc. This syntax can be used directly or specified specifically via the expr
builtin%{ foo: bar }
%[ foo bar ]
%()
(this is preferred over the, now deprecated, feature of parenthesis quotes)[]
(@[
is now deprecated)/# comment #/
. It is unfortunate this differs from C-style comments (/* comment */
) but this has to be the case because /*
is ambiguous for barewords in shells: is it a path and glob or a comment? Where as /#
isn’t a common term due to #
denoting a commentnull
as a data type across the pipe, it will be ignored. This solves the problem where functions that don’t write to stdout would still define the data typeconfig
@g
removed. It is no longer needed with expand-glob enabled by defaultcontinue
: skip subsequent processes in an iteration block and continue to next iterationbreak
: exit out of a block of code (eg in an iteration loop)[
): *1
: 1st row, *A
: 1st columnhelp
-> murex-docs
. This brings Murex a little more inline with Bash et al^
autocompletion addedgetfile
writes to disk if stdout is a TTYja
) now writes an integer array if range is integers. eg ja: [1..3]
. This change wouldn’t affect a
since that outputs as list of strings (for streaming performance reasons) rather than a data type aware documentdebug
(method) output tweakedReadArray
API now requires a context.Context
egrep
references changed to grep -E
to work around GNU grep deprecating support for egrepboolean
, null
Variables.GetValue()
now errors instead of returns nil
when no variable setregexp
wasn’t erroring if nothing was matchedappend
and prepend
now type aware (no longer converts all arrays into string arrays)foreach
was setting variables as strings rather than honoring their original data typeyarn
autocompletion errors should be suppressedbreak
causing more occasionally incorrect instances of underlined wordsconfig
wasn’t passing data type when executing blocks via evaldebug
wasn’t setting data type when used as a functionPublished: 31.12.2022 at 08:10
append
): Add data to the end of an arrayja
): A sophisticated yet simply way to build a JSON arraygetfile
): Makes a standard HTTP request and return the contents as Murex-aware data type for passing along Murex pipelines.break
): Terminate execution of a block within your processes scopeexpr
): Expressions: mathematical, string comparisons, logical operators[ ..Range ]
: Outputs a ranged subset of data from stdinforeach
): Iterate through an arraymurex-docs
): Displays the man pages for Murex builtinscontinue
): Terminate process of a block within a caller functionprepend
): Add data to the start of an arrayregexp
): Regexp tools for arrays / lists of stringsconfig
): Query or define Murex runtime settingsa
): A sophisticated yet simple way to stream an array or list (mkarray)This document was generated from gen/changelog/v3.0_doc.yaml.
This site's content is rebuilt automatically from murex's source code after each merge to the master
branch. Downloadable murex binaries are also built with the website.
Last built on Tue Dec 10 22:56:57 UTC 2024 against commit 60f05a260f05a227caf73dd5b3478e3cb3f4bb24e46745b.
Current version is 6.4.1005 (develop) which has been verified against tests cases.