diff --git a/brush-core/src/builtins.rs b/brush-core/src/builtins.rs index a8b90769..ffc7c97f 100644 --- a/brush-core/src/builtins.rs +++ b/brush-core/src/builtins.rs @@ -208,6 +208,7 @@ pub trait Command: Parser { /// # Arguments /// /// * `context` - The context in which the command is being executed. + // NOTE: we use desugared async here because we need a Send marker fn execute( &self, context: commands::ExecutionContext<'_>, diff --git a/brush-interactive/src/interactive_shell.rs b/brush-interactive/src/interactive_shell.rs index 86361f11..84b0c7db 100644 --- a/brush-interactive/src/interactive_shell.rs +++ b/brush-interactive/src/interactive_shell.rs @@ -53,6 +53,7 @@ pub trait InteractiveShell { /// Runs the interactive shell loop, reading commands from standard input and writing /// results to standard output and standard error. Continues until the shell /// normally exits or until a fatal error occurs. + // NOTE: we use desugared async here because [async_fn_in_trait] "warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified" fn run_interactively(&mut self) -> impl std::future::Future> { async { // TODO: Consider finding a better place for this.