nushell/crates/nu-plugin/src/protocol
Devyn Cairns cbf7feef22
Make drop notification timing for plugin custom values more consistent (#12341)
# Description
This keeps plugin custom values that have requested drop notification
around during the lifetime of a plugin call / stream by sending them to
a channel that gets persisted during the lifetime of the call.

Before this change, it was very likely that the drop notification would
be sent before the plugin ever had a chance to handle the value it
received.

Tests have been added to make sure this works - see the `custom_values`
plugin.

cc @ayax79 

# User-Facing Changes
This is basically just a bugfix, just a slightly big one.

However, I did add an `as_mut_any()` function for custom values, to
avoid having to clone them. This is a breaking change.
2024-04-04 09:13:25 +02:00
..
plugin_custom_value Make drop notification timing for plugin custom values more consistent (#12341) 2024-04-04 09:13:25 +02:00
evaluated_call.rs Add command_prelude module (#12291) 2024-03-26 21:17:30 +00:00
mod.rs Remove serde derive for ShellError, replace via LabeledError (#12319) 2024-03-30 14:21:40 +01:00
plugin_custom_value.rs Make drop notification timing for plugin custom values more consistent (#12341) 2024-04-04 09:13:25 +02:00
protocol_info.rs Bidirectional communication and streams for plugins (#11911) 2024-02-25 16:32:50 -06:00
test_util.rs Make drop notification timing for plugin custom values more consistent (#12341) 2024-04-04 09:13:25 +02:00
tests.rs Bidirectional communication and streams for plugins (#11911) 2024-02-25 16:32:50 -06:00