This is the draft release notes for 0.19.0, scheduled to be released around 2022-07-01. # Breaking changes - When a `styled` or `styled-segment` is printed to terminal, the resulting sequence will now always ignore any existing SGR state. - Symbolic links are now always treated as ordinary files by the global modifiers `type:dir` and `type:regular` in wildcard expansions. - Support for shared vars has been removed, along with its API (`store:shared-var`, `store:set-shared-var` and `store:del-shared-var`). # Deprecated features Deprecated features will be removed in 0.20.0. The following deprecated features trigger a warning whenever the code is parsed and compiled, even if it is not executed: - The `float64` command is now deprecated. Use `num` for constructing a typed number, or `inexact-num` for constructing an inexact number. The documentation has advertised it as deprecated since the 0.16.0 release, but deprecation warnings were never added. # Notable bugfixes - Temporary assignment on an unset environment variables no longer leave it set to an empty string ([#1448](https://b.elv.sh/1448)). - Broken symbolic links no longer terminate a wildcard expansion prematurely ([#1240](https://b.elv.sh/1240)). - On Windows, command completion for executables now also works for local files # Notable new features - A new `inexact-num` converts its argument to an inexact number. It is functionally identical to the now deprecated `float64` command since the Go float64 type is the only underlying inexact number type for now. Its behavior may change in future if there are more underlying types for inexact numbers. - A new type of interactive abbreviation: `edit:command-abbr` ([#1472](https://b.elv.sh/1472)). - The `order` and `compare` commands now support boolean values ([#1585](https://b.elv.sh/1585)). - A new `path:join` command and `path:separator` and `path:list-separator` variables ([#1562](https://b.elv.sh/1562)). - A new `runtime:` module that contains paths important for the Elvish runtime ([#1385](https://b.elv.sh/1385), [#1423](https://b.elv.sh/1423)). - A new `compact` command that replaces consecutive runs of equal values with a single copy, similar to the Unix `uniq` command. - The `order` command has a new `&key` option ([#1570](https://b.elv.sh/1570)). - A new `benchmark` command has been added ([#1586](https://b.elv.sh/1586)).