Open
Description
Problem:
ConnectionFuture requires that the inner future be Sync, but this creates some friction within the ecosystem.
This friction is demonstrated in #4980 , where customers have to spawn a separate tokio task and await on it to use the AWS SDK inside s2n-tls callbacks.
Solution:
We could remove the Sync
bound from our futures. There is some good reading here
- https://internals.rust-lang.org/t/what-shall-sync-mean-across-an-await/12020/2
- Future type returned by trait methods should impl Sync dtolnay/async-trait#77 (comment)
Requirements / Acceptance Criteria:
Friction with the AWS SDK is a good touchstone. We should either remove this friction or have a very clearly documented reason we need this friction.
Activity