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).