Skip to content

Commit e7cf0c1

Browse files
authored
feat: reduce Send requirements on auto connections (#59)
1 parent f1ddfb1 commit e7cf0c1

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

src/server/conn/auto.rs

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,10 @@ impl<E> Builder<E> {
6767
/// Bind a connection together with a [`Service`].
6868
pub async fn serve_connection<I, S, B>(&self, io: I, service: S) -> Result<()>
6969
where
70-
S: Service<Request<Incoming>, Response = Response<B>> + Send,
70+
S: Service<Request<Incoming>, Response = Response<B>>,
7171
S::Future: 'static,
7272
S::Error: Into<Box<dyn StdError + Send + Sync>>,
73-
B: Body + Send + 'static,
74-
B::Data: Send,
73+
B: Body + 'static,
7574
B::Error: Into<Box<dyn StdError + Send + Sync>>,
7675
I: Read + Write + Unpin + 'static,
7776
E: Http2ServerConnExec<S::Future, B>,
@@ -90,11 +89,10 @@ impl<E> Builder<E> {
9089
/// `Send`.
9190
pub async fn serve_connection_with_upgrades<I, S, B>(&self, io: I, service: S) -> Result<()>
9291
where
93-
S: Service<Request<Incoming>, Response = Response<B>> + Send,
92+
S: Service<Request<Incoming>, Response = Response<B>>,
9493
S::Future: 'static,
9594
S::Error: Into<Box<dyn StdError + Send + Sync>>,
96-
B: Body + Send + 'static,
97-
B::Data: Send,
95+
B: Body + 'static,
9896
B::Error: Into<Box<dyn StdError + Send + Sync>>,
9997
I: Read + Write + Unpin + Send + 'static,
10098
E: Http2ServerConnExec<S::Future, B>,
@@ -295,11 +293,10 @@ impl<E> Http1Builder<'_, E> {
295293
/// Bind a connection together with a [`Service`].
296294
pub async fn serve_connection<I, S, B>(&self, io: I, service: S) -> Result<()>
297295
where
298-
S: Service<Request<Incoming>, Response = Response<B>> + Send,
299-
S::Future: Send + 'static,
296+
S: Service<Request<Incoming>, Response = Response<B>>,
297+
S::Future: 'static,
300298
S::Error: Into<Box<dyn StdError + Send + Sync>>,
301-
B: Body + Send + 'static,
302-
B::Data: Send,
299+
B: Body + 'static,
303300
B::Error: Into<Box<dyn StdError + Send + Sync>>,
304301
I: Read + Write + Unpin + 'static,
305302
E: Http2ServerConnExec<S::Future, B>,
@@ -443,11 +440,10 @@ impl<E> Http2Builder<'_, E> {
443440
/// Bind a connection together with a [`Service`].
444441
pub async fn serve_connection<I, S, B>(&self, io: I, service: S) -> Result<()>
445442
where
446-
S: Service<Request<Incoming>, Response = Response<B>> + Send,
447-
S::Future: Send + 'static,
443+
S: Service<Request<Incoming>, Response = Response<B>>,
444+
S::Future: 'static,
448445
S::Error: Into<Box<dyn StdError + Send + Sync>>,
449-
B: Body + Send + 'static,
450-
B::Data: Send,
446+
B: Body + 'static,
451447
B::Error: Into<Box<dyn StdError + Send + Sync>>,
452448
I: Read + Write + Unpin + 'static,
453449
E: Http2ServerConnExec<S::Future, B>,

0 commit comments

Comments
 (0)