11 releases (6 breaking)
0.99.1 | Oct 20, 2024 |
---|---|
0.98.0 | Sep 18, 2024 |
0.96.1 | Jul 29, 2024 |
#416 in Encoding
5,355 downloads per month
Used in 60 crates
(5 directly)
1MB
25K
SLoC
nu-plugin-protocol
This crate provides serde-compatible types for implementing the Nushell plugin protocol. It is primarily used by the nu-plugin
family of crates, but can also be used separately as well.
The specifics of I/O and serialization are not included in this crate. Use serde_json
and/or rmp-serde
(with the named
serialization) to turn the types in this crate into data in the wire format.
lib.rs
:
Type definitions, including full Serialize
and Deserialize
implementations, for the protocol
used for communication between the engine and a plugin.
See the plugin protocol reference for more details on what exactly is being specified here.
Plugins accept messages of PluginInput
and send messages back of PluginOutput
. This
crate explicitly avoids implementing any functionality that depends on I/O, so the exact
byte-level encoding scheme is not implemented here. See the protocol ref or nu_plugin_core
for
more details on how that works.
Dependencies
~21–51MB
~1M SLoC