From 68536ef405005dacaf51ef59fbe67d87fb33535e Mon Sep 17 00:00:00 2001 From: pv42 <pv42.97@gmail.com> Date: Wed, 4 Sep 2024 11:57:36 +0200 Subject: [PATCH] fix: add Send marker to AsyncMavConnection for rust 1.70 --- mavlink-core/src/async_connection/file.rs | 2 +- mavlink-core/src/async_connection/mod.rs | 2 +- mavlink-core/src/async_connection/tcp.rs | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mavlink-core/src/async_connection/file.rs b/mavlink-core/src/async_connection/file.rs index 9b1c90a..8522736 100644 --- a/mavlink-core/src/async_connection/file.rs +++ b/mavlink-core/src/async_connection/file.rs @@ -36,7 +36,7 @@ pub struct AsyncFileConnection { } #[async_trait::async_trait] -impl<M: Message + Sync> AsyncMavConnection<M> for AsyncFileConnection { +impl<M: Message + Sync + Send> AsyncMavConnection<M> for AsyncFileConnection { async fn recv(&self) -> Result<(MavHeader, M), crate::error::MessageReadError> { let mut file = self.file.lock().await; diff --git a/mavlink-core/src/async_connection/mod.rs b/mavlink-core/src/async_connection/mod.rs index ed727ec..a708a67 100644 --- a/mavlink-core/src/async_connection/mod.rs +++ b/mavlink-core/src/async_connection/mod.rs @@ -15,7 +15,7 @@ use crate::SigningConfig; /// An async MAVLink connection #[async_trait::async_trait] -pub trait AsyncMavConnection<M: Message + Sync> { +pub trait AsyncMavConnection<M: Message + Sync + Send> { /// Receive a mavlink message. /// /// Wait until a valid frame is received, ignoring invalid messages. diff --git a/mavlink-core/src/async_connection/tcp.rs b/mavlink-core/src/async_connection/tcp.rs index e05d704..e8171c7 100644 --- a/mavlink-core/src/async_connection/tcp.rs +++ b/mavlink-core/src/async_connection/tcp.rs @@ -17,7 +17,7 @@ use crate::{ /// TCP MAVLink connection -pub async fn select_protocol<M: Message + Sync>( +pub async fn select_protocol<M: Message + Sync + Send>( address: &str, ) -> io::Result<Box<dyn AsyncMavConnection<M> + Sync + Send>> { let connection = if let Some(address) = address.strip_prefix("tcpout:") { @@ -97,7 +97,7 @@ struct TcpWrite { } #[async_trait::async_trait] -impl<M: Message + Sync> AsyncMavConnection<M> for TcpConnection { +impl<M: Message + Sync + Send> AsyncMavConnection<M> for TcpConnection { async fn recv(&self) -> Result<(MavHeader, M), crate::error::MessageReadError> { let mut reader = self.reader.lock().await; #[cfg(not(feature = "signing"))] -- GitLab