Skip to content

Releases: hyperium/hyper

v0.5.0

01 Jun 18:39
Compare
Choose a tag to compare

Bug Fixes

  • client:
    • dont call close() inside Request (3334fca2, closes #519)
    • keep the underlying connector when setting an SSL verifier (f4556d55, closes #495)
  • mock: adjust ChannelMockConnector connect method to compile (085d7b07)

Features

  • header:
    • add ContentType::json(), plaintext(), html(), jpeg(), and png() constructors (b6114ecd)
    • add Connection::close() and ::keep_alive() constructors (c2938fb4)
    • export __hyper__tm! macro so test modules work with header! (f64fb10b)
  • net:
    • remove mut requirement for NetworkConnector.connect() (1b318724)
    • add set_ssl_verifier method to NetworkConnector trait (a5d632b6)
  • server: check Response headers for Connection: close in keep_alive loop (49b5b8fd)

Breaking Changes

  • Usage of Response.deconstruct() and construct() now use
    a &mut Headers, instead of the struct proper.

    (49b5b8fd)

  • If you use deref! from the header module, you'll need
    to switch to using __hyper__deref!.

    (62d96adc)

  • Any custom Connectors will need to change to &self in
    the connect method. Any Connectors that needed the mutablity need to
    figure out a synchronization strategy.

    Request::with_connector() takes a &NetworkConnector instead of &mut.
    Any uses of with_connector will need to change to passing &C.

    (1b318724)

  • Adding a new required method to a public trait is a
    breaking change.

    (a5d632b6)

v0.4.0

07 May 20:55
Compare
Choose a tag to compare

Bug Fixes

  • net: ignore NotConnected error in NetworkStream.close (6be60052, closes #508)

Features

  • error: add Ssl variant to hyper::Error (972b3a38, closes #483)
  • headers:
    • Allow null value in Access-Control-Allow-Origin (5e341714)
    • Parse Upgrade header protocols further (f47d11b9, closes #480)
    • Add From header field (ce9c4af1)
    • Add Accept-Ranges header field (2dbe3f9b)
  • method: implement AsRef<str> for Method (c29af729)
  • server:
    • add Response.send to write a sized body (d5558b68, closes #446)
    • dropping a Response will write out to the underlying stream (a9dcc59c)

Breaking Changes

  • Adds a variant to hyper::Error, which may break any
    exhaustive matches.

    (972b3a38)

  • The terms Http and Error have been removed from the Error
    type and its variants. HttpError should now be accessed as hyper::Error,
    and variants like HttpIoError should be accessed as Error::Io.

    (9ba074d1)

  • Add variant to Access-Control-Allow-Origin enum

    (5e341714)

  • Upgrade header Protocol changed.

    (f47d11b9)

  • from_one_raw_str() returns None on empty values.

    (a6974c99)

v0.3.16

07 May 20:55
Compare
Choose a tag to compare

Bug Fixes

  • header:
    • make test_module of header! optional (a5ce9c59, closes #490)
    • exporting test_header! macro (2bc5a779)
  • http: keep raw reason phrase in RawStatus (8cdb9d5d, closes #497)

Features

v0.3.15

07 May 20:54
Compare
Choose a tag to compare

Bug Fixes

  • headers:
    • Do not parse empty values in list headers. (093a29ba)
    • Fix formatting of 0 qualites and formatting of empty list header fields. (621ef521)

Features

  • client:
    • remove Clone requirement for NetworkStream in Client (60d92c29)
    • accept &String as Body in RequestBuilder (a2aefd9a)
    • accept &String for a Url in RequestBuilder (8bc179fb)
  • headers: Implement Content-Language header field (308880b4, closes #475)
  • net: add https_using_context for user-supplied SslContext (1a076d1b)
  • server: allow consumer to supply an SslContext (3a1a2427, closes #471)

Breaking Changes

  • This removes the trait IntoBody, and instead using
    Into<Body>, as it's more idiomatic. This will only have broken code
    that had custom implementations of IntoBody, and can be fixed by
    changing them to Into<Body>.

    (a2aefd9a)

v0.3.14

07 May 20:54
Compare
Choose a tag to compare

Bug Fixes

  • http: Adjust httparse Request and Response lifetimes. (76550fdb)

v0.3.13

07 May 20:54
Compare
Choose a tag to compare

Bug Fixes

  • server: JoinHandle type parameter (c694b138)

Features

  • debug: add Debug impls for StatusClass, Server, and Listening (0fb92ee7)

v0.3.12

07 May 20:52
Compare
Choose a tag to compare

Bug Fixes

  • server:
    • handle keep-alive closing (d9187713, closes #437)
    • join on thread when Listening drops (68d4d63c, closes #447)
    • Use thread::spawn instead of thread::scoped. (e8649567)

Features

  • http: Implement Debug for HttpReader/Writer. (2f606c88)
  • log: clean up logging (4f09b002)
  • net: make HttpStream implement Debug (7b7f9c25)

v0.3.11

07 May 20:51
Compare
Choose a tag to compare

Bug Fixes

  • headers: Content-Encoding needs a hyphen. (ca2815ef)

Features

  • client: remove generic parameter for Connector (139a51f1, closes #379)

Breaking Changes

  • AccessControlAllowHeaders and AccessControlRequestHeaders values
    are case insensitive now. AccessControlAllowOrigin variants are now Any and
    Value to match the other headers.

    (94f38950)

  • If-Match, If-None-Match and Vary item variant name changed to Items

    (38d297b1)

  • Etag header field is now ETag header field

    (4434ea6a)

  • For people using the default HttpConnector and Client,
    everything should continue to just work. If the Client has been
    used with a generic parameter, it should be removed.

    However, there were some breaking changes to the internals of
    NetworkConnectors. Specifically, they no longer return a
    NetworkStream, but instead a Into<Box<NetworkStream + Send>>. All
    implementations of NetworkStream should continue to just work,
    however.

    Possible breakages could come from the stricter usage of Send
    throughout the Client API.

    (139a51f1)

v0.3.10

08 Apr 18:15
Compare
Choose a tag to compare

Bug Fixes

  • README: Update to compile example against Rust beta (341f19d3)

v0.3.9

08 Apr 18:13
Compare
Choose a tag to compare

Bug Fixes

  • headers: Add CowStr as a temporary hack to build on beta. (8e065563)