Edit File by line
/home/barbar84/public_h.../wp-conte.../plugins/updraftp.../vendor/guzzle/guzzle
File: CHANGELOG.md
# CHANGELOG
[0] Fix | Delete
[1] Fix | Delete
## 3.9.3 - 2015-03-18
[2] Fix | Delete
[3] Fix | Delete
* Ensuring Content-Length is not stripped from a request when it is `0`.
[4] Fix | Delete
* Added more information to stream wrapper exceptions.
[5] Fix | Delete
* Message parser will no longer throw warnings for malformed messages.
[6] Fix | Delete
* Giving a valid cache TTL when max-age is 0.
[7] Fix | Delete
[8] Fix | Delete
## 3.9.2 - 2014-09-10
[9] Fix | Delete
[10] Fix | Delete
* Retrying "Connection died, retrying a fresh connect" curl errors.
[11] Fix | Delete
* Automatically extracting the cacert from the phar in client constructor.
[12] Fix | Delete
* Added EntityBody support for OPTIONS requests.
[13] Fix | Delete
[14] Fix | Delete
## 3.9.1 - 2014-05-07
[15] Fix | Delete
[16] Fix | Delete
* Added a fix to ReadLimitEntityBody to ensure it doesn't infinitely loop.
[17] Fix | Delete
* Added a fix to the stream checksum function so that when the first read
[18] Fix | Delete
returns a falsey value, it still continues to consume the stream until EOF.
[19] Fix | Delete
[20] Fix | Delete
## 3.9.0 - 2014-04-23
[21] Fix | Delete
[22] Fix | Delete
* `null`, `false`, and `"_guzzle_blank_"` all now serialize as an empty value
[23] Fix | Delete
with no trailing "=". See dc1d824277.
[24] Fix | Delete
* No longer performing an MD5 check on the cacert each time the phar is used,
[25] Fix | Delete
but rather copying the cacert to the temp directory.
[26] Fix | Delete
* `"0"` can now be added as a URL path
[27] Fix | Delete
* Deleting cookies that are set to empty
[28] Fix | Delete
* If-Modified-Since is no longer unnecessarily added to the CachePlugin
[29] Fix | Delete
* Cookie path matching now follows RFC 6265 s5.1.4
[30] Fix | Delete
* Updated service descriptions are now added to a service client's composite
[31] Fix | Delete
factory.
[32] Fix | Delete
* MockPlugin now throws an exception if the queue is empty.
[33] Fix | Delete
* Properly parsing URLs that start with "http" but are not absolute
[34] Fix | Delete
* Added the ability to configure the curl_multi_select timeout setting
[35] Fix | Delete
* OAuth parameters are now sorted using lexicographical byte value ordering
[36] Fix | Delete
* Fixing invalid usage of an out of range PHP feature in the ErrorResponsePlugin
[37] Fix | Delete
[38] Fix | Delete
## 3.8.1 -2014-01-28
[39] Fix | Delete
[40] Fix | Delete
* Bug: Always using GET requests when redirecting from a 303 response
[41] Fix | Delete
* Bug: CURLOPT_SSL_VERIFYHOST is now correctly set to false when setting `$certificateAuthority` to false in
[42] Fix | Delete
`Guzzle\Http\ClientInterface::setSslVerification()`
[43] Fix | Delete
* Bug: RedirectPlugin now uses strict RFC 3986 compliance when combining a base URL with a relative URL
[44] Fix | Delete
* Bug: The body of a request can now be set to `"0"`
[45] Fix | Delete
* Sending PHP stream requests no longer forces `HTTP/1.0`
[46] Fix | Delete
* Adding more information to ExceptionCollection exceptions so that users have more context, including a stack trace of
[47] Fix | Delete
each sub-exception
[48] Fix | Delete
* Updated the `$ref` attribute in service descriptions to merge over any existing parameters of a schema (rather than
[49] Fix | Delete
clobbering everything).
[50] Fix | Delete
* Merging URLs will now use the query string object from the relative URL (thus allowing custom query aggregators)
[51] Fix | Delete
* Query strings are now parsed in a way that they do no convert empty keys with no value to have a dangling `=`.
[52] Fix | Delete
For example `foo&bar=baz` is now correctly parsed and recognized as `foo&bar=baz` rather than `foo=&bar=baz`.
[53] Fix | Delete
* Now properly escaping the regular expression delimiter when matching Cookie domains.
[54] Fix | Delete
* Network access is now disabled when loading XML documents
[55] Fix | Delete
[56] Fix | Delete
## 3.8.0 - 2013-12-05
[57] Fix | Delete
[58] Fix | Delete
* Added the ability to define a POST name for a file
[59] Fix | Delete
* JSON response parsing now properly walks additionalProperties
[60] Fix | Delete
* cURL error code 18 is now retried automatically in the BackoffPlugin
[61] Fix | Delete
* Fixed a cURL error when URLs contain fragments
[62] Fix | Delete
* Fixed an issue in the BackoffPlugin retry event where it was trying to access all exceptions as if they were
[63] Fix | Delete
CurlExceptions
[64] Fix | Delete
* CURLOPT_PROGRESS function fix for PHP 5.5 (69fcc1e)
[65] Fix | Delete
* Added the ability for Guzzle to work with older versions of cURL that do not support `CURLOPT_TIMEOUT_MS`
[66] Fix | Delete
* Fixed a bug that was encountered when parsing empty header parameters
[67] Fix | Delete
* UriTemplate now has a `setRegex()` method to match the docs
[68] Fix | Delete
* The `debug` request parameter now checks if it is truthy rather than if it exists
[69] Fix | Delete
* Setting the `debug` request parameter to true shows verbose cURL output instead of using the LogPlugin
[70] Fix | Delete
* Added the ability to combine URLs using strict RFC 3986 compliance
[71] Fix | Delete
* Command objects can now return the validation errors encountered by the command
[72] Fix | Delete
* Various fixes to cache revalidation (#437 and 29797e5)
[73] Fix | Delete
* Various fixes to the AsyncPlugin
[74] Fix | Delete
* Cleaned up build scripts
[75] Fix | Delete
[76] Fix | Delete
## 3.7.4 - 2013-10-02
[77] Fix | Delete
[78] Fix | Delete
* Bug fix: 0 is now an allowed value in a description parameter that has a default value (#430)
[79] Fix | Delete
* Bug fix: SchemaFormatter now returns an integer when formatting to a Unix timestamp
[80] Fix | Delete
(see https://github.com/aws/aws-sdk-php/issues/147)
[81] Fix | Delete
* Bug fix: Cleaned up and fixed URL dot segment removal to properly resolve internal dots
[82] Fix | Delete
* Minimum PHP version is now properly specified as 5.3.3 (up from 5.3.2) (#420)
[83] Fix | Delete
* Updated the bundled cacert.pem (#419)
[84] Fix | Delete
* OauthPlugin now supports adding authentication to headers or query string (#425)
[85] Fix | Delete
[86] Fix | Delete
## 3.7.3 - 2013-09-08
[87] Fix | Delete
[88] Fix | Delete
* Added the ability to get the exception associated with a request/command when using `MultiTransferException` and
[89] Fix | Delete
`CommandTransferException`.
[90] Fix | Delete
* Setting `additionalParameters` of a response to false is now honored when parsing responses with a service description
[91] Fix | Delete
* Schemas are only injected into response models when explicitly configured.
[92] Fix | Delete
* No longer guessing Content-Type based on the path of a request. Content-Type is now only guessed based on the path of
[93] Fix | Delete
an EntityBody.
[94] Fix | Delete
* Bug fix: ChunkedIterator can now properly chunk a \Traversable as well as an \Iterator.
[95] Fix | Delete
* Bug fix: FilterIterator now relies on `\Iterator` instead of `\Traversable`.
[96] Fix | Delete
* Bug fix: Gracefully handling malformed responses in RequestMediator::writeResponseBody()
[97] Fix | Delete
* Bug fix: Replaced call to canCache with canCacheRequest in the CallbackCanCacheStrategy of the CachePlugin
[98] Fix | Delete
* Bug fix: Visiting XML attributes first before visting XML children when serializing requests
[99] Fix | Delete
* Bug fix: Properly parsing headers that contain commas contained in quotes
[100] Fix | Delete
* Bug fix: mimetype guessing based on a filename is now case-insensitive
[101] Fix | Delete
[102] Fix | Delete
## 3.7.2 - 2013-08-02
[103] Fix | Delete
[104] Fix | Delete
* Bug fix: Properly URL encoding paths when using the PHP-only version of the UriTemplate expander
[105] Fix | Delete
See https://github.com/guzzle/guzzle/issues/371
[106] Fix | Delete
* Bug fix: Cookie domains are now matched correctly according to RFC 6265
[107] Fix | Delete
See https://github.com/guzzle/guzzle/issues/377
[108] Fix | Delete
* Bug fix: GET parameters are now used when calculating an OAuth signature
[109] Fix | Delete
* Bug fix: Fixed an issue with cache revalidation where the If-None-Match header was being double quoted
[110] Fix | Delete
* `Guzzle\Common\AbstractHasDispatcher::dispatch()` now returns the event that was dispatched
[111] Fix | Delete
* `Guzzle\Http\QueryString::factory()` now guesses the most appropriate query aggregator to used based on the input.
[112] Fix | Delete
See https://github.com/guzzle/guzzle/issues/379
[113] Fix | Delete
* Added a way to add custom domain objects to service description parsing using the `operation.parse_class` event. See
[114] Fix | Delete
https://github.com/guzzle/guzzle/pull/380
[115] Fix | Delete
* cURL multi cleanup and optimizations
[116] Fix | Delete
[117] Fix | Delete
## 3.7.1 - 2013-07-05
[118] Fix | Delete
[119] Fix | Delete
* Bug fix: Setting default options on a client now works
[120] Fix | Delete
* Bug fix: Setting options on HEAD requests now works. See #352
[121] Fix | Delete
* Bug fix: Moving stream factory before send event to before building the stream. See #353
[122] Fix | Delete
* Bug fix: Cookies no longer match on IP addresses per RFC 6265
[123] Fix | Delete
* Bug fix: Correctly parsing header parameters that are in `<>` and quotes
[124] Fix | Delete
* Added `cert` and `ssl_key` as request options
[125] Fix | Delete
* `Host` header can now diverge from the host part of a URL if the header is set manually
[126] Fix | Delete
* `Guzzle\Service\Command\LocationVisitor\Request\XmlVisitor` was rewritten to change from using SimpleXML to XMLWriter
[127] Fix | Delete
* OAuth parameters are only added via the plugin if they aren't already set
[128] Fix | Delete
* Exceptions are now thrown when a URL cannot be parsed
[129] Fix | Delete
* Returning `false` if `Guzzle\Http\EntityBody::getContentMd5()` fails
[130] Fix | Delete
* Not setting a `Content-MD5` on a command if calculating the Content-MD5 fails via the CommandContentMd5Plugin
[131] Fix | Delete
[132] Fix | Delete
## 3.7.0 - 2013-06-10
[133] Fix | Delete
[134] Fix | Delete
* See UPGRADING.md for more information on how to upgrade.
[135] Fix | Delete
* Requests now support the ability to specify an array of $options when creating a request to more easily modify a
[136] Fix | Delete
request. You can pass a 'request.options' configuration setting to a client to apply default request options to
[137] Fix | Delete
every request created by a client (e.g. default query string variables, headers, curl options, etc).
[138] Fix | Delete
* Added a static facade class that allows you to use Guzzle with static methods and mount the class to `\Guzzle`.
[139] Fix | Delete
See `Guzzle\Http\StaticClient::mount`.
[140] Fix | Delete
* Added `command.request_options` to `Guzzle\Service\Command\AbstractCommand` to pass request options to requests
[141] Fix | Delete
created by a command (e.g. custom headers, query string variables, timeout settings, etc).
[142] Fix | Delete
* Stream size in `Guzzle\Stream\PhpStreamRequestFactory` will now be set if Content-Length is returned in the
[143] Fix | Delete
headers of a response
[144] Fix | Delete
* Added `Guzzle\Common\Collection::setPath($path, $value)` to set a value into an array using a nested key
[145] Fix | Delete
(e.g. `$collection->setPath('foo/baz/bar', 'test'); echo $collection['foo']['bar']['bar'];`)
[146] Fix | Delete
* ServiceBuilders now support storing and retrieving arbitrary data
[147] Fix | Delete
* CachePlugin can now purge all resources for a given URI
[148] Fix | Delete
* CachePlugin can automatically purge matching cached items when a non-idempotent request is sent to a resource
[149] Fix | Delete
* CachePlugin now uses the Vary header to determine if a resource is a cache hit
[150] Fix | Delete
* `Guzzle\Http\Message\Response` now implements `\Serializable`
[151] Fix | Delete
* Added `Guzzle\Cache\CacheAdapterFactory::fromCache()` to more easily create cache adapters
[152] Fix | Delete
* `Guzzle\Service\ClientInterface::execute()` now accepts an array, single command, or Traversable
[153] Fix | Delete
* Fixed a bug in `Guzzle\Http\Message\Header\Link::addLink()`
[154] Fix | Delete
* Better handling of calculating the size of a stream in `Guzzle\Stream\Stream` using fstat() and caching the size
[155] Fix | Delete
* `Guzzle\Common\Exception\ExceptionCollection` now creates a more readable exception message
[156] Fix | Delete
* Fixing BC break: Added back the MonologLogAdapter implementation rather than extending from PsrLog so that older
[157] Fix | Delete
Symfony users can still use the old version of Monolog.
[158] Fix | Delete
* Fixing BC break: Added the implementation back in for `Guzzle\Http\Message\AbstractMessage::getTokenizedHeader()`.
[159] Fix | Delete
Now triggering an E_USER_DEPRECATED warning when used. Use `$message->getHeader()->parseParams()`.
[160] Fix | Delete
* Several performance improvements to `Guzzle\Common\Collection`
[161] Fix | Delete
* Added an `$options` argument to the end of the following methods of `Guzzle\Http\ClientInterface`:
[162] Fix | Delete
createRequest, head, delete, put, patch, post, options, prepareRequest
[163] Fix | Delete
* Added an `$options` argument to the end of `Guzzle\Http\Message\Request\RequestFactoryInterface::createRequest()`
[164] Fix | Delete
* Added an `applyOptions()` method to `Guzzle\Http\Message\Request\RequestFactoryInterface`
[165] Fix | Delete
* Changed `Guzzle\Http\ClientInterface::get($uri = null, $headers = null, $body = null)` to
[166] Fix | Delete
`Guzzle\Http\ClientInterface::get($uri = null, $headers = null, $options = array())`. You can still pass in a
[167] Fix | Delete
resource, string, or EntityBody into the $options parameter to specify the download location of the response.
[168] Fix | Delete
* Changed `Guzzle\Common\Collection::__construct($data)` to no longer accepts a null value for `$data` but a
[169] Fix | Delete
default `array()`
[170] Fix | Delete
* Added `Guzzle\Stream\StreamInterface::isRepeatable`
[171] Fix | Delete
* Removed `Guzzle\Http\ClientInterface::setDefaultHeaders(). Use
[172] Fix | Delete
$client->getConfig()->setPath('request.options/headers/{header_name}', 'value')`. or
[173] Fix | Delete
$client->getConfig()->setPath('request.options/headers', array('header_name' => 'value'))`.
[174] Fix | Delete
* Removed `Guzzle\Http\ClientInterface::getDefaultHeaders(). Use $client->getConfig()->getPath('request.options/headers')`.
[175] Fix | Delete
* Removed `Guzzle\Http\ClientInterface::expandTemplate()`
[176] Fix | Delete
* Removed `Guzzle\Http\ClientInterface::setRequestFactory()`
[177] Fix | Delete
* Removed `Guzzle\Http\ClientInterface::getCurlMulti()`
[178] Fix | Delete
* Removed `Guzzle\Http\Message\RequestInterface::canCache`
[179] Fix | Delete
* Removed `Guzzle\Http\Message\RequestInterface::setIsRedirect`
[180] Fix | Delete
* Removed `Guzzle\Http\Message\RequestInterface::isRedirect`
[181] Fix | Delete
* Made `Guzzle\Http\Client::expandTemplate` and `getUriTemplate` protected methods.
[182] Fix | Delete
* You can now enable E_USER_DEPRECATED warnings to see if you are using a deprecated method by setting
[183] Fix | Delete
`Guzzle\Common\Version::$emitWarnings` to true.
[184] Fix | Delete
* Marked `Guzzle\Http\Message\Request::isResponseBodyRepeatable()` as deprecated. Use
[185] Fix | Delete
`$request->getResponseBody()->isRepeatable()` instead.
[186] Fix | Delete
* Marked `Guzzle\Http\Message\Request::canCache()` as deprecated. Use
[187] Fix | Delete
`Guzzle\Plugin\Cache\DefaultCanCacheStrategy->canCacheRequest()` instead.
[188] Fix | Delete
* Marked `Guzzle\Http\Message\Request::canCache()` as deprecated. Use
[189] Fix | Delete
`Guzzle\Plugin\Cache\DefaultCanCacheStrategy->canCacheRequest()` instead.
[190] Fix | Delete
* Marked `Guzzle\Http\Message\Request::setIsRedirect()` as deprecated. Use the HistoryPlugin instead.
[191] Fix | Delete
* Marked `Guzzle\Http\Message\Request::isRedirect()` as deprecated. Use the HistoryPlugin instead.
[192] Fix | Delete
* Marked `Guzzle\Cache\CacheAdapterFactory::factory()` as deprecated
[193] Fix | Delete
* Marked 'command.headers', 'command.response_body' and 'command.on_complete' as deprecated for AbstractCommand.
[194] Fix | Delete
These will work through Guzzle 4.0
[195] Fix | Delete
* Marked 'request.params' for `Guzzle\Http\Client` as deprecated. Use [request.options][params].
[196] Fix | Delete
* Marked `Guzzle\Service\Client::enableMagicMethods()` as deprecated. Magic methods can no longer be disabled on a Guzzle\Service\Client.
[197] Fix | Delete
* Marked `Guzzle\Service\Client::getDefaultHeaders()` as deprecated. Use $client->getConfig()->getPath('request.options/headers')`.
[198] Fix | Delete
* Marked `Guzzle\Service\Client::setDefaultHeaders()` as deprecated. Use $client->getConfig()->setPath('request.options/headers/{header_name}', 'value')`.
[199] Fix | Delete
* Marked `Guzzle\Parser\Url\UrlParser` as deprecated. Just use PHP's `parse_url()` and percent encode your UTF-8.
[200] Fix | Delete
* Marked `Guzzle\Common\Collection::inject()` as deprecated.
[201] Fix | Delete
* Marked `Guzzle\Plugin\CurlAuth\CurlAuthPlugin` as deprecated. Use `$client->getConfig()->setPath('request.options/auth', array('user', 'pass', 'Basic|Digest');`
[202] Fix | Delete
* CacheKeyProviderInterface and DefaultCacheKeyProvider are no longer used. All of this logic is handled in a
[203] Fix | Delete
CacheStorageInterface. These two objects and interface will be removed in a future version.
[204] Fix | Delete
* Always setting X-cache headers on cached responses
[205] Fix | Delete
* Default cache TTLs are now handled by the CacheStorageInterface of a CachePlugin
[206] Fix | Delete
* `CacheStorageInterface::cache($key, Response $response, $ttl = null)` has changed to `cache(RequestInterface
[207] Fix | Delete
$request, Response $response);`
[208] Fix | Delete
* `CacheStorageInterface::fetch($key)` has changed to `fetch(RequestInterface $request);`
[209] Fix | Delete
* `CacheStorageInterface::delete($key)` has changed to `delete(RequestInterface $request);`
[210] Fix | Delete
* Added `CacheStorageInterface::purge($url)`
[211] Fix | Delete
* `DefaultRevalidation::__construct(CacheKeyProviderInterface $cacheKey, CacheStorageInterface $cache, CachePlugin
[212] Fix | Delete
$plugin)` has changed to `DefaultRevalidation::__construct(CacheStorageInterface $cache,
[213] Fix | Delete
CanCacheStrategyInterface $canCache = null)`
[214] Fix | Delete
* Added `RevalidationInterface::shouldRevalidate(RequestInterface $request, Response $response)`
[215] Fix | Delete
[216] Fix | Delete
## 3.6.0 - 2013-05-29
[217] Fix | Delete
[218] Fix | Delete
* ServiceDescription now implements ToArrayInterface
[219] Fix | Delete
* Added command.hidden_params to blacklist certain headers from being treated as additionalParameters
[220] Fix | Delete
* Guzzle can now correctly parse incomplete URLs
[221] Fix | Delete
* Mixed casing of headers are now forced to be a single consistent casing across all values for that header.
[222] Fix | Delete
* Messages internally use a HeaderCollection object to delegate handling case-insensitive header resolution
[223] Fix | Delete
* Removed the whole changedHeader() function system of messages because all header changes now go through addHeader().
[224] Fix | Delete
* Specific header implementations can be created for complex headers. When a message creates a header, it uses a
[225] Fix | Delete
HeaderFactory which can map specific headers to specific header classes. There is now a Link header and
[226] Fix | Delete
CacheControl header implementation.
[227] Fix | Delete
* Removed from interface: Guzzle\Http\ClientInterface::setUriTemplate
[228] Fix | Delete
* Removed from interface: Guzzle\Http\ClientInterface::setCurlMulti()
[229] Fix | Delete
* Removed Guzzle\Http\Message\Request::receivedRequestHeader() and implemented this functionality in
[230] Fix | Delete
Guzzle\Http\Curl\RequestMediator
[231] Fix | Delete
* Removed the optional $asString parameter from MessageInterface::getHeader(). Just cast the header to a string.
[232] Fix | Delete
* Removed the optional $tryChunkedTransfer option from Guzzle\Http\Message\EntityEnclosingRequestInterface
[233] Fix | Delete
* Removed the $asObjects argument from Guzzle\Http\Message\MessageInterface::getHeaders()
[234] Fix | Delete
* Removed Guzzle\Parser\ParserRegister::get(). Use getParser()
[235] Fix | Delete
* Removed Guzzle\Parser\ParserRegister::set(). Use registerParser().
[236] Fix | Delete
* All response header helper functions return a string rather than mixing Header objects and strings inconsistently
[237] Fix | Delete
* Removed cURL blacklist support. This is no longer necessary now that Expect, Accept, etc are managed by Guzzle
[238] Fix | Delete
directly via interfaces
[239] Fix | Delete
* Removed the injecting of a request object onto a response object. The methods to get and set a request still exist
[240] Fix | Delete
but are a no-op until removed.
[241] Fix | Delete
* Most classes that used to require a ``Guzzle\Service\Command\CommandInterface` typehint now request a
[242] Fix | Delete
`Guzzle\Service\Command\ArrayCommandInterface`.
[243] Fix | Delete
* Added `Guzzle\Http\Message\RequestInterface::startResponse()` to the RequestInterface to handle injecting a response
[244] Fix | Delete
on a request while the request is still being transferred
[245] Fix | Delete
* The ability to case-insensitively search for header values
[246] Fix | Delete
* Guzzle\Http\Message\Header::hasExactHeader
[247] Fix | Delete
* Guzzle\Http\Message\Header::raw. Use getAll()
[248] Fix | Delete
* Deprecated cache control specific methods on Guzzle\Http\Message\AbstractMessage. Use the CacheControl header object
[249] Fix | Delete
instead.
[250] Fix | Delete
* `Guzzle\Service\Command\CommandInterface` now extends from ToArrayInterface and ArrayAccess
[251] Fix | Delete
* Added the ability to cast Model objects to a string to view debug information.
[252] Fix | Delete
[253] Fix | Delete
## 3.5.0 - 2013-05-13
[254] Fix | Delete
[255] Fix | Delete
* Bug: Fixed a regression so that request responses are parsed only once per oncomplete event rather than multiple times
[256] Fix | Delete
* Bug: Better cleanup of one-time events accross the board (when an event is meant to fire once, it will now remove
[257] Fix | Delete
itself from the EventDispatcher)
[258] Fix | Delete
* Bug: `Guzzle\Log\MessageFormatter` now properly writes "total_time" and "connect_time" values
[259] Fix | Delete
* Bug: Cloning an EntityEnclosingRequest now clones the EntityBody too
[260] Fix | Delete
* Bug: Fixed an undefined index error when parsing nested JSON responses with a sentAs parameter that reference a
[261] Fix | Delete
non-existent key
[262] Fix | Delete
* Bug: All __call() method arguments are now required (helps with mocking frameworks)
[263] Fix | Delete
* Deprecating Response::getRequest() and now using a shallow clone of a request object to remove a circular reference
[264] Fix | Delete
to help with refcount based garbage collection of resources created by sending a request
[265] Fix | Delete
* Deprecating ZF1 cache and log adapters. These will be removed in the next major version.
[266] Fix | Delete
* Deprecating `Response::getPreviousResponse()` (method signature still exists, but it'sdeprecated). Use the
[267] Fix | Delete
HistoryPlugin for a history.
[268] Fix | Delete
* Added a `responseBody` alias for the `response_body` location
[269] Fix | Delete
* Refactored internals to no longer rely on Response::getRequest()
[270] Fix | Delete
* HistoryPlugin can now be cast to a string
[271] Fix | Delete
* HistoryPlugin now logs transactions rather than requests and responses to more accurately keep track of the requests
[272] Fix | Delete
and responses that are sent over the wire
[273] Fix | Delete
* Added `getEffectiveUrl()` and `getRedirectCount()` to Response objects
[274] Fix | Delete
[275] Fix | Delete
## 3.4.3 - 2013-04-30
[276] Fix | Delete
[277] Fix | Delete
* Bug fix: Fixing bug introduced in 3.4.2 where redirect responses are duplicated on the final redirected response
[278] Fix | Delete
* Added a check to re-extract the temp cacert bundle from the phar before sending each request
[279] Fix | Delete
[280] Fix | Delete
## 3.4.2 - 2013-04-29
[281] Fix | Delete
[282] Fix | Delete
* Bug fix: Stream objects now work correctly with "a" and "a+" modes
[283] Fix | Delete
* Bug fix: Removing `Transfer-Encoding: chunked` header when a Content-Length is present
[284] Fix | Delete
* Bug fix: AsyncPlugin no longer forces HEAD requests
[285] Fix | Delete
* Bug fix: DateTime timezones are now properly handled when using the service description schema formatter
[286] Fix | Delete
* Bug fix: CachePlugin now properly handles stale-if-error directives when a request to the origin server fails
[287] Fix | Delete
* Setting a response on a request will write to the custom request body from the response body if one is specified
[288] Fix | Delete
* LogPlugin now writes to php://output when STDERR is undefined
[289] Fix | Delete
* Added the ability to set multiple POST files for the same key in a single call
[290] Fix | Delete
* application/x-www-form-urlencoded POSTs now use the utf-8 charset by default
[291] Fix | Delete
* Added the ability to queue CurlExceptions to the MockPlugin
[292] Fix | Delete
* Cleaned up how manual responses are queued on requests (removed "queued_response" and now using request.before_send)
[293] Fix | Delete
* Configuration loading now allows remote files
[294] Fix | Delete
[295] Fix | Delete
## 3.4.1 - 2013-04-16
[296] Fix | Delete
[297] Fix | Delete
* Large refactoring to how CurlMulti handles work. There is now a proxy that sits in front of a pool of CurlMulti
[298] Fix | Delete
handles. This greatly simplifies the implementation, fixes a couple bugs, and provides a small performance boost.
[299] Fix | Delete
* Exceptions are now properly grouped when sending requests in parallel
[300] Fix | Delete
* Redirects are now properly aggregated when a multi transaction fails
[301] Fix | Delete
* Redirects now set the response on the original object even in the event of a failure
[302] Fix | Delete
* Bug fix: Model names are now properly set even when using $refs
[303] Fix | Delete
* Added support for PHP 5.5's CurlFile to prevent warnings with the deprecated @ syntax
[304] Fix | Delete
* Added support for oauth_callback in OAuth signatures
[305] Fix | Delete
* Added support for oauth_verifier in OAuth signatures
[306] Fix | Delete
* Added support to attempt to retrieve a command first literally, then ucfirst, the with inflection
[307] Fix | Delete
[308] Fix | Delete
## 3.4.0 - 2013-04-11
[309] Fix | Delete
[310] Fix | Delete
* Bug fix: URLs are now resolved correctly based on http://tools.ietf.org/html/rfc3986#section-5.2. #289
[311] Fix | Delete
* Bug fix: Absolute URLs with a path in a service description will now properly override the base URL. #289
[312] Fix | Delete
* Bug fix: Parsing a query string with a single PHP array value will now result in an array. #263
[313] Fix | Delete
* Bug fix: Better normalization of the User-Agent header to prevent duplicate headers. #264.
[314] Fix | Delete
* Bug fix: Added `number` type to service descriptions.
[315] Fix | Delete
* Bug fix: empty parameters are removed from an OAuth signature
[316] Fix | Delete
* Bug fix: Revalidating a cache entry prefers the Last-Modified over the Date header
[317] Fix | Delete
* Bug fix: Fixed "array to string" error when validating a union of types in a service description
[318] Fix | Delete
* Bug fix: Removed code that attempted to determine the size of a stream when data is written to the stream
[319] Fix | Delete
* Bug fix: Not including an `oauth_token` if the value is null in the OauthPlugin.
[320] Fix | Delete
* Bug fix: Now correctly aggregating successful requests and failed requests in CurlMulti when a redirect occurs.
[321] Fix | Delete
* The new default CURLOPT_TIMEOUT setting has been increased to 150 seconds so that Guzzle works on poor connections.
[322] Fix | Delete
* Added a feature to EntityEnclosingRequest::setBody() that will automatically set the Content-Type of the request if
[323] Fix | Delete
the Content-Type can be determined based on the entity body or the path of the request.
[324] Fix | Delete
* Added the ability to overwrite configuration settings in a client when grabbing a throwaway client from a builder.
[325] Fix | Delete
* Added support for a PSR-3 LogAdapter.
[326] Fix | Delete
* Added a `command.after_prepare` event
[327] Fix | Delete
* Added `oauth_callback` parameter to the OauthPlugin
[328] Fix | Delete
* Added the ability to create a custom stream class when using a stream factory
[329] Fix | Delete
* Added a CachingEntityBody decorator
[330] Fix | Delete
* Added support for `additionalParameters` in service descriptions to define how custom parameters are serialized.
[331] Fix | Delete
* The bundled SSL certificate is now provided in the phar file and extracted when running Guzzle from a phar.
[332] Fix | Delete
* You can now send any EntityEnclosingRequest with POST fields or POST files and cURL will handle creating bodies
[333] Fix | Delete
* POST requests using a custom entity body are now treated exactly like PUT requests but with a custom cURL method. This
[334] Fix | Delete
means that the redirect behavior of POST requests with custom bodies will not be the same as POST requests that use
[335] Fix | Delete
POST fields or files (the latter is only used when emulating a form POST in the browser).
[336] Fix | Delete
* Lots of cleanup to CurlHandle::factory and RequestFactory::createRequest
[337] Fix | Delete
[338] Fix | Delete
## 3.3.1 - 2013-03-10
[339] Fix | Delete
[340] Fix | Delete
* Added the ability to create PHP streaming responses from HTTP requests
[341] Fix | Delete
* Bug fix: Running any filters when parsing response headers with service descriptions
[342] Fix | Delete
* Bug fix: OauthPlugin fixes to allow for multi-dimensional array signing, and sorting parameters before signing
[343] Fix | Delete
* Bug fix: Removed the adding of default empty arrays and false Booleans to responses in order to be consistent across
[344] Fix | Delete
response location visitors.
[345] Fix | Delete
* Bug fix: Removed the possibility of creating configuration files with circular dependencies
[346] Fix | Delete
* RequestFactory::create() now uses the key of a POST file when setting the POST file name
[347] Fix | Delete
* Added xmlAllowEmpty to serialize an XML body even if no XML specific parameters are set
[348] Fix | Delete
[349] Fix | Delete
## 3.3.0 - 2013-03-03
[350] Fix | Delete
[351] Fix | Delete
* A large number of performance optimizations have been made
[352] Fix | Delete
* Bug fix: Added 'wb' as a valid write mode for streams
[353] Fix | Delete
* Bug fix: `Guzzle\Http\Message\Response::json()` now allows scalar values to be returned
[354] Fix | Delete
* Bug fix: Fixed bug in `Guzzle\Http\Message\Response` where wrapping quotes were stripped from `getEtag()`
[355] Fix | Delete
* BC: Removed `Guzzle\Http\Utils` class
[356] Fix | Delete
* BC: Setting a service description on a client will no longer modify the client's command factories.
[357] Fix | Delete
* BC: Emitting IO events from a RequestMediator is now a parameter that must be set in a request's curl options using
[358] Fix | Delete
the 'emit_io' key. This was previously set under a request's parameters using 'curl.emit_io'
[359] Fix | Delete
* BC: `Guzzle\Stream\Stream::getWrapper()` and `Guzzle\Stream\Stream::getSteamType()` are no longer converted to
[360] Fix | Delete
lowercase
[361] Fix | Delete
* Operation parameter objects are now lazy loaded internally
[362] Fix | Delete
* Added ErrorResponsePlugin that can throw errors for responses defined in service description operations' errorResponses
[363] Fix | Delete
* Added support for instantiating responseType=class responseClass classes. Classes must implement
[364] Fix | Delete
`Guzzle\Service\Command\ResponseClassInterface`
[365] Fix | Delete
* Added support for additionalProperties for top-level parameters in responseType=model responseClasses. These
[366] Fix | Delete
additional properties also support locations and can be used to parse JSON responses where the outermost part of the
[367] Fix | Delete
JSON is an array
[368] Fix | Delete
* Added support for nested renaming of JSON models (rename sentAs to name)
[369] Fix | Delete
* CachePlugin
[370] Fix | Delete
* Added support for stale-if-error so that the CachePlugin can now serve stale content from the cache on error
[371] Fix | Delete
* Debug headers can now added to cached response in the CachePlugin
[372] Fix | Delete
[373] Fix | Delete
## 3.2.0 - 2013-02-14
[374] Fix | Delete
[375] Fix | Delete
* CurlMulti is no longer reused globally. A new multi object is created per-client. This helps to isolate clients.
[376] Fix | Delete
* URLs with no path no longer contain a "/" by default
[377] Fix | Delete
* Guzzle\Http\QueryString does no longer manages the leading "?". This is now handled in Guzzle\Http\Url.
[378] Fix | Delete
* BadResponseException no longer includes the full request and response message
[379] Fix | Delete
* Adding setData() to Guzzle\Service\Description\ServiceDescriptionInterface
[380] Fix | Delete
* Adding getResponseBody() to Guzzle\Http\Message\RequestInterface
[381] Fix | Delete
* Various updates to classes to use ServiceDescriptionInterface type hints rather than ServiceDescription
[382] Fix | Delete
* Header values can now be normalized into distinct values when multiple headers are combined with a comma separated list
[383] Fix | Delete
* xmlEncoding can now be customized for the XML declaration of a XML service description operation
[384] Fix | Delete
* Guzzle\Http\QueryString now uses Guzzle\Http\QueryAggregator\QueryAggregatorInterface objects to add custom value
[385] Fix | Delete
aggregation and no longer uses callbacks
[386] Fix | Delete
* The URL encoding implementation of Guzzle\Http\QueryString can now be customized
[387] Fix | Delete
* Bug fix: Filters were not always invoked for array service description parameters
[388] Fix | Delete
* Bug fix: Redirects now use a target response body rather than a temporary response body
[389] Fix | Delete
* Bug fix: The default exponential backoff BackoffPlugin was not giving when the request threshold was exceeded
[390] Fix | Delete
* Bug fix: Guzzle now takes the first found value when grabbing Cache-Control directives
[391] Fix | Delete
[392] Fix | Delete
## 3.1.2 - 2013-01-27
[393] Fix | Delete
[394] Fix | Delete
* Refactored how operation responses are parsed. Visitors now include a before() method responsible for parsing the
[395] Fix | Delete
response body. For example, the XmlVisitor now parses the XML response into an array in the before() method.
[396] Fix | Delete
* Fixed an issue where cURL would not automatically decompress responses when the Accept-Encoding header was sent
[397] Fix | Delete
* CURLOPT_SSL_VERIFYHOST is never set to 1 because it is deprecated (see 5e0ff2ef20f839e19d1eeb298f90ba3598784444)
[398] Fix | Delete
* Fixed a bug where redirect responses were not chained correctly using getPreviousResponse()
[399] Fix | Delete
* Setting default headers on a client after setting the user-agent will not erase the user-agent setting
[400] Fix | Delete
[401] Fix | Delete
## 3.1.1 - 2013-01-20
[402] Fix | Delete
[403] Fix | Delete
* Adding wildcard support to Guzzle\Common\Collection::getPath()
[404] Fix | Delete
* Adding alias support to ServiceBuilder configs
[405] Fix | Delete
* Adding Guzzle\Service\Resource\CompositeResourceIteratorFactory and cleaning up factory interface
[406] Fix | Delete
[407] Fix | Delete
## 3.1.0 - 2013-01-12
[408] Fix | Delete
[409] Fix | Delete
* BC: CurlException now extends from RequestException rather than BadResponseException
[410] Fix | Delete
* BC: Renamed Guzzle\Plugin\Cache\CanCacheStrategyInterface::canCache() to canCacheRequest() and added CanCacheResponse()
[411] Fix | Delete
* Added getData to ServiceDescriptionInterface
[412] Fix | Delete
* Added context array to RequestInterface::setState()
[413] Fix | Delete
* Bug: Removing hard dependency on the BackoffPlugin from Guzzle\Http
[414] Fix | Delete
* Bug: Adding required content-type when JSON request visitor adds JSON to a command
[415] Fix | Delete
* Bug: Fixing the serialization of a service description with custom data
[416] Fix | Delete
* Made it easier to deal with exceptions thrown when transferring commands or requests in parallel by providing
[417] Fix | Delete
an array of successful and failed responses
[418] Fix | Delete
* Moved getPath from Guzzle\Service\Resource\Model to Guzzle\Common\Collection
[419] Fix | Delete
* Added Guzzle\Http\IoEmittingEntityBody
[420] Fix | Delete
* Moved command filtration from validators to location visitors
[421] Fix | Delete
* Added `extends` attributes to service description parameters
[422] Fix | Delete
* Added getModels to ServiceDescriptionInterface
[423] Fix | Delete
[424] Fix | Delete
## 3.0.7 - 2012-12-19
[425] Fix | Delete
[426] Fix | Delete
* Fixing phar detection when forcing a cacert to system if null or true
[427] Fix | Delete
* Allowing filename to be passed to `Guzzle\Http\Message\Request::setResponseBody()`
[428] Fix | Delete
* Cleaning up `Guzzle\Common\Collection::inject` method
[429] Fix | Delete
* Adding a response_body location to service descriptions
[430] Fix | Delete
[431] Fix | Delete
## 3.0.6 - 2012-12-09
[432] Fix | Delete
[433] Fix | Delete
* CurlMulti performance improvements
[434] Fix | Delete
* Adding setErrorResponses() to Operation
[435] Fix | Delete
* composer.json tweaks
[436] Fix | Delete
[437] Fix | Delete
## 3.0.5 - 2012-11-18
[438] Fix | Delete
[439] Fix | Delete
* Bug: Fixing an infinite recursion bug caused from revalidating with the CachePlugin
[440] Fix | Delete
* Bug: Response body can now be a string containing "0"
[441] Fix | Delete
* Bug: Using Guzzle inside of a phar uses system by default but now allows for a custom cacert
[442] Fix | Delete
* Bug: QueryString::fromString now properly parses query string parameters that contain equal signs
[443] Fix | Delete
* Added support for XML attributes in service description responses
[444] Fix | Delete
* DefaultRequestSerializer now supports array URI parameter values for URI template expansion
[445] Fix | Delete
* Added better mimetype guessing to requests and post files
[446] Fix | Delete
[447] Fix | Delete
## 3.0.4 - 2012-11-11
[448] Fix | Delete
[449] Fix | Delete
* Bug: Fixed a bug when adding multiple cookies to a request to use the correct glue value
[450] Fix | Delete
* Bug: Cookies can now be added that have a name, domain, or value set to "0"
[451] Fix | Delete
* Bug: Using the system cacert bundle when using the Phar
[452] Fix | Delete
* Added json and xml methods to Response to make it easier to parse JSON and XML response data into data structures
[453] Fix | Delete
* Enhanced cookie jar de-duplication
[454] Fix | Delete
* Added the ability to enable strict cookie jars that throw exceptions when invalid cookies are added
[455] Fix | Delete
* Added setStream to StreamInterface to actually make it possible to implement custom rewind behavior for entity bodies
[456] Fix | Delete
* Added the ability to create any sort of hash for a stream rather than just an MD5 hash
[457] Fix | Delete
[458] Fix | Delete
## 3.0.3 - 2012-11-04
[459] Fix | Delete
[460] Fix | Delete
* Implementing redirects in PHP rather than cURL
[461] Fix | Delete
* Added PECL URI template extension and using as default parser if available
[462] Fix | Delete
* Bug: Fixed Content-Length parsing of Response factory
[463] Fix | Delete
* Adding rewind() method to entity bodies and streams. Allows for custom rewinding of non-repeatable streams.
[464] Fix | Delete
* Adding ToArrayInterface throughout library
[465] Fix | Delete
* Fixing OauthPlugin to create unique nonce values per request
[466] Fix | Delete
[467] Fix | Delete
## 3.0.2 - 2012-10-25
[468] Fix | Delete
[469] Fix | Delete
* Magic methods are enabled by default on clients
[470] Fix | Delete
* Magic methods return the result of a command
[471] Fix | Delete
* Service clients no longer require a base_url option in the factory
[472] Fix | Delete
* Bug: Fixed an issue with URI templates where null template variables were being expanded
[473] Fix | Delete
[474] Fix | Delete
## 3.0.1 - 2012-10-22
[475] Fix | Delete
[476] Fix | Delete
* Models can now be used like regular collection objects by calling filter, map, etc
[477] Fix | Delete
* Models no longer require a Parameter structure or initial data in the constructor
[478] Fix | Delete
* Added a custom AppendIterator to get around a PHP bug with the `\AppendIterator`
[479] Fix | Delete
[480] Fix | Delete
## 3.0.0 - 2012-10-15
[481] Fix | Delete
[482] Fix | Delete
* Rewrote service description format to be based on Swagger
[483] Fix | Delete
* Now based on JSON schema
[484] Fix | Delete
* Added nested input structures and nested response models
[485] Fix | Delete
* Support for JSON and XML input and output models
[486] Fix | Delete
* Renamed `commands` to `operations`
[487] Fix | Delete
* Removed dot class notation
[488] Fix | Delete
* Removed custom types
[489] Fix | Delete
* Broke the project into smaller top-level namespaces to be more component friendly
[490] Fix | Delete
* Removed support for XML configs and descriptions. Use arrays or JSON files.
[491] Fix | Delete
* Removed the Validation component and Inspector
[492] Fix | Delete
* Moved all cookie code to Guzzle\Plugin\Cookie
[493] Fix | Delete
* Magic methods on a Guzzle\Service\Client now return the command un-executed.
[494] Fix | Delete
* Calling getResult() or getResponse() on a command will lazily execute the command if needed.
[495] Fix | Delete
* Now shipping with cURL's CA certs and using it by default
[496] Fix | Delete
* Added previousResponse() method to response objects
[497] Fix | Delete
* No longer sending Accept and Accept-Encoding headers on every request
[498] Fix | Delete
* Only sending an Expect header by default when a payload is greater than 1MB
[499] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function