github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/docs/changelog/v2.9.md (about) 1 # v2.9 2 3 This release focuses on testing and REPL usability improvements but also includes updates several new run modes to make error handling easier in larger scripts. 4 5 ### Breaking Changes: 6 7 * None 8 9 ### Features: 10 11 * `>>` redirect (append to file) operator added. This is just syntactic sugar for `-> >>`. To redirect and overwrite/truncate a file use `|>` rather than `>` 12 13 * Support for automatic globbing in the commandline. This has to be enabled via `config: set shell auto-glob true` and you will get prompted for each glob. Any globs inside blocks will be ignored and this only works on the interactive prompt (ie not in scripts or background processes) -- these limitations are not a bug but by design 14 15 * Dynamic autocomplete suggestions are now cached for 5 seconds by default. This cache can be changed via the **CacheTTL** directive in `autocomplete` 16 17 * Additional scoping for `try` and `trypipe`. You can define the scope as being an entire function or a module. If set for an entire module then any functions, autocompletions, etc inside that module will inherit that `try` or `trypipe` mode automatically. These are set via the new builtin `runmode` 18 19 * New reserved variable `$PWD` (this was just a global variable previously) 20 21 * Additional flags added to range, `@[` 22 23 * New builtin, `man-get-flags`. This exposes Murex's internal man page parser to the command line scripts 24 25 * Binaries now produced for ARM64 Windows 26 27 ### Minor Changes: 28 29 * The order in which namespaces are looked up has been altered since `private`s should be resolved before `function`s 30 31 * Updated autocomplete for homebrew, `brew` 32 33 * New autocomplete for AWS CLI, `aws` 34 35 * New autocomplete for yarn, `yarn` 36 37 * Murex unit tests should report progressively rather than everything upon completion 38 39 * Minimum recommended version of Go has been raised to 1.15. This is due to some bugs in dependencies when running tests against v1.13 and v1.14. Murex will technically compile and work on them but it not worth my time debugging why the CircleCI tests fail for those versions given their age 40 41 * Vendor directory removed. This isn't really needed now support is focused on newer versions of Go 42 43 * Website: New 404 error 44 45 * Website: search bar added 46 47 * The start of a massive push towards upping the test coverage 48 49 * Lots of improvements to the docs 50 51 ### Bug Fixes: 52 53 * FileRef module string for functions forked from the REPL changed to `murex/shell` to bring it inline with the naming convention of other modules 54 55 <hr> 56 57 Published: 15.07.2022 at 20:35 58 59 ## See Also 60 61 * [Reserved Variables](../user-guide/reserved-vars.md): 62 Special variables reserved by Murex 63 * [Schedulers](../user-guide/schedulers.md): 64 Overview of the different schedulers (or 'run modes') in Murex 65 * [`>>` Append File](../parser/greater-than-greater-than.md): 66 Writes STDIN to disk - appending contents if file already exists 67 * [`>>` Append Pipe](../parser/pipe-append.md): 68 Redirects STDOUT to a file and append its contents 69 * [`[ ..Range ]`](../parser/range.md): 70 Outputs a ranged subset of data from STDIN 71 * [`autocomplete`](../commands/autocomplete.md): 72 Set definitions for tab-completion in the command line 73 * [`config`](../commands/config.md): 74 Query or define Murex runtime settings 75 * [`function`](../commands/function.md): 76 Define a function block 77 * [`murex-docs`](../commands/murex-docs.md): 78 Displays the man pages for Murex builtins 79 * [`private`](../commands/private.md): 80 Define a private function block 81 * [`runmode`](../commands/runmode.md): 82 Alter the scheduler's behaviour at higher scoping level 83 * [`try`](../commands/try.md): 84 Handles non-zero exits inside a block of code 85 * [`trypipe`](../commands/trypipe.md): 86 Checks for non-zero exits of each function in a pipeline 87 * [`|>` Truncate File](../parser/greater-than.md): 88 Writes STDIN to disk - overwriting contents if file already exists 89 90 <hr/> 91 92 This document was generated from [gen/changelog/v2.9_doc.yaml](https://github.com/lmorg/murex/blob/master/gen/changelog/v2.9_doc.yaml).