2022-12-12 12:30:23 +01:00
|
|
|
# 0.24.0 [unreleased]
|
|
|
|
|
2022-12-20 09:52:08 +01:00
|
|
|
- Update to `libp2p-core` `v0.39.0`.
|
|
|
|
|
2022-12-13 12:11:42 +00:00
|
|
|
- Rename types as per [discussion 2174].
|
|
|
|
`RequestResponse` has been renamed to `Behaviour`.
|
|
|
|
The `RequestResponse` prefix has been removed from various types like `RequestResponseEvent`.
|
|
|
|
Users should prefer importing the request_response protocol as a module (`use libp2p::request_response;`),
|
|
|
|
and refer to its types via `request_response::`. For example: `request_response::Behaviour` or `request_response::Event`.
|
|
|
|
See [PR 3159].
|
|
|
|
|
2022-12-12 12:30:23 +01:00
|
|
|
- Update to `libp2p-swarm` `v0.42.0`.
|
|
|
|
|
2022-12-13 12:11:42 +00:00
|
|
|
[discussion 2174]: https://github.com/libp2p/rust-libp2p/discussions/2174
|
|
|
|
[PR 3159]: https://github.com/libp2p/rust-libp2p/pull/3159
|
|
|
|
|
2022-11-25 10:37:55 +01:00
|
|
|
# 0.23.0
|
2022-11-02 23:02:21 +11:00
|
|
|
|
|
|
|
- Update to `libp2p-core` `v0.38.0`.
|
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.41.0`.
|
|
|
|
|
2022-11-17 09:28:40 +00:00
|
|
|
- Replace `RequestResponse`'s `NetworkBehaviour` implemention `inject_*` methods with the new `on_*` methods.
|
|
|
|
See [PR 3011].
|
|
|
|
|
2022-11-17 17:19:36 +00:00
|
|
|
- Replace `RequestResponseHandler`'s `ConnectionHandler` implemention `inject_*` methods
|
|
|
|
with the new `on_*` methods. See [PR 3085].
|
|
|
|
|
2022-11-18 22:04:16 +11:00
|
|
|
- Update `rust-version` to reflect the actual MSRV: 1.62.0. See [PR 3090].
|
|
|
|
|
2022-11-17 17:19:36 +00:00
|
|
|
[PR 3085]: https://github.com/libp2p/rust-libp2p/pull/3085
|
2022-11-17 09:28:40 +00:00
|
|
|
[PR 3011]: https://github.com/libp2p/rust-libp2p/pull/3011
|
2022-11-18 22:04:16 +11:00
|
|
|
[PR 3090]: https://github.com/libp2p/rust-libp2p/pull/3090
|
2022-11-17 09:28:40 +00:00
|
|
|
|
2022-10-14 15:30:16 +01:00
|
|
|
# 0.22.0
|
2022-09-22 12:48:32 +04:00
|
|
|
|
|
|
|
- Bump rand to 0.8 and quickcheck to 1. See [PR 2857].
|
|
|
|
|
2022-09-30 01:32:22 +10:00
|
|
|
- Update to `libp2p-core` `v0.37.0`.
|
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.40.0`.
|
|
|
|
|
2022-09-22 12:48:32 +04:00
|
|
|
[PR 2857]: https://github.com/libp2p/rust-libp2p/pull/2857
|
|
|
|
|
2022-09-07 09:44:51 +02:00
|
|
|
# 0.21.0
|
2022-08-26 07:08:33 +02:00
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.39.0`.
|
|
|
|
|
2022-09-07 09:16:22 +03:00
|
|
|
- Update to `libp2p-core` `v0.36.0`.
|
|
|
|
|
2022-08-22 05:14:04 +02:00
|
|
|
# 0.20.0
|
2022-07-07 04:20:03 -05:00
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.38.0`.
|
|
|
|
|
2022-07-18 04:20:11 +01:00
|
|
|
- Update to `libp2p-core` `v0.35.0`.
|
|
|
|
|
2022-07-05 13:09:58 +02:00
|
|
|
# 0.19.0
|
2022-06-23 13:52:11 +02:00
|
|
|
|
|
|
|
- Update to `libp2p-core` `v0.34.0`.
|
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.37.0`.
|
|
|
|
|
2022-05-31 13:12:53 +02:00
|
|
|
# 0.18.0
|
2022-04-06 20:23:16 +02:00
|
|
|
|
|
|
|
- Update to `libp2p-core` `v0.33.0`.
|
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.36.0`.
|
|
|
|
|
2022-04-04 18:27:41 +02:00
|
|
|
# 0.17.0
|
2022-02-28 10:27:58 +01:00
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.35.0`.
|
|
|
|
|
2022-02-22 14:05:19 +01:00
|
|
|
# 0.16.0 [2022-02-22]
|
2022-02-03 16:38:41 +00:00
|
|
|
|
|
|
|
- Update to `libp2p-core` `v0.32.0`.
|
|
|
|
|
|
|
|
- Update to `libp2p-swarm` `v0.34.0`.
|
|
|
|
|
2022-02-09 10:08:28 -05:00
|
|
|
- Merge NetworkBehaviour's inject_\* paired methods (see PR 2445).
|
|
|
|
|
|
|
|
[PR 2445]: https://github.com/libp2p/rust-libp2p/pull/2445
|
|
|
|
|
2022-01-27 11:29:09 +01:00
|
|
|
# 0.15.0 [2022-01-27]
|
2021-11-26 10:48:12 -05:00
|
|
|
|
|
|
|
- Update dependencies.
|
|
|
|
|
2021-11-26 18:08:16 +01:00
|
|
|
- Remove unused `lru` crate (see [PR 2358]).
|
|
|
|
|
2021-11-26 09:34:58 -07:00
|
|
|
- Migrate to Rust edition 2021 (see [PR 2339]).
|
|
|
|
|
|
|
|
[PR 2339]: https://github.com/libp2p/rust-libp2p/pull/2339
|
2021-11-26 18:08:16 +01:00
|
|
|
[PR 2358]: https://github.com/libp2p/rust-libp2p/pull/2358
|
2021-11-26 09:34:58 -07:00
|
|
|
|
2021-11-16 16:39:42 +01:00
|
|
|
# 0.14.0 [2021-11-16]
|
2021-10-30 12:41:30 +02:00
|
|
|
|
|
|
|
- Use `instant` instead of `wasm-timer` (see [PR 2245]).
|
|
|
|
|
2021-11-15 14:17:23 +01:00
|
|
|
- Update dependencies.
|
|
|
|
|
2021-10-30 12:41:30 +02:00
|
|
|
[PR 2245]: https://github.com/libp2p/rust-libp2p/pull/2245
|
|
|
|
|
2021-11-02 20:40:48 +01:00
|
|
|
# 0.13.0 [2021-11-01]
|
2021-07-22 22:34:13 +02:00
|
|
|
|
2021-08-18 12:08:45 +02:00
|
|
|
- Make default features of `libp2p-core` optional.
|
|
|
|
[PR 2181](https://github.com/libp2p/rust-libp2p/pull/2181)
|
|
|
|
|
2021-07-22 22:34:13 +02:00
|
|
|
- Update dependencies.
|
|
|
|
|
2021-08-11 12:41:28 +02:00
|
|
|
- Manually implement `Debug` for `RequestResponseHandlerEvent` and
|
|
|
|
`RequestProtocol`. See [PR 2183].
|
|
|
|
|
2021-09-25 18:18:06 +02:00
|
|
|
- Remove `RequestResponse::throttled` and the `throttled` module.
|
|
|
|
See [PR 2236].
|
|
|
|
|
2021-08-11 12:41:28 +02:00
|
|
|
[PR 2183]: https://github.com/libp2p/rust-libp2p/pull/2183
|
2021-09-25 18:18:06 +02:00
|
|
|
[PR 2236]: https://github.com/libp2p/rust-libp2p/pull/2236
|
2021-08-11 12:41:28 +02:00
|
|
|
|
2021-07-12 21:24:58 +02:00
|
|
|
# 0.12.0 [2021-07-12]
|
2021-05-27 14:04:33 +02:00
|
|
|
|
|
|
|
- Update dependencies.
|
|
|
|
|
2021-04-13 20:15:15 +02:00
|
|
|
# 0.11.0 [2021-04-13]
|
2021-03-18 14:55:33 +01:00
|
|
|
|
|
|
|
- Update `libp2p-swarm`.
|
2021-04-08 21:14:34 +10:00
|
|
|
- Implement `std::error::Error` for `InboundFailure` and `OutboundFailure` [PR
|
|
|
|
2033](https://github.com/libp2p/rust-libp2p/pull/2033).
|
2021-03-18 14:55:33 +01:00
|
|
|
|
2021-03-17 15:28:13 +01:00
|
|
|
# 0.10.0 [2021-03-17]
|
2021-02-25 11:35:52 +01:00
|
|
|
|
|
|
|
- Update `libp2p-swarm`.
|
|
|
|
|
2021-03-09 17:54:23 +01:00
|
|
|
- Close stream even when no response has been sent.
|
|
|
|
[PR 1987](https://github.com/libp2p/rust-libp2p/pull/1987).
|
|
|
|
|
2021-03-15 12:31:21 +01:00
|
|
|
- Update dependencies.
|
|
|
|
|
2021-02-15 20:06:50 +01:00
|
|
|
# 0.9.1 [2021-02-15]
|
2021-01-21 14:36:58 +01:00
|
|
|
|
2021-01-21 15:40:26 +01:00
|
|
|
- Make `is_pending_outbound` return true on pending connection.
|
|
|
|
[PR 1928](https://github.com/libp2p/rust-libp2p/pull/1928).
|
|
|
|
|
2021-02-13 20:15:14 +01:00
|
|
|
- Update dependencies.
|
|
|
|
|
2021-01-12 20:33:43 +01:00
|
|
|
# 0.9.0 [2021-01-12]
|
2021-01-04 18:51:05 +01:00
|
|
|
|
2021-01-12 12:48:37 +01:00
|
|
|
- Update dependencies.
|
|
|
|
|
2021-01-04 18:51:05 +01:00
|
|
|
- Re-export `throttled`-specific response channel. [PR
|
|
|
|
1902](https://github.com/libp2p/rust-libp2p/pull/1902).
|
|
|
|
|
2020-12-18 10:03:20 +01:00
|
|
|
# 0.8.0 [2020-12-17]
|
2020-12-15 14:40:39 +01:00
|
|
|
|
|
|
|
- Update `libp2p-swarm` and `libp2p-core`.
|
|
|
|
|
2020-12-16 16:03:35 +01:00
|
|
|
- Emit `InboundFailure::ConnectionClosed` for inbound requests that failed due
|
|
|
|
to the underlying connection closing.
|
|
|
|
[PR 1886](https://github.com/libp2p/rust-libp2p/pull/1886).
|
|
|
|
|
2020-12-16 16:38:45 +01:00
|
|
|
- Derive Clone for `InboundFailure` and `Outbound}Failure`.
|
|
|
|
[PR 1891](https://github.com/libp2p/rust-libp2p/pull/1891)
|
|
|
|
|
2020-12-08 12:07:20 +01:00
|
|
|
# 0.7.0 [2020-12-08]
|
[request-response] Refine success & error reporting for inbound requests. (#1867)
* Refine error reporting for inbound request handling.
At the moment one can neither get confirmation when a
response has been sent on the underlying transport, nor
is one aware of response omissions. The latter was
originally intended as a feature for support of
one-way protocols, which seems like a bad idea in
hindsight. The lack of notification for sent
responses may prohibit implementation of some
request-response protocols that need to ensure
a happens-before relation between sending a
response and a subsequent request, besides uses
for collecting statistics.
Even with these changes, there is no active notification
for failed inbound requests as a result of connections
unexpectedly closing, as is the case for outbound requests.
Instead, for pending inbound requests this scenario
can be identified if necessary by the absense of both
`InboundFailure` and `ResponseSent` events for a particular
previously received request. Interest in this situation is
not expected to be common and would otherwise require
explicitly tracking all inbound requests in the `RequestResponse`
behaviour, which would be a pity. `RequestResponse::send_response`
now also synchronously returns an error if the inbound upgrade
handling the request has been aborted, due to timeout or
closing of the connection, giving more options for graceful
error handling for inbound requests.
As an aside, the `Throttled` wrapper now no longer emits
inbound or outbound error events occurring in the context
of sending credit requests or responses. This is in addition
to not emitting `ResponseSent` events for ACK responses of
credit grants.
* Update protocols/request-response/src/lib.rs
Co-authored-by: Max Inden <mail@max-inden.de>
* Address some minor clippy warnings. (#1868)
* Track pending credit request IDs.
In order to avoid emitting events relating to credit grants or acks
on the public API. The public API should only emit events relating
to the actual requests and responses sent by client code.
* Small cleanup
* Cleanup
* Update versions and changelogs.
* Unreleased
Co-authored-by: Max Inden <mail@max-inden.de>
2020-12-07 13:07:47 +01:00
|
|
|
|
|
|
|
- Refine emitted events for inbound requests, introducing
|
|
|
|
the `ResponseSent` event and the `ResponseOmission`
|
|
|
|
inbound failures. This effectively removes previous
|
|
|
|
support for one-way protocols without responses.
|
|
|
|
[PR 1867](https://github.com/libp2p/rust-libp2p/pull/1867).
|
|
|
|
|
2020-11-25 15:30:13 +01:00
|
|
|
# 0.6.0 [2020-11-25]
|
2020-11-17 11:15:20 +01:00
|
|
|
|
|
|
|
- Update `libp2p-swarm` and `libp2p-core`.
|
|
|
|
|
2020-11-09 17:46:07 +01:00
|
|
|
# 0.5.0 [2020-11-09]
|
2020-10-31 01:51:27 +11:00
|
|
|
|
|
|
|
- Update dependencies.
|
|
|
|
|
2020-10-16 20:36:47 +02:00
|
|
|
# 0.4.0 [2020-10-16]
|
2020-09-23 21:28:15 +02:00
|
|
|
|
|
|
|
- Update dependencies.
|
|
|
|
|
2020-09-09 12:20:25 +02:00
|
|
|
# 0.3.0 [2020-09-09]
|
2020-08-23 16:57:20 +02:00
|
|
|
|
2020-09-07 17:25:15 +02:00
|
|
|
- Add support for opt-in request-based flow-control to any
|
2020-09-09 11:04:20 +02:00
|
|
|
request-response protocol via `RequestResponse::throttled()`.
|
2020-09-07 17:25:15 +02:00
|
|
|
[PR 1726](https://github.com/libp2p/rust-libp2p/pull/1726).
|
|
|
|
|
2020-09-03 12:31:04 +02:00
|
|
|
- Update `libp2p-swarm` and `libp2p-core`.
|
2020-08-23 16:57:20 +02:00
|
|
|
|
2020-08-18 17:04:34 +02:00
|
|
|
# 0.2.0 [2020-08-18]
|
2020-08-04 11:30:09 +02:00
|
|
|
|
2020-08-13 13:13:23 +02:00
|
|
|
- Fixed connection keep-alive, permitting connections to close due
|
|
|
|
to inactivity.
|
2020-08-04 11:30:09 +02:00
|
|
|
- Bump `libp2p-core` and `libp2p-swarm` dependencies.
|
|
|
|
|
2020-07-13 12:35:32 +02:00
|
|
|
# 0.1.1
|
|
|
|
|
|
|
|
- Always properly `close()` the substream after sending requests and
|
|
|
|
responses in the `InboundUpgrade` and `OutboundUpgrade`. Otherwise this is
|
|
|
|
left to `RequestResponseCodec::write_request` and `RequestResponseCodec::write_response`,
|
|
|
|
which can be a pitfall and lead to subtle problems (see e.g.
|
|
|
|
https://github.com/libp2p/rust-libp2p/pull/1606).
|
|
|
|
|
2020-06-29 17:08:40 +02:00
|
|
|
# 0.1.0
|
|
|
|
|
2020-07-01 15:36:20 +02:00
|
|
|
- Initial release.
|