Fixing logic in addPostFiles() to handle when a file name/path string is given in place of the  array.
Adding unit test for a file upload using a specific file name/path rather than a file array with tmp_name.
merged branch arithmetric/Goutte-fix_addPostFiles_for_filename_string (PR #81)

This PR was merged into the master branch.

Commits
-------

186e7a1 Adding unit test for a file upload using a specific file name/path rather than a file array with tmp_name.
6c663ac Fixing logic in addPostFiles() to handle when a file name/path string is given in place of the  array.

Discussion
----------

Fixing logic in addPostFiles() to handle when a file name/path string is given in place of the  array.

This is a follow up fix for the change to allow client side file uploads with an arbitrary file name that was recently merged from this PR:
https://github.com/fabpot/Goutte/pull/77

The logic in addPostFiles() is not working as expected. When a specific file name is used, it is supplied as a string in $info. This string value in $info passes the check for isset($info['tmp_name']) so I added an additional check using is_array($info).

---------------------------------------------------------------------------

by arithmetric at 2012-10-22T18:27:41Z

Includes a unit test to demonstrate the issue and its solution.
merged branch tiger-seo/master (PR #82)

This PR was merged into the master branch.

Commits
-------

b060d79 ability to set custom CURLOPT_TIMEOUT

Discussion
----------

ability to set custom CURLOPT_TIMEOUT
regenerated the phar
Update guzzle version and fix tests, namespace of plugins and request redirect change.
Update composer lockfile.
Add Travis CI automated testing.
merged branch christianchristensen/master (PR #85)

This PR was merged into the master branch.

Commits
-------

80a0021 Add Travis CI automated testing.
f078c01 Update composer lockfile.
ab76269 Update guzzle version and fix tests, namespace of plugins and request redirect change.

Discussion
----------

Update Guzzle version, lockfiles, and add Travis-CI testing.

This builds off of #84 and updates the lock-file to Guzzle 3.0.5 and adds automated testing.

---------------------------------------------------------------------------

by christianchristensen at 2012-11-19T02:35:40Z

@fabpot @mtdowling @arturo-c See results here: https://travis-ci.org/christianchristensen/Goutte/jobs/3258295 (this will probably need to be enabled under @fabpot Travisci account to have PR tests...)
updated phar
Enforce no follow redirects on all clients doRequest.
Fixed typo
merged branch pborreli/patch-1 (PR #90)

This PR was merged into the master branch.

Commits
-------

62a8cee Fixed typo

Discussion
----------

Fixed typo
merged branch christianchristensen/master (PR #86)

This PR was merged into the master branch.

Commits
-------

fa7284b Enforce no follow redirects on all clients doRequest.

Discussion
----------

Enforce no follow redirects on all clients doRequest.

This one was pretty tricky, but it looks like the default client initialization configs (specifically to disable redirects) are not always used. This explicitly sets no redirect to allow the scraper to follow redirects; which is necessary for tasks like resetting the base url on a redirect.

---------------------------------------------------------------------------

by mtdowling at 2012-11-20T06:17:35Z

Not that it makes this PR invalid, but it sounds like this is a bug in Guzzle. When are you seeing requests created by a client not honor the `redirect.disable` parameter that was specified on the client?

---------------------------------------------------------------------------

by christianchristensen at 2012-11-20T06:35:44Z

@mtdowling @arturo-c 's #84 had an update to guzzle 3.x that looked like it created a new client with the defaults to [`redirect.disable = true`](https://github.com/fabpot/Goutte/blob/master/Goutte/Client.php#L49) (which I would have to look a little closer, maybe the client is being initialized elsewhere in the Behat/Mink use case - and would provide a nice test case...), but the behavior I saw was that the base url when following a link would keep the url of the referring domain even though the redirect changed the domain in the location (it looks like b/c of the actions taken in [BrowserKit](https://github.com/symfony/BrowserKit/blob/master/Client.php#L253-L275))

---------------------------------------------------------------------------

by jhedstrom at 2012-11-28T22:28:49Z

:+1: Seeing this fix some failures I was experiencing using Mink.

---------------------------------------------------------------------------

by zroger at 2012-12-06T17:18:33Z

In my case, the client is indeed being initialized elsewhere.  I am using Behat with the mink-goutte-extension and the dependency injection container instantiates the guzzle client without the `redirect.disable` parameter.  Once I fixed that, the patch in this PR was not necessary.

See See Behat/MinkGoutteDriver#14

---------------------------------------------------------------------------

by smithmilner at 2012-12-17T20:26:15Z

I was having issues while testing the submission of Drupal forms. This change allows Goutte to follow the form submission.

---------------------------------------------------------------------------

by mtdowling at 2012-12-17T21:01:03Z

:thumbsup:
Update composer.json
merged branch benja-M-1/master (PR #92)

This PR was merged into the master branch.

Commits
-------

89de650 Update composer.json

Discussion
----------

Allow Symfony <2.3
updated license year
FIX: ability to set custom CURLOPT_TIMEOUT
- does not work when CURLOPT_TIMEOUT is 0, so that timeout is disabled