Skip to content

Releases: hyperium/hyper

v0.13.2

29 Jan 20:45
Compare
Choose a tag to compare

Bug Fixes

  • body: return exactly 0 SizeHint for empty body (#2122) (dc882047)
  • client: strip path from Uri before calling Connector (#2109) (ba2a144f)
  • http1:
    • only send 100 Continue if request body is polled (c4bb4db5)
    • remove panic for HTTP upgrades that have been ignored (#2115) (1881db63, closes #2114)
  • http2: don't add client content-length if method doesn't require it (fb90d30c)

Features

  • service: Implement Clone/Copy on ServiceFn and MakeServiceFn (#2104) (a5720fab)

v0.13.1

16 Dec 19:47
Compare
Choose a tag to compare

Bug Fixes

  • http1: fix response with non-chunked transfer-encoding to be close-delimited (cb71d2cd, closes #2058)

Features

  • body: implement HttpBody for Request and Response (4b6099c7, closes #2067)
  • client: expose hyper::client::connect::Connect trait alias (2553ea1a)

v0.13.0

10 Dec 17:55
Compare
Choose a tag to compare

Bug Fixes

  • client:
    • fix polling dispatch channel after it has closed (039281b8)
    • fix panic from unreachable code (e6027bc0)
  • dependencies: require correct bytes minimum version (#1975) (536b1e18)
  • server:
    • change Builder window size methods to be by-value (a22dabd0, closes #1814)
    • ignore expect-continue with no body in debug mode (ca5836f1, closes #1843)
    • Remove unneeded 'static bound of Service on Connection (#1971) (4d147126)

Features

  • body:
    • change Sender::send_data to an async fn. (62a96c07)
    • require Sync when wrapping a dynamic Stream (44413721)
    • add body::aggregate and body::to_bytes functions (8ba9a8d2)
    • replace Chunk type with Bytes (5a598757, closes #1931)
    • replace the Payload trait with HttpBody (c63728eb)
  • client:
    • impl tower_service::Service for Client (edbd10ac)
    • provide tower::Service support for clients (#1915) (eee2a728)
    • change connectors to return an impl Connection (4d7a2266)
    • remove Destination for http::Uri in connectors (319e8aee)
    • filter remote IP addresses by family of given local IP address (131962c8)
    • change Resolve to be Service<Name> (9d9233ce, closes #1903)
    • change Connect trait into an alias for Service (d67e49f1, closes #1902)
    • change GaiResolver to use a global blocking threadpool (049b5132)
    • Add connect timeout to HttpConnector (#1972) (4179297a)
  • lib:
    • update to std::future::Future (8f4b05ae)
    • add optional tcp feature, split from runtime (5b348b82)
    • make Stream trait usage optional behind the stream feature, enabled by default (0b03b730, closes #2034)
    • update Tokio, bytes, http, h2, and http-body (cb3f39c2)
  • rt: introduce rt::Executor trait (6ae5889f, closes #1944)
  • server:
    • introduce Accept trait (b3e55062)
    • give Server::local_addr a more general type (3cc93e79)
    • change http1_half_close option default to disabled (7e31fd88)
  • service:
    • use tower_service::Service for hyper::service (ec520d56)
    • rename Service to HttpService, re-export tower::Service (4f274399, closes #1959)

Breaking Changes

  • All usage of async traits (Future, Stream,
    AsyncRead, AsyncWrite, etc) are updated to newer versions.

(8f4b05ae)

  • All usage of hyper::Chunk should be replaced with
    bytes::Bytes (or hyper::body::Bytes).

(5a598757)

  • Using a Body as a Stream, and constructing one via
    Body::wrap_stream, require enabling the stream feature.

(511ea388)

  • Calls to GaiResolver::new and HttpConnector::new no
    longer should pass an integer argument for the number of threads.

(049b5132)

  • Connectors no longer return a tuple of
    (T, Connected), but a single T: Connection.

(4d7a2266)

  • All usage of hyper::client::connect::Destination
    should be replaced with http::Uri.

(319e8aee)

  • All usage of hyper::body::Payload should be replaced
    with hyper::body::HttpBody.

(c63728eb)

  • Any type passed to the executor builder methods must
    now implement hyper::rt::Executor.

    hyper::rt::spawn usage should be replaced with tokio::task::spawn.

    hyper::rt::run usage should be replaced with #[tokio::main] or
    managing a tokio::runtime::Runtime manually.

(6ae5889f)

  • The Resolve trait is gone. All custom resolvers should
    implement tower::Service instead.

    The error type of HttpConnector has been changed away from
    std::io::Error.

(9d9233ce)

  • Any manual implementations of Connect must instead
    implement tower::Service<Uri>.

(d67e49f1)

  • The server's behavior will now by default close
    connections when receiving a read EOF. To allow for clients to close
    the read half, call http1_half_close(true) when configuring a
    server.

(7e31fd88)

  • Passing a Stream to Server::builder or
    Http::serve_incoming must be changed to pass an Accept instead. The
    stream optional feature can be enabled, and then a stream can be
    converted using hyper::server::accept::from_stream.

(b3e55062)

  • Usage of send_data should either be changed to
    async/await or use try_send_data.

(62a96c07)

v0.13.0-alpha.2

24 Sep 19:48
Compare
Choose a tag to compare
v0.13.0-alpha.2 Pre-release
Pre-release

Bug Fixes

  • client: allow client GET requests with explicit body headers (0867ad5c, closes #1925)

Features

  • body:
    • identify aborted body write errors (dc54ee19)
    • put Stream impl for Body behind stream feature (511ea388)
  • server: introduce Accept trait (b3e55062)

Breaking Changes

  • Using a Body as a Stream, and constructing one via
    Body::wrap_stream, require enabling the unstable-stream feature.

(511ea388)

  • Passing a Stream to Server::builder or
    Http::serve_incoming must be changed to pass an Accept instead. The
    unstable-stream optional feature can be enabled, and the a stream can be
    converted using hyper::server::accept::from_stream.

(b3e55062)

v0.12.35

17 Sep 16:47
Compare
Choose a tag to compare

Features

  • body: identify aborted body write errors (32869224)

v0.13.0-alpha.1

04 Sep 18:52
Compare
Choose a tag to compare
v0.13.0-alpha.1 Pre-release
Pre-release

Bug Fixes

  • server: change Builder window size methods to be by-value (a22dabd0, closes #1814)

Features

  • body:
    • change Sender::send_data to an async fn. (62a96c07)
    • Update Payload to be a trait alias of http_body::Body (#1908) (79c32f89)
    • require Sync when wrapping a dynamic Stream (44413721)
  • client:
    • provide tower::Service support for clients (#1915) (eee2a728)
    • change GaiResolver to use a global blocking threadpool (049b5132)
  • lib: update to std::future::Future (8f4b05ae)
  • service: use tower_service::Service for hyper::service (ec520d56)

Breaking Changes

  • Usage of send_data should either be changed to
    async/await or use try_send_data.

(62a96c07)

  • Calls to GaiResolver::new and HttpConnector::new no
    longer should pass an integer argument for the number of threads.

(049b5132)

  • All usage of async traits (Future, Stream,
    AsyncRead, AsyncWrite, etc) are updated to newer versions.

(8f4b05ae)

v0.12.34

04 Sep 22:29
Compare
Choose a tag to compare

Bug Fixes

  • client: allow client GET requests with explicit body headers (23fc8b08, closes #1925)

v0.12.32

04 Sep 18:45
Compare
Choose a tag to compare

Features

  • client: HttpConnector: allow to set socket buffer sizes (386109c4)

v0.12.30

04 Sep 18:45
Compare
Choose a tag to compare

Bug Fixes

  • http1: force always-ready connections to yield after a few spins (8316f96d)
  • http2: correctly propagate HTTP2 request cancellation (50198851)

v0.12.29

04 Sep 18:44
Compare
Choose a tag to compare

Bug Fixes

  • server: skip automatic Content-Length header for HTTP 304 responses (b342c38f, closes #1797)

Features

  • body: implement http_body::Body for hyper::Body (2d9f3490)
  • client: Implement TryFrom for Destination (#1810) (d1183a80, closes #1808)
  • server: add initial window builder methods that take self by-val (#1817) (8b45af7f)