nushell/crates
Bruce Weirdan fcb8e36caa
Remove default list-diving behaviour (#13386)
# Description

Before this change `default` would dive into lists and replace `null`
elements with the default value.
Therefore there was no easy way to process `null|list<null|string>`
input and receive `list<null|string>`
(IOW to apply the default on the top level only).

However it's trivially easy to apply default values to list elements
with the `each` command:
```nushell
[null, "a", null] | each { default "b" }
```

So there's no need to have this behavior in `default` command.

# User-Facing Changes

* `default` no longer dives into lists to replace `null` elements with
the default value.

# Tests + Formatting

Added a couple of tests for the new (and old) behavior.

# After Submitting

* Update docs.
2024-07-16 03:54:24 +00:00
..
nu_plugin_custom_values Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu_plugin_example Add and use new Signals struct (#13314) 2024-07-07 22:29:01 +00:00
nu_plugin_formats remove the deprecated register command (#13297) 2024-07-05 07:16:50 -05:00
nu_plugin_gstat remove the deprecated register command (#13297) 2024-07-05 07:16:50 -05:00
nu_plugin_inc remove the deprecated register command (#13297) 2024-07-05 07:16:50 -05:00
nu_plugin_nu_example Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu_plugin_polars Make polars unpivot consistent with polars pivot (#13335) 2024-07-10 16:36:38 -05:00
nu_plugin_python remove the deprecated register command (#13297) 2024-07-05 07:16:50 -05:00
nu_plugin_query Use conventional generic bounds (#13360) 2024-07-12 17:13:07 +08:00
nu_plugin_stress_internals Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu-cli Report parse warns and compile errs when running script files (#13369) 2024-07-14 10:12:55 +02:00
nu-cmd-base Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-cmd-extra Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-cmd-lang Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-cmd-plugin remove the deprecated register command (#13297) 2024-07-05 07:16:50 -05:00
nu-color-config Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-command Remove default list-diving behaviour (#13386) 2024-07-16 03:54:24 +00:00
nu-derive-value Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu-engine Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-explore Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-glob Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu-json Fix CI test failure on main (nu-json) (#13374) 2024-07-14 10:37:57 +02:00
nu-lsp Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-parser Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-path Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-plugin Update config directly at assignment (#13332) 2024-07-11 06:09:33 -07:00
nu-plugin-core Add and use new Signals struct (#13314) 2024-07-07 22:29:01 +00:00
nu-plugin-engine Update config directly at assignment (#13332) 2024-07-11 06:09:33 -07:00
nu-plugin-protocol Update config directly at assignment (#13332) 2024-07-11 06:09:33 -07:00
nu-plugin-test-support Add and use new Signals struct (#13314) 2024-07-07 22:29:01 +00:00
nu-pretty-hex Bumping version to 0.95.1 (#13231) 2024-06-25 18:26:07 -07:00
nu-protocol Deprecate group in favor of chunks (#13377) 2024-07-16 03:49:00 +00:00
nu-std Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-system Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-table Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-term-grid Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nu-test-support Fix CI test failure on main (nu-json) (#13374) 2024-07-14 10:37:57 +02:00
nu-utils Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
nuon Add top-level crate documentation/READMEs (#12907) 2024-07-14 10:10:41 +02:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00

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.