Retrieving a DELETE request from a client or request factory will now
return an EntityEnclosingRequestInterface object.
Cleaned up the CurlHandle::factory method.
Closes#118 (thanks to @zachbadgett for inspiration)
position to it's previous position any time a seek is made for a
temporary operation (e.g. __toString(), getContentLength(),
getContentMd()).
Cleaning up how compression offsets are handled
[Http] Adding the ability to consume request entity bodies when mocked
by the
MockPlugin
[Http] Fixing an offset error in the ReadLimitEntityBody
Only returning a subset of the body when calling __toString() on a
ReadLimitEntityBody
According to RFC1738 (implemented by urlencode) spaces are encoded as
plus symbols. However, RFC3986 (imeplemented by rawurlencode) states
that spaces should be encoded as '%20'.
When parsing a query string that was encoded with urlencode we should
treat plus symbols as spaces.
fixes#105
An example of this would be:
<param name="curl.CURLOPT_CONNECTTIMEOUT" default="100" />
This would override the configuration set by the instantiation:
new Client(
'http://www.example.com',
array('curl.CURLOPT_CONNECTTIMEOUT' => 100)
);
The responsibility of setting a Content-Length of 0 for an empty EntityEnclosingRequest is now handled in the setState method of an EntityEnclosingRequest
Removing the action argument from Guzzle\Http\Message\AbstractMessage::changedHeader()
Passing an array of Cache-Control data in the Cache-Control header instead of the unnecessary implode
Removing process as an argument for Guzzle\Http\Message\EntityEnclosingRequest::addPostField
Enforcing the decision of whether or not to URL encode POST data in the CurlHandle class
Closes#95
- Adds a trailing equal sign for empty values by default (e.g. ?acl=)
- Set blank values (e.g. ?acl) by setting the value to QueryString::BLANK
- Combined URL encoding into a single option rather than separate
settings for fields and values
- Changed isEncodingValues() and isEncodingFields() to isUrlEncoding()
- Changed setEncodeValues(bool) and setEncodeFields(bool) to useUrlEncoding(bool)
- Changed the aggregation functions of QueryString to be static methods
- Can now use fromString() with querystrings that have a leading ?
Suppose that we set the following data on a QueryString object:
array(
'foo' => null,
'bar' => 'test',
)
The query string before and after this change would be:
BEFORE: ?foo&bar=test
AFTER: ?foo=&bar=test
The importance is that before the lack of "=" resulted made it look like there was only a single parameter called "foo&bar" with a value of "test" (i.e. the bar parameter is joined with foo).
Not caching requests other than GET and HEAD by default. Adding the ability to
use a custom filter strategy to determine if a request can be cached. Closes#91
* Guzzle\Http\Cookie is now used to manage Set-Cookie data, not Cookie
data
* Moving almost all cookie logic out of the CookiePlugin and into the
Cookie or CookieJar implementations
* Array cookie jar now returns matching cookies for a request and adds
cookies from responses
* Renaming methods in the CookieJarInterface
* Removing old references to deleted classes
* Guzzle\Http\Message\Request no longer needs an internal Cookie object
* Making the default glue for HTTP headers ';' instead of ','
* Adding a removeValue to Guzzle\Http\Message\Header
* Adding getCookies() to request interface.
* Removing unused AUTH_BASIC and AUTH_DIGEST constants from
* Guzzle\Http\Message\RequestInterface
* Lots of cleanup in the Guzzle\Http\Parser\Cookie\CookieParser
* Cleaning up Cookie related tests