core/muxing: Remove Unpin requirement from StreamMuxer::Substream (#2776)

This commit is contained in:
Thomas Eizinger
2022-07-25 15:49:22 +01:00
committed by GitHub
parent c19a211dfd
commit 0ec3bbccb2
3 changed files with 5 additions and 4 deletions

View File

@ -2,10 +2,11 @@
- Remove `StreamMuxer::poll_event` in favor of individual functions: `poll_inbound`, `poll_outbound` - Remove `StreamMuxer::poll_event` in favor of individual functions: `poll_inbound`, `poll_outbound`
and `poll_address_change`. Consequently, `StreamMuxerEvent` is also removed. See [PR 2724]. and `poll_address_change`. Consequently, `StreamMuxerEvent` is also removed. See [PR 2724].
- Drop `Unpin` requirement from `SubstreamBox`. See [PR 2762]. - Drop `Unpin` requirement from `SubstreamBox`. See [PR 2762] and [PR 2776].
[PR 2724]: https://github.com/libp2p/rust-libp2p/pull/2724 [PR 2724]: https://github.com/libp2p/rust-libp2p/pull/2724
[PR 2762]: https://github.com/libp2p/rust-libp2p/pull/2762 [PR 2762]: https://github.com/libp2p/rust-libp2p/pull/2762
[PR 2776]: https://github.com/libp2p/rust-libp2p/pull/2776
# 0.34.0 # 0.34.0

View File

@ -29,7 +29,7 @@ where
impl<T> StreamMuxer for Wrap<T> impl<T> StreamMuxer for Wrap<T>
where where
T: StreamMuxer, T: StreamMuxer,
T::Substream: Send + Unpin + 'static, T::Substream: Send + 'static,
T::Error: Send + Sync + 'static, T::Error: Send + Sync + 'static,
{ {
type Substream = SubstreamBox; type Substream = SubstreamBox;
@ -71,7 +71,7 @@ impl StreamMuxerBox {
pub fn new<T>(muxer: T) -> StreamMuxerBox pub fn new<T>(muxer: T) -> StreamMuxerBox
where where
T: StreamMuxer + Send + Sync + 'static, T: StreamMuxer + Send + Sync + 'static,
T::Substream: Send + Unpin + 'static, T::Substream: Send + 'static,
T::Error: Send + Sync + 'static, T::Error: Send + Sync + 'static,
{ {
let wrap = Wrap { inner: muxer }; let wrap = Wrap { inner: muxer };

View File

@ -300,7 +300,7 @@ impl<T> Multiplexed<T> {
T::ListenerUpgrade: Send + 'static, T::ListenerUpgrade: Send + 'static,
T::Error: Send + Sync, T::Error: Send + Sync,
M: StreamMuxer + Send + Sync + 'static, M: StreamMuxer + Send + Sync + 'static,
M::Substream: Send + Unpin + 'static, M::Substream: Send + 'static,
M::Error: Send + Sync + 'static, M::Error: Send + Sync + 'static,
{ {
boxed(self.map(|(i, m), _| (i, StreamMuxerBox::new(m)))) boxed(self.map(|(i, m), _| (i, StreamMuxerBox::new(m))))