All Versions
116
Latest Version
Avg Release Cycle
59 days
Latest Release
839 days ago

Changelog History
Page 5

  • v6.0.0-beta.1 Changes

    • Requires PHP >= 5.5
    • ⚡️ Updated to use PSR-7
      • Requires immutable messages, which basically means an event based system owned by a request instance is no longer possible.
      • Utilizing the Guzzle PSR-7 package.
      • Removed the dependency on guzzlehttp/streams. These stream abstractions are available in the guzzlehttp/psr7 package under the GuzzleHttp\Psr7 namespace.
    • ➕ Added middleware and handler system
      • Replaced the Guzzle event and subscriber system with a middleware system.
      • No longer depends on RingPHP, but rather places the HTTP handlers directly in Guzzle, operating on PSR-7 messages.
      • Retry logic is now encapsulated in GuzzleHttp\Middleware::retry, which means the guzzlehttp/retry-subscriber is now obsolete.
      • Mocking responses is now handled using GuzzleHttp\Handler\MockHandler.
    • Asynchronous responses
      • No longer supports the future request option to send an async request. Instead, use one of the *Async methods of a client (e.g., requestAsync, getAsync, etc.).
      • Utilizing GuzzleHttp\Promise instead of React's promise library to avoid recursion required by chaining and forwarding react promises. See https://github.com/guzzle/promises
      • Added requestAsync and sendAsync to send request asynchronously.
      • Added magic methods for getAsync(), postAsync(), etc. to send requests asynchronously.
    • Request options
      • POST and form updates
      • Added the form_fields and form_files request options.
      • Removed the GuzzleHttp\Post namespace.
      • The body request option no longer accepts an array for POST requests.
      • The exceptions request option has been deprecated in favor of the http_errors request options.
      • The save_to request option has been deprecated in favor of sink request option.
    • Clients no longer accept an array of URI template string and variables for URI variables. You will need to expand URI templates before passing them into a client constructor or request method.
    • Client methods get(), post(), put(), patch(), options(), etc. are now magic methods that will send synchronous requests.
    • Replaced Utils.php with plain functions in functions.php.
    • ✂ Removed GuzzleHttp\Collection.
    • ✂ Removed GuzzleHttp\BatchResults. Batched pool results are now returned as an array.
    • ✂ Removed GuzzleHttp\Query. Query string handling is now handled using an associative array passed into the query request option. The query string is serialized using PHP's http_build_query. If you need more control, you can pass the query string in as a string.
    • 📜 GuzzleHttp\QueryParser has been replaced with the GuzzleHttp\Psr7\parse_query.
  • v5.3.4

    October 30, 2019
  • v5.3.3

    July 31, 2018
  • v5.3.2

    January 15, 2018
  • v5.3.1

    July 15, 2016
  • v5.3.0 Changes

    May 19, 2015
    • 🤡 Mock now supports save_to
    • Marked AbstractRequestEvent::getTransaction() as public.
    • 🛠 Fixed a bug in which multiple headers using different casing would overwrite previous headers in the associative array.
    • ➕ Added Utils::getDefaultHandler()
    • 🗄 Marked GuzzleHttp\Client::getDefaultUserAgent as deprecated.
    • URL scheme is now always lowercased.
  • v5.2.0 Changes

    January 27, 2015
    • ➕ Added AppliesHeadersInterface to make applying headers to a request based on the body more generic and not specific to PostBodyInterface.
    • ⬇️ Reduced the number of stack frames needed to send requests.
    • Nested futures are now resolved in the client rather than the RequestFsm
    • Finishing state transitions is now handled in the RequestFsm rather than the RingBridge.
    • ➕ Added a guard in the Pool class to not use recursion for request retries.
  • v5.1.0 Changes

    December 19, 2014
    • Pool class no longer uses recursion when a request is intercepted.
    • The size of a Pool can now be dynamically adjusted using a callback. See https://github.com/guzzle/guzzle/pull/943.
    • Setting a request option to null when creating a request with a client will ensure that the option is not set. This allows you to overwrite default request options on a per-request basis. See https://github.com/guzzle/guzzle/pull/937.
    • ➕ Added the ability to limit which protocols are allowed for redirects by specifying a protocols array in the allow_redirects request option.
    • 🔀 Nested futures due to retries are now resolved when waiting for synchronous responses. See https://github.com/guzzle/guzzle/pull/947.
    • 👀 "0" is now an allowed URI path. See https://github.com/guzzle/guzzle/pull/935.
    • Query no longer typehints on the $query argument in the constructor, allowing for strings and arrays.
    • Exceptions thrown in the end event are now correctly wrapped with Guzzle specific exceptions if necessary.
  • v5.0.3 Changes

    November 03, 2014

    ⚡️ This change updates query strings so that they are treated as un-encoded values 0️⃣ by default where the value represents an un-encoded value to send over the wire. A Query object then encodes the value before sending over the wire. This means that even value query string values (e.g., ":") are url encoded. This 🏗 makes the Query class match PHP's http_build_query function. However, if you want to send requests over the wire using valid query string characters that do not need to be encoded, then you can provide a string to Url::setQuery() and pass true as the second argument to specify that the query string is a raw 📜 string that should not be parsed or encoded (unless a call to getQuery() is subsequently made, forcing the query-string to be converted into a Query object).

  • v5.0.2 Changes

    October 30, 2014
    • ➕ Added a trailing \r\n to multipart/form-data payloads. See https://github.com/guzzle/guzzle/pull/871
    • ➕ Added a GuzzleHttp\Pool::send() convenience method to match the docs.
    • 👀 Status codes are now returned as integers. See https://github.com/guzzle/guzzle/issues/881
    • No longer overwriting an existing application/x-www-form-urlencoded header when sending POST requests, allowing for customized headers. See https://github.com/guzzle/guzzle/issues/877
    • 👌 Improved path URL serialization.

      • No longer double percent-encoding characters in the path or query string if they are already encoded.
      • Now properly encoding the supplied path to a URL object, instead of only encoding ' ' and '?'.
      • Note: This has been changed in 5.0.3 to now encode query string values by default unless the rawString argument is provided when setting the query string on a URL: Now allowing many more characters to be present in the query string without being percent encoded. See https://tools.ietf.org/html/rfc3986#appendix-A