github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/docs/changelog/v4.1.md (about) 1 # v4.1.x 2 3 The previous releases have brought significant advancements to Murex's syntax but at the cost of longer gaps between releases. So the 4.1.x versions will be shorter releases but focusing on bug fixes. The 4.1.x release notes will be appended to [murex.rocks changelog](https://murex.rocks/docs/changelog/v4.1.html) and available on [Github releases](https://github.com/lmorg/murex/releases) too 4 5 ## v4.1.7300 6 7 ### Breaking Changes 8 9 None 10 11 ### Features 12 13 * generic `*` data type marshaller can now marshal maps ([#593](https://github.com/lmorg/murex/issues/593)) 14 15 * range can count from end when supplied with a negative index ([read more](https://murex.rocks/docs/commands/range.html)) 16 17 ### Bug Fixes 18 19 * `fexec private` should inherit module string from the owners module ([#600](https://github.com/lmorg/murex/issues/600)) 20 21 * `source`-ed files should be loaded into a module of a similar name to the parent module 22 23 * new code blocks, `{`, should force a new parameter when following a closing block, `}` ([#603](https://github.com/lmorg/murex/issues/603)) 24 25 * fixed problem with encapsulated variables, eg `$(PWD)`, not getting parsed correctly by syntax highlighter 26 27 ## v4.1.6140 28 29 ### Breaking Changes 30 31 None 32 33 ### Features 34 35 * readline: blinking cursor added to fuzzy find. This is just a very minor UI change to make it easier to tell where keyboard input would be updating 36 37 * `git` autocomplete now includes git aliases 38 39 ### Bug Fixes 40 41 * merge operator (`<~`) should unmarshal strings 42 43 * scalars available in all assigns (eg `+=`, `-=`, etc) 44 45 * lazy assigns allowed when strict types is set to `false`. Meaning merge operations and `+=` (et al) will work even if the left scalar is unset 46 47 * suppress `!!!` style warnings upon `^C` 48 49 * strip `:` colon from command name when command string is passed from the pre-parser ([#601](https://github.com/lmorg/murex/issues/601)) 50 51 ## v4.1.5200 52 53 ### Breaking Changes 54 55 None 56 57 ### Features 58 59 * Merge into operator added: `~>` 60 61 * `f`: new flag `i` -- deprecates `?` flag due to `?` being a glob pattern. However `?` will remain supported 62 63 * `$PREFIX` variable passed to **Dynamic** and **DynamicDesc** functions in `autocomplete` -- includes the partial term ([read more](https://murex.rocks/docs/commands/autocomplete.html#directives)) 64 65 * `user@` completion support for `ssh` 66 67 * Updated `autocomplete` docs ([read more](https://murex.rocks/docs/commands/autocomplete.html)) 68 69 * command line is included in error message when error running inside another module 70 71 * errors within other modules now include the command line string to make debugging even easier 72 73 * lambdas success/fail criteria is now driven by the exitnum rather than stdout data type. This allows it to be much more robust. In addition `$.` is now mutable 74 75 ### Bug Fixes 76 77 * `f` improved help message (previously some items displayed code numbers instead of descriptions) 78 79 * readline: hint text flicker removed 80 81 ## v4.1.4200 82 83 ### Breaking Changes 84 85 None 86 87 ### Features 88 89 * Merge operator added: `<~` 90 91 ### Bug Fixes 92 93 * readline: fixed out of bounds errors when calculating unicode cell positions 94 95 * readline: fixed panic raised when vim key `p` is used on an empty buffer 96 97 * readline: fixed bug where vim mode became unavailable / `esc` didn't work as expected. This was due to autocompletion find (`^f`, `^r`) being launched before `tab` completions and state not being handled correctly 98 99 ## v4.1.3010 100 101 ### Breaking Changes 102 103 None 104 105 ### Features 106 107 * lambda support added to piped indexes, ie `example -> [{ lambda }]`, to mirror existing `@example[{ lambda }]` functionality 108 109 * `--autocomplete` flag added to `read` 110 111 ### Bug Fixes 112 113 * application specific environmental variables (eg `<env:FOO=BAR>`) were not getting set 114 115 * `cast` now checks if it is a method. Previously was piping regardless 116 117 * fixed by where nested maps would overwrite when altered with `--merge`. Now they merge as expected 118 119 * `alter` panics are caught issue ([#536](https://github.com/lmorg/murex/issues/536)) 120 121 * remove debugging symbol in deprecated math builtin 122 123 ## v4.1.1100 124 125 ### Breaking Changes 126 127 * Any code that expects `formap` values to be strings despite that value being a different primitive from the originating object. However this type of code would be an anti-pattern so we shouldn't expect much, if any, code written like this 128 129 ### Features 130 131 * `formap` values are now data type aware. You no longer need to cast values. Keys are still string only and the intention is to keep them this way 132 133 ### Bug Fixes 134 135 * improved error messages around a few internal APIs 136 137 * micro optimisations in string parsing (minor order to operations, now converting points at a slightly later stage. This adds zero impact on code complexity and almost zero code refactoring but results in slightly less memory getting copied about) 138 139 ## v4.1.10 140 141 ### Breaking Changes 142 143 None 144 145 ### Features 146 147 No new features 148 149 ### Bug Fixes 150 151 * code references in error messages are cropped to terminal width 152 153 * error handling around multiple chained but incompatible tokens ([#566](https://github.com/lmorg/murex/issues/566)) 154 155 <hr> 156 157 Published: 04.06.2023 at 10:44 158 159 <hr/> 160 161 This document was generated from [gen/changelog/v4.1_doc.yaml](https://github.com/lmorg/murex/blob/master/gen/changelog/v4.1_doc.yaml).