nushell/crates
Stefan Holderbach 92503e6571
Use record API in more parts of nu-protocol (#10928)
# Description

This is pretty complementary/orthogonal to @IanManske 's changes to
`Value` cellpath accessors in:
- #10925
- to a lesser extent #10926

## Steps
- Use `R.remove` in `Value.remove_data_at_cell_path`
- Pretty sound after #10875 (tests mentioned in commit message have been
removed by that)
- Update `did_you_mean` helper to use iterator
- Change `Value::columns` to return iterator
  - This is not a place of honor
- Use `Record::get` in `Value::get_data_by_key`
# User-Facing Changes
None intentional, potential edge cases on duplicated columns could
change (considered undefined behavior)

# Tests + Formatting
(-)
2023-11-08 23:03:08 +01:00
..
nu_plugin_custom_values Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu_plugin_example Use Record's public API in a bunch of places (#10927) 2023-11-08 14:24:00 +01:00
nu_plugin_formats Convert ShellError::UnsupportedInput to named fields (#10971) 2023-11-07 23:25:32 +01:00
nu_plugin_gstat Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu_plugin_inc Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu_plugin_python remove vectorize_over_list from python plugin (#9905) 2023-08-03 16:46:48 +02:00
nu_plugin_query Bump scraper from 0.17.1 to 0.18.1 (#10879) 2023-10-30 11:53:26 +00:00
nu-cli Use Record::get instead of Value functions (#10925) 2023-11-08 21:47:37 +01:00
nu-cmd-base Use Record::get instead of Value functions (#10925) 2023-11-08 21:47:37 +01:00
nu-cmd-dataframe Convert ShellError::UnsupportedInput to named fields (#10971) 2023-11-07 23:25:32 +01:00
nu-cmd-extra Use record API in more parts of nu-protocol (#10928) 2023-11-08 23:03:08 +01:00
nu-cmd-lang Use Record::get instead of Value functions (#10925) 2023-11-08 21:47:37 +01:00
nu-color-config Use Vec for Closure captures (#10940) 2023-11-08 00:43:28 +01:00
nu-command Use record API in more parts of nu-protocol (#10928) 2023-11-08 23:03:08 +01:00
nu-engine Use Record's public API in a bunch of places (#10927) 2023-11-08 14:24:00 +01:00
nu-explore Use Record::get instead of Value functions (#10925) 2023-11-08 21:47:37 +01:00
nu-glob Allow filesystem commands to access files with glob metachars in name (#10694) 2023-10-18 13:31:15 -05:00
nu-json Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-lsp Integrated Language Server (#10723) 2023-11-02 10:18:57 -05:00
nu-parser Add special error case for alias (#10975) 2023-11-08 13:35:40 -06:00
nu-path Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-plugin Show plugin extra usage and search terms (#10952) 2023-11-04 15:12:58 -05:00
nu-pretty-hex Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-protocol Use record API in more parts of nu-protocol (#10928) 2023-11-08 23:03:08 +01:00
nu-std Refactor error make (#10923) 2023-11-03 10:09:33 -05:00
nu-system Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-table Use Record::get instead of Value functions (#10925) 2023-11-08 21:47:37 +01:00
nu-term-grid Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-test-support Bump version to 0.86.1 (#10755) 2023-10-18 13:00:51 -05:00
nu-utils Add "shape_keyword" to default config (#10922) 2023-11-02 19:59:17 +01: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.