|
| 1 | +## 0.47.0 |
| 2 | + |
| 3 | +<!-- Update to libp2p-core v0.43.0 --> |
| 4 | + |
| 5 | +## 0.46.0 |
| 6 | + |
| 7 | +<!-- Update to libp2p-swarm v0.45.0 --> |
| 8 | + |
| 9 | +## 0.45.2 |
| 10 | + |
| 11 | +- Update `yamux` to version `v0.13.3`.` |
| 12 | + |
| 13 | +## 0.45.1 |
| 14 | + |
| 15 | +- Deprecate `WindowUpdateMode::on_receive`. |
| 16 | + It does not enforce flow-control, i.e. breaks backpressure. |
| 17 | + Use `WindowUpdateMode::on_read` instead. |
| 18 | + See `yamux` crate version `v0.12.1` and [Yamux PR #177](https://github.com/libp2p/rust-yamux/pull/177). |
| 19 | +- `yamux` `v0.13` enables auto-tuning for the Yamux stream receive window. |
| 20 | + 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. |
| 21 | + Have `libp2p-yamux` use `yamux` `v0.13` (new version) by default and fall back to `yamux` `v0.12` (old version) when setting any configuration options. |
| 22 | + Thus default users benefit from the increased performance, while power users with custom configurations maintain the old behavior. |
| 23 | + `libp2p-yamux` will switch over to `yamux` `v0.13` entirely with the next breaking release. |
| 24 | + See [PR 4970](https://github.com/libp2p/rust-libp2p/pull/4970). |
| 25 | + |
| 26 | +## 0.45.0 |
| 27 | + |
| 28 | +- Migrate to `{In,Out}boundConnectionUpgrade` traits. |
| 29 | + See [PR 4695](https://github.com/libp2p/rust-libp2p/pull/4695). |
| 30 | + |
| 31 | +## 0.44.1 |
| 32 | + |
| 33 | +- Update to `yamux` `v0.12` which brings performance improvements and introduces an ACK backlog of 256 inbound streams. |
| 34 | + 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. |
| 35 | + See [PR 3013]. |
| 36 | + |
| 37 | +[PR 3013]: https://github.com/libp2p/rust-libp2p/pull/3013 |
| 38 | + |
| 39 | +## 0.44.0 |
| 40 | + |
| 41 | +- Raise MSRV to 1.65. |
| 42 | + See [PR 3715]. |
| 43 | + |
| 44 | +- Remove deprecated items. |
| 45 | + See [PR 3897]. |
| 46 | + |
| 47 | +- Remove `Incoming`, `LocalIncoming` and `LocalConfig` as well as anything from the underlying `yamux` crate from the public API. |
| 48 | + See [PR 3908]. |
| 49 | + |
| 50 | +[PR 3715]: https://github.com/libp2p/rust-libp2p/pull/3715 |
| 51 | +[PR 3897]: https://github.com/libp2p/rust-libp2p/pull/3897 |
| 52 | +[PR 3908]: https://github.com/libp2p/rust-libp2p/pull/3908 |
| 53 | + |
| 54 | +## 0.43.1 |
| 55 | + |
| 56 | +- Drop `Yamux` prefix from all types. |
| 57 | + Users are encouraged to import the `yamux` module and refer to types via `yamux::Muxer`, `yamux::Config` etc. |
| 58 | + See [PR 3852]. |
| 59 | + |
| 60 | +[PR 3852]: https://github.com/libp2p/rust-libp2p/pull/3852 |
| 61 | + |
| 62 | +## 0.43.0 |
| 63 | + |
| 64 | +- Update to `libp2p-core` `v0.39.0`. |
| 65 | + |
| 66 | +## 0.42.0 |
| 67 | + |
| 68 | +- Update to `libp2p-core` `v0.38.0`. |
| 69 | + |
| 70 | +- Update `rust-version` to reflect the actual MSRV: 1.60.0. See [PR 3090]. |
| 71 | + |
| 72 | +[PR 3090]: https://github.com/libp2p/rust-libp2p/pull/3090 |
| 73 | + |
| 74 | +## 0.41.1 |
| 75 | + |
| 76 | +- Yield from `StreamMuxer::poll` as soon as we receive a single substream. |
| 77 | + This fixes [issue 3041]. |
| 78 | + See [PR 3071]. |
| 79 | + |
| 80 | +[PR 3071]: https://github.com/libp2p/rust-libp2p/pull/3071/ |
| 81 | +[issue 3041]: https://github.com/libp2p/rust-libp2p/issues/3041/ |
| 82 | + |
| 83 | +## 0.41.0 |
| 84 | + |
| 85 | +- Update to `libp2p-core` `v0.37.0`. |
| 86 | + |
| 87 | +## 0.40.0 |
| 88 | + |
| 89 | +- Update to `libp2p-core` `v0.36.0` |
| 90 | + |
| 91 | +- Remove `OpenSubstreamToken` as it is dead code. See [PR 2873]. |
| 92 | + |
| 93 | +- Drive connection also via `StreamMuxer::poll`. Any received streams will be buffered up to a maximum of 25 streams. |
| 94 | + See [PR 2861]. |
| 95 | + |
| 96 | +[PR 2873]: https://github.com/libp2p/rust-libp2p/pull/2873/ |
| 97 | +[PR 2861]: https://github.com/libp2p/rust-libp2p/pull/2861/ |
| 98 | + |
| 99 | +## 0.39.0 |
| 100 | + |
| 101 | +- Update to `libp2p-core` `v0.35.0` |
| 102 | + |
| 103 | +## 0.38.0 |
| 104 | + |
| 105 | +- Update to `libp2p-core` `v0.34.0`. |
| 106 | + |
| 107 | +## 0.37.0 |
| 108 | + |
| 109 | +- Update to `libp2p-core` `v0.33.0`. |
| 110 | + |
| 111 | +## 0.36.0 [2022-02-22] |
| 112 | + |
| 113 | +- Update to `libp2p-core` `v0.32.0`. |
| 114 | + |
| 115 | +- Update to `parking_lot` `v0.12.0`. See [PR 2463]. |
| 116 | + |
| 117 | +[PR 2463]: https://github.com/libp2p/rust-libp2p/pull/2463/ |
| 118 | + |
| 119 | +## 0.35.0 [2022-01-27] |
| 120 | + |
| 121 | +- Update dependencies. |
| 122 | + |
| 123 | +- Migrate to Rust edition 2021 (see [PR 2339]). |
| 124 | + |
| 125 | +- Update to `yamux` `v0.10.0` and thus defaulting to `WindowUpdateMode::OnRead`. |
| 126 | + See [PR 2435]. |
| 127 | + |
| 128 | +[PR 2339]: https://github.com/libp2p/rust-libp2p/pull/2339 |
| 129 | +[PR 2435]: https://github.com/libp2p/rust-libp2p/pull/2435 |
| 130 | + |
| 131 | +## 0.34.0 [2021-11-01] |
| 132 | + |
| 133 | +- Make default features of `libp2p-core` optional. |
| 134 | + [PR 2181](https://github.com/libp2p/rust-libp2p/pull/2181) |
| 135 | + |
| 136 | +- Update dependencies. |
| 137 | + |
| 138 | +- Implement `From<io::Error> for YamuxError` instead of `Into`. |
| 139 | + [PR 2169](https://github.com/libp2p/rust-libp2p/pull/2169) |
| 140 | + |
| 141 | +## 0.33.0 [2021-07-12] |
| 142 | + |
| 143 | +- Update dependencies. |
| 144 | + |
| 145 | +## 0.32.0 [2021-04-13] |
| 146 | + |
| 147 | +- Update to `yamux` `v0.9.0` [PR |
| 148 | + 1960](https://github.com/libp2p/rust-libp2p/pull/1960). |
| 149 | + |
| 150 | +## 0.31.0 [2021-03-17] |
| 151 | + |
| 152 | +- Update `libp2p-core`. |
| 153 | + |
| 154 | +## 0.30.1 [2021-02-17] |
| 155 | + |
| 156 | +- Update `yamux` to `0.8.1`. |
| 157 | + |
| 158 | +## 0.30.0 [2021-01-12] |
| 159 | + |
| 160 | +- Update dependencies. |
| 161 | + |
| 162 | +## 0.29.0 [2020-12-17] |
| 163 | + |
| 164 | +- Update `libp2p-core`. |
| 165 | + |
| 166 | +## 0.28.0 [2020-11-25] |
| 167 | + |
| 168 | +- Update `libp2p-core`. |
| 169 | + |
| 170 | +## 0.27.0 [2020-11-09] |
| 171 | + |
| 172 | +- Tweak the naming in the `MplexConfig` API for better |
| 173 | + consistency with `libp2p-mplex`. |
| 174 | + [PR 1822](https://github.com/libp2p/rust-libp2p/pull/1822). |
| 175 | + |
| 176 | +- Update dependencies. |
| 177 | + |
| 178 | +## 0.26.0 [2020-10-16] |
| 179 | + |
| 180 | +- Update `libp2p-core`. |
| 181 | + |
| 182 | +## 0.25.0 [2020-09-09] |
| 183 | + |
| 184 | +- Update to `yamux-0.8.0`. Upgrade step 4 of 4. This version always implements |
| 185 | + the additive meaning w.r.t. initial window updates. The configuration option |
| 186 | + `lazy_open` is removed. Yamux will automatically send an initial window update |
| 187 | + if the receive window is configured to be larger than the default. |
| 188 | + |
| 189 | +## 0.24.0 [2020-09-09] |
| 190 | + |
| 191 | +- Update to `yamux-0.7.0`. Upgrade step 3 of 4. This version sets the flag but will |
| 192 | + always interpret initial window updates as additive. |
| 193 | + |
| 194 | +## 0.23.0 [2020-09-09] |
| 195 | + |
| 196 | +- Update to `yamux-0.6.0`. As explain below, this is step 2 of 4 in a multi-release |
| 197 | + upgrade. This version recognises and sets the flag that causes the new semantics |
| 198 | + for the initial window update. |
| 199 | + |
| 200 | +## 0.22.0 [2020-09-09] |
| 201 | + |
| 202 | +- Update to `yamux-0.5.0`. *This is the start of a multi-release transition* to a |
| 203 | + different behaviour w.r.t. the initial window update frame. Tracked in [[1]], |
| 204 | + this will change the initial window update to mean "in addition to the default |
| 205 | + receive window" rather than "the total receive window". This version recognises |
| 206 | + a temporary flag, that will cause the new meaning. The next version `0.23.0` |
| 207 | + will also set the flag. Version `0.24.0` will still set the flag but will always |
| 208 | + implement the new meaning, and (finally) version `0.25.0` will no longer set the |
| 209 | + flag and always use the additive semantics. If current code uses the default |
| 210 | + Yamux configuration, all upgrades need to be performed in order because each |
| 211 | + version is only compatible with its immediate predecessor. Alternatively, if the |
| 212 | + default configuration is deployed with `lazy_open` set to `true`, one can |
| 213 | + directly upgrade from version `0.21.0` to `0.25.0` without any intermediate |
| 214 | + upgrades. |
| 215 | + |
| 216 | +- Bump `libp2p-core` dependency. |
| 217 | + |
| 218 | +[1]: https://github.com/paritytech/yamux/issues/92 |
| 219 | + |
| 220 | +## 0.21.0 [2020-08-18] |
| 221 | + |
| 222 | +- Bump `libp2p-core` dependency. |
| 223 | + |
| 224 | +- Allow overriding the mode (client/server), e.g. in the context |
| 225 | +of TCP hole punching. [PR 1691](https://github.com/libp2p/rust-libp2p/pull/1691). |
| 226 | + |
| 227 | +## 0.20.0 [2020-07-01] |
| 228 | + |
| 229 | +- Update `libp2p-core`, i.e. `StreamMuxer::poll_inbound` has been renamed |
| 230 | + to `poll_event` and returns a `StreamMuxerEvent`. |
| 231 | + |
| 232 | +## 0.19.1 [2020-06-22] |
| 233 | + |
| 234 | +- Deprecated method `Yamux::is_remote_acknowledged` has been removed |
| 235 | + as part of [PR 1616](https://github.com/libp2p/rust-libp2p/pull/1616). |
0 commit comments