1
0
mirror of https://github.com/nushell/nushell.git synced 2025-04-24 21:28:20 +02:00
nushell/crates
Stefan Holderbach b19da158d5
Rename Value::CustomValue to Value::Custom ()
# Description
The second `Value` is redundant and will consume five extra bytes on
each transmission of a custom value to/from a plugin.

# User-Facing Changes
This is a breaking change to the plugin protocol.

The [example in the protocol
reference](https://www.nushell.sh/contributor-book/plugin_protocol_reference.html#value)
becomes

```json
{
  "Custom": {
    "val": {
      "type": "PluginCustomValue",
      "name": "database",
      "data": [36, 190, 127, 40, 12, 3, 46, 83],
      "notify_on_drop": true
    },
    "span": {
      "start": 320,
      "end": 340
    }
  }
}
```

instead of 

```json
{
  "CustomValue": {
    ...
  }
}
```


# After Submitting
Update plugin protocol reference
2024-03-27 22:10:56 +01:00
..
nu_plugin_custom_values Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu_plugin_example Change PluginCommand API to be more like Command () 2024-03-27 11:59:57 +01:00
nu_plugin_formats Change PluginCommand API to be more like Command () 2024-03-27 11:59:57 +01:00
nu_plugin_gstat Change PluginCommand API to be more like Command () 2024-03-27 11:59:57 +01:00
nu_plugin_inc Change PluginCommand API to be more like Command () 2024-03-27 11:59:57 +01:00
nu_plugin_python Improve the error message for a plugin version mismatch () 2024-03-08 06:04:22 -06:00
nu_plugin_query Change PluginCommand API to be more like Command () 2024-03-27 11:59:57 +01:00
nu-cli Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-cmd-base Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-cmd-dataframe Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-cmd-extra Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-cmd-lang Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-color-config Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-command Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-engine Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-explore Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-glob Fix ignored clippy lints () 2024-03-11 19:46:04 +01:00
nu-json Move more dependencies to workspace level () 2024-03-23 18:46:02 -05:00
nu-lsp Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-parser Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-path ls, rm, cp, open, touch, mkdir: Don't expand tilde if input path is quoted string or a variable. () 2024-03-25 10:08:38 +08:00
nu-plugin Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-plugin-test-support Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-pretty-hex nu-explore/ Use hex-dump for binary data () 2024-03-21 19:02:03 -05:00
nu-protocol Rename Value::CustomValue to Value::Custom () 2024-03-27 22:10:56 +01:00
nu-std ♻️ rework some help strings () 2024-03-27 08:41:02 -05:00
nu-system Deduplicate nix dependency versions () 2024-03-27 16:43:37 +01:00
nu-table Add command_prelude module () 2024-03-26 21:17:30 +00:00
nu-term-grid Move more dependencies to workspace level () 2024-03-23 18:46:02 -05:00
nu-test-support Move more dependencies to workspace level () 2024-03-23 18:46:02 -05:00
nu-utils Move more dependencies to workspace level () 2024-03-23 18:46:02 -05:00
README.md Correct spelling () 2021-11-25 11:11:20 -06: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.