libp2p-yamux
Yamux multiplexing protocol for libp2p
0.47.0
16M downloads/mo
#2345 most downloaded on crates.io
libp2p/rust-libp2p
What this package is like to depend on
Last release 2 years ago
no release in 18 months
Release timing varies
gaps range from 1 weeks to 8 months
Most releases are documented
notes for 35 of 54 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
57 releases · first in 2019
0 releases in the last 12 months
see the full history below
Release timeline
57 releases · Jan 2019 to Jan 2025Releases
latest 57-
0.47.014 Jan 2025 -
0.46.009 Aug 2024 -
0.45.202 Aug 2024 -
0.45.109 Dec 2023Release notes
Open source →- Deprecate
WindowUpdateMode::on_receive. It does not enforce flow-control, i.e. breaks backpressure. UseWindowUpdateMode::on_readinstead. Seeyamuxcrate versionv0.12.1and Yamux PR #177. yamuxv0.13enables auto-tuning for the Yamux stream receive window. While preserving small buffers on low-latency and/or low-bandwidth connections, this change allows for high-latency and/or high-bandwidth connections to exhaust the available bandwidth on a single stream. Havelibp2p-yamuxuseyamuxv0.13(new version) by default and fall back toyamuxv0.12(old version) when setting any configuration options. Thus default users benefit from the increased performance, while power users with custom configurations maintain the old behavior.libp2p-yamuxwill switch over toyamuxv0.13entirely with the next breaking release. See PR 4970.
- Deprecate
-
0.45.005 Nov 2023 -
0.44.111 Aug 2023Release notes
Open source →- Update to
yamuxv0.12which brings performance improvements and introduces an ACK backlog of 256 inbound streams. When interacting with other libp2p nodes that are also running this or a newer version, the creation of inbound streams will be backpressured once the ACK backlog is hit. See PR 3013.
- Update to
-
0.44.020 Jun 2023 -
0.43.101 May 2023Release notes
Open source →- Drop
Yamuxprefix from all types. Users are encouraged to import theyamuxmodule and refer to types viayamux::Muxer,yamux::Configetc. See PR 3852.
- Drop
-
0.43.024 Feb 2023 -
0.43.0-alpha12 Dec 2022 pre-releaseNothing published for this version
-
0.42.025 Nov 2022Release notes
Open source →-
Update to
libp2p-corev0.38.0. -
Update
rust-versionto reflect the actual MSRV: 1.60.0. See PR 3090.
-
-
0.41.115 Nov 2022Release notes
Open source →- Yield from
StreamMuxer::pollas soon as we receive a single substream. This fixes issue 3041. See PR 3071.
- Yield from
-
0.41.014 Oct 2022 -
0.40.007 Sep 2022 -
0.39.022 Aug 2022 -
0.38.005 Jul 2022 -
0.37.031 May 2022 -
0.36.022 Feb 2022Release notes
Open source →-
Update to
libp2p-corev0.32.0. -
Update to
parking_lotv0.12.0. See PR 2463.
-
-
0.35.027 Jan 2022 -
0.34.001 Nov 2021 -
0.34.0-rc.115 Oct 2021 pre-releaseNothing published for this version
-
0.33.012 Jul 2021 -
0.32.013 Apr 2021 -
0.31.017 Mar 2021 -
0.30.117 Feb 2021 -
0.30.012 Jan 2021 -
0.29.018 Dec 2020 -
0.28.025 Nov 2020 -
0.27.009 Nov 2020Release notes
Open source →-
Tweak the naming in the
MplexConfigAPI for better consistency withlibp2p-mplex. PR 1822. -
Update dependencies.
-
-
0.26.016 Oct 2020 -
0.25.009 Sep 2020Release notes
Open source →- Update to
yamux-0.8.0. Upgrade step 4 of 4. This version always implements the additive meaning w.r.t. initial window updates. The configuration optionlazy_openis removed. Yamux will automatically send an initial window update if the receive window is configured to be larger than the default.
- Update to
-
0.24.009 Sep 2020Release notes
Open source →- Update to
yamux-0.7.0. Upgrade step 3 of 4. This version sets the flag but will always interpret initial window updates as additive.
- Update to
-
0.23.009 Sep 2020Release notes
Open source →- Update to
yamux-0.6.0. As explain below, this is step 2 of 4 in a multi-release upgrade. This version recognises and sets the flag that causes the new semantics for the initial window update.
- Update to
-
0.22.009 Sep 2020Release notes
Open source →-
Update to
yamux-0.5.0. This is the start of a multi-release transition to a different behaviour w.r.t. the initial window update frame. Tracked in [1], this will change the initial window update to mean "in addition to the default receive window" rather than "the total receive window". This version recognises a temporary flag, that will cause the new meaning. The next version0.23.0will also set the flag. Version0.24.0will still set the flag but will always implement the new meaning, and (finally) version0.25.0will no longer set the flag and always use the additive semantics. If current code uses the default Yamux configuration, all upgrades need to be performed in order because each version is only compatible with its immediate predecessor. Alternatively, if the default configuration is deployed withlazy_openset totrue, one can directly upgrade from version0.21.0to0.25.0without any intermediate upgrades. -
Bump
libp2p-coredependency.
-
-
0.21.018 Aug 2020Release notes
Open source →-
Bump
libp2p-coredependency. -
Allow overriding the mode (client/server), e.g. in the context of TCP hole punching. PR 1691.
-
-
0.20.001 Jul 2020Release notes
Open source →- Update
libp2p-core, i.e.StreamMuxer::poll_inboundhas been renamed topoll_eventand returns aStreamMuxerEvent.
- Update
-
0.19.122 Jun 2020Release notes
Open source →- Deprecated method
Yamux::is_remote_acknowledgedhas been removed as part of PR 1616.
- Deprecated method
-
0.19.018 May 2020Nothing published for this version
-
0.18.009 Apr 2020Nothing published for this version
-
0.17.001 Apr 2020Nothing published for this version
-
0.16.228 Feb 2020Nothing published for this version
-
0.16.014 Feb 2020Nothing published for this version
-
0.15.024 Jan 2020Nothing published for this version
-
0.14.0-alpha.107 Jan 2020 pre-releaseNothing published for this version
-
0.13.006 Nov 2019Nothing published for this version
-
0.12.015 Aug 2019Nothing published for this version
-
0.11.019 Jul 2019Nothing published for this version
-
0.10.025 Jun 2019Nothing published for this version
-
0.9.004 Jun 2019Nothing published for this version
-
0.8.015 May 2019Nothing published for this version
-
0.7.023 Apr 2019Nothing published for this version
-
0.6.029 Mar 2019Nothing published for this version
-
0.5.013 Mar 2019Nothing published for this version
-
0.4.020 Feb 2019Nothing published for this version
-
0.3.030 Jan 2019Nothing published for this version
-
0.2.010 Jan 2019Nothing published for this version
-
0.1.002 Jan 2019Nothing published for this version