mirror of
https://github.com/nushell/nushell.git
synced 2025-05-29 14:21:45 +02:00
# Description Adds a new `--empty/-e` flag to the `default` command. # User-Facing Changes Before: ```nushell $env.FOO = "" $env.FOO = $env.FOO? | default bar $env.FOO # => Empty string ``` After: ```nushell $env.FOO = "" $env.FOO = $env.FOO? | default -e bar $env.FOO # => bar ``` * Uses `val.is_empty`, which means that empty lists and records are also replaced * Empty values in tables (with a column specifier) are also replaced. # Tests + Formatting 7 tests added and 1 updated + 1 new example - 🟢 `toolkit fmt` - 🟢 `toolkit clippy` - 🟢 `toolkit test` - 🟢 `toolkit test stdlib` # After Submitting N/A
Nushell core libraries and plugins
These sub-crates form both the foundation for Nu and a set of plugins which extend Nu with additional functionality.
Foundational libraries are split into two kinds of crates:
- Core crates - those crates that work together to build the Nushell language engine
- Support crates - a set of crates that support the engine with additional features like JSON support, ANSI support, and more.
Plugins are likewise also split into two types:
- Core plugins - plugins that provide part of the default experience of Nu, including access to the system properties, processes, and web-connectivity features.
- Extra plugins - these plugins run a wide range of different capabilities like working with different file types, charting, viewing binary data, and more.