Files
reqwest-impersonate/CHANGELOG.md
2017-08-25 13:52:40 -07:00

6.6 KiB

v0.7.3

Features

  • Proxy::custom(fn) to allow dynamically picking a proxy URL

Fixes

  • fix occasional panic when program exits while Client or Response are dropping.

v0.7.2

Fixes

  • fix a panic when redirecting and a Authorization<Basic> header was added (cf246d072b)
  • fix redirects so that a GET will follow 307/308 responses (2d11a4bd71)

v0.7.1

Fixes

  • fix remove accidental printlns in the sending of a body
  • some documentation improvements

v0.7.0

Features

  • Proxy support (#30)
  • Self-signed TLS certificates (#97)
  • Disabling TLS hostname validation   (#89)
  • A Request type that can be used instead of the RequestBuilder (#85)
  • Add Response::error_for_status() to easily convert 400 and 500 status responses into an Error (#98)
  • Upgrade hyper to 0.11
    • Synchronous Client remains.
    • Timeouts now affect DNS and socket connection.
    • Pool much better at evicting sockets when they die.
    • An unstable Cargo feature to enable reqwest::unstable::async.
  • A huge docs improvement!

Fixes

  • Publicly exports RedirectAction and RedirectAttempt
  • Error::get_ref returns Error + Send + Sync

Breaking Changes

  • hyper has been upgraded to 0.11, so header, StatusCode, and Method have breaking changes.
  • mime has been ugpraded to 0.3, with a very different API.
  • All configuration methods have been removed from the Client, and moved to the ClientBuilder.
  • The HttpVersion type was completely removed.
  • Error::cause() now returns Error::get_ref().cause().
  • All methods on Client that start a RequestBuilder now return a Result immediately, instead of delaying the URL parse error for later.
  • The RequestBuilder methods all take &mut self, instead of moving the builder, and return &mut Self. (This shouldn't actually affect most people who are building a request in a single chain.)
  • Response::status() returns a StatusCode instead of &StatusCode.

v0.6.2

Features

  • adds Client::referer(bool) option to disable setting the Referer header during redirects (bafcd7ae6f)

Fixes

v0.6.1

Features

  • adds Error::get_ref to get the underlying error that may have occurred. Includes a 'static bounds, which allows for downcasting (as opposed to Error::cause).

v0.6.0

Features

  • Upgraded to serde 1.0
  • Added a url method to Error, which returns a possible associated Url that occurred with this error.
  • Added req.basic_auth(user, optional_pass) method to ease using Basic authentication.

Breaking Changes

  • The publicly exposed peer dependency serde was upgraded. It is now serde@1.0. Mismatched version will give a compiler error that a serde trait is not implemented.
  • Error is no longer an enum, but an opaque struct. Details about it can be checked with std::error::Error::cause(), and methods on reqwest::Error include is_http(), is_serialization(), and is_redirect().
  • RedirectPolicy::custom receives different arguments, and returns different values. See the docs for an example.

v0.5.2

Fixes

v0.5.1

Features

  • add Clone implementation for Client

v0.5.0

Features

  • Automatic GZIP decoding: By default, Client will try to decode any responses that appear to be gzip encoded (based on headers). This can be disabled via client.gzip(false) (ab5e477a12)
  • Specify a timeout for requests using client.timeout(duration). (ec049fefba)
  • Request bodies with a known length can be constructed with Body::sized() (82f1877d4b)
  • Add Client.put, Client.patch, and Client.delete convenience methods (c37b8aa033, 4d6582d22b, a3983f3122)
  • Add reqwest::mime (0615c6d65e)

Breaking Changes

The only breaking change is a behavioral one, all programs should still compile without modification. The automatic GZIP decoding could interfere in cases where a user was expecting the GZIP bytes, either to save to a file or decode themselves. To restore this functionality, set client.gzip(false).

v0.4.0

  • updated to serde 0.9

v0.3.0

  • updated to hyper 0.10

v0.2.0

Features

  • add Response.json() method (2d10ecc99e)
  • add RedirectPolicy (e92b3e862a)
  • set an Accept: */* header by default if no Accept header is set (559ae8011a)
  • add support for 307 and 308 redirects (a54447c1d9)
  • implement Sync for Client, and Send for RequestBuilder and Response (d18a53b3fc)
  • implement Send for Error (20b161096e)
  • implement std::fmt::Debug for all public types (d624b0ef29)

Breaking Changes

  • Error::Serialize now has a Box<StdError + Send + Sync> instead of Box<StdError>
  • RequestBuilder no longer has an associated lifetime (was RequestBuilder<'a>)

v0.1.0

Initial release: http://seanmonstar.com/post/153221119046/introducing-reqwest