nushell/crates
Piepmatz ebe42241fe
Add #[nu_value(rename = "...")] as helper attribute on members for derive macros (#13761)
# Description

This PR allows the helper attribute `nu_value(rename = "...")` to be
used on struct fields and enum variants. This allows renaming keys and
variants just like [`#[serde(rename =
"name")]`](https://serde.rs/field-attrs.html#rename). This has no
singular variants for `IntoValue` or `FromValue`, both need to use the
same (but I think this shouldn't be an issue for now).

# User-Facing Changes

Users of the derive macros `IntoValue` and `FromValue` may now use
`#[nu_value(rename = "...")]` to rename single fields, but no already
existing code will break.
2024-09-04 11:27:21 +02:00
..
nu-cli Implement IntoValue for more types (#13744) 2024-09-01 19:02:12 +02:00
nu-cmd-base Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-cmd-extra Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-cmd-lang Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-cmd-plugin Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-color-config Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-command Don't panic on detect columns with --guess flag (#13752) 2024-09-02 16:29:53 +02:00
nu-derive-value Add #[nu_value(rename = "...")] as helper attribute on members for derive macros (#13761) 2024-09-04 11:27:21 +02:00
nu-engine Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-explore Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-glob Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-json Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-lsp Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-parser Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-path Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-plugin add version and path to plugin executable help (#13764) 2024-09-03 12:46:36 -05:00
nu-plugin-core Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-plugin-engine Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-plugin-protocol Remove bincode and use MessagePack instead for plugin custom values (#13745) 2024-09-01 17:33:10 +02:00
nu-plugin-test-support Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-pretty-hex Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-protocol Add #[nu_value(rename = "...")] as helper attribute on members for derive macros (#13761) 2024-09-04 11:27:21 +02:00
nu-std Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-system remove cfg_atter tarpaulin (#13739) 2024-08-31 16:45:15 +02:00
nu-table Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-term-grid Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-test-support Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu-utils Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +02:00
nu_plugin_custom_values Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_example Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_formats Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_gstat Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_inc Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_nu_example Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_polars Bump indexmap from 2.4.0 to 2.5.0 (#13772) 2024-09-04 10:02:01 +08:00
nu_plugin_python Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_query Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nu_plugin_stress_internals Change the usage misnomer to "description" (#13598) 2024-08-22 12:02:08 +02:00
nuon Setup global cargo lint configuration (#13691) 2024-08-28 23:37:17 +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.