ZIm/crates/extension/src
Marshall Bowers d30361537e
assistant: Update SlashCommand trait with streaming return type (#19652)
This PR updates the `SlashCommand` trait to use a streaming return type.

This change is just at the trait layer. The goal here is to decouple
changing the trait's API while preserving behavior on either side.

The `SlashCommandOutput` type now has two methods for converting two and
from a stream to use in cases where we're not yet doing streaming.

On the `SlashCommand` implementer side, the implements can call
`to_event_stream` to produce a stream of events based off the
`SlashCommandOutput`.

On the slash command consumer side we use
`SlashCommandOutput::from_event_stream` to convert a stream of events
back into a `SlashCommandOutput`.

The `/file` slash command has been updated to emit `SlashCommandEvent`s
directly in order for it to work properly.

Release Notes:

- N/A

---------

Co-authored-by: Max <max@zed.dev>
2024-10-23 21:26:50 -04:00
..
wasm_host Support .editorconfig (#19455) 2024-10-21 13:05:30 +03:00
extension_builder.rs Revert http client changes (#18892) 2024-10-09 01:07:18 -07:00
extension_indexed_docs_provider.rs Allow extensions to suggest packages for /docs completions (#16185) 2024-08-13 16:50:57 -04:00
extension_lsp_adapter.rs lsp: Remove reinstall, update config (#18318) 2024-09-25 10:45:56 -07:00
extension_manifest.rs use ssh lsp store (#17655) 2024-09-10 15:51:01 -04:00
extension_settings.rs Add settings to remote servers, use XDG paths on remote, and enable node LSPs (#19176) 2024-10-15 23:32:44 -07:00
extension_slash_command.rs assistant: Update SlashCommand trait with streaming return type (#19652) 2024-10-23 21:26:50 -04:00
extension_store.rs Stop leaking isahc assumption (#18408) 2024-09-26 14:01:05 -06:00
extension_store_test.rs Restore HTTP client transition, but use reqwest everywhere (#19055) 2024-10-11 14:58:58 -07:00
wasm_host.rs Allow using system node (#18172) 2024-09-23 15:28:04 -06:00