mirror of
https://github.com/nushell/nushell.git
synced 2024-12-24 16:09:11 +01:00
01c79bbefc
# Description This decouples the serialized representation of `Record` from its internal implementation. It now gets treated as a map type in `serde`. This has several benefits: - more efficient representation (not showing inner fields) - human readable e.g. as a JSON record - no breaking changes when refactoring the `Record` internals in the future (see #12326, or potential introduction of `indexmap::IndexMap` for large N) - we now deny the creation of invalid records a non-cooperating plugin could produce - guaranteed key-value correspondence - checking for unique keys # Breaking change to the plugin protocol: Now expects a record/map directly as the `Record.val` field instead of a serialization of it. |
||
---|---|---|
.. | ||
src | ||
tests | ||
Cargo.toml | ||
LICENSE | ||
README.md |
nu-protocol
The nu-protocol crate holds the definitions of structs/traits that are used throughout Nushell. This gives us one way to expose them to many other crates, as well as make these definitions available to each other, without causing mutually recursive dependencies.