Commit Graph

235 Commits

Author SHA1 Message Date
Zach Borboa a0802b309d Clean up 2017-05-01 02:02:40 -07:00
Zach Borboa bcde6d9a54 Fix #265: Combine common cookie encoding into Curl::setEncodedCookie() and Curl::buildCookies(). 2017-05-01 01:48:13 -07:00
Zach Borboa 66d0afcb48 Bump minor version 2017-05-01 01:11:43 -07:00
Zach Borboa d214d6b767 Use temporary placeholder to store header callback data and avoid memory leak. 2017-04-30 02:52:45 -07:00
Zach Borboa 13ef3e4ef9 Reduce number of ops 2017-04-29 11:25:19 -07:00
Zach Borboa e0a6112375 Reduce number of ops 2017-04-29 11:21:28 -07:00
Zach Borboa efbcc080bb Allow the disabling of automatic response decoding.
The following will disable their respective decoders:

  $curl->setDefaultDecoder(false);
  $curl->setJsonDecoder(false);
  $curl->setXmlDecoder(false);
2017-04-29 02:54:35 -07:00
Zach Borboa 38f6825aa2 Replace variable function calls with call_user_func().
Fixes "Call to undefined function \Curl\Decoder::decodeXml()" in PHP
5.3, 5.4, 5.5, 5.6, hhvm.
2017-04-28 00:40:00 -07:00
Zach Borboa 97319a51f8 Move decoder functions to separate class file 2017-04-27 23:51:21 -07:00
Zach Borboa a6e94ae8bd Remove use of anonymous functions for json decoder and xml decoder 2017-04-27 02:41:45 -07:00
Zach Borboa 658a10f013 Fix #441: Allow using string as well as array for query parameter argument 2017-04-25 23:53:33 -07:00
Zach Borboa 4fbfbd8ced Use instance's file handle 2017-03-20 01:20:27 -07:00
Zach Borboa 75edfe2ab1 Bump minor version 2017-01-26 23:49:43 -08:00
Zach Borboa 79f659d159 Fix probable bugs; Clean up style 2016-12-28 19:19:23 -08:00
Zach Borboa b6e6524d29 Move array methods to separate file 2016-12-24 13:04:12 -08:00
Zach Borboa bf701e7f3f Move large rfc variables down 2016-12-24 12:52:17 -08:00
Zach Borboa 296345b0a2 Implement Curl::setCookies() 2016-12-18 11:31:38 -08:00
Zach Borboa de1869b3ee Return boolean when calling setCookieFile() and setCookieJar() 2016-12-15 03:53:47 -08:00
Zach Borboa 07dee3e181 Bump minor version 2016-11-13 03:11:22 -08:00
Zach Borboa d6f4d1a8f6 Move rfc2616 and rfc6265 to deferred properties.
This avoids always calling array_fill_keys() for each new instance of Curl and
makes var_dump($curl); cleaner.
2016-11-12 08:57:58 -08:00
Zach Borboa 5cb05e956a Fix #405: Support resume for Curl::download() 2016-11-10 20:34:18 -08:00
Zach Borboa ed37de7d87 Fix #404: Allow calling Curl::getInfo() without option 2016-11-04 02:24:50 -07:00
Zach Borboa 459231fae7 Bump patch version 2016-09-27 00:35:34 -07:00
Zach Borboa df358fc425 Bump major version 2016-09-27 00:35:17 -07:00
Zach Borboa 15db0b95a3 Add syntax check exclusion; Clean up syntax 2016-09-27 00:28:57 -07:00
Zach Borboa ecdfa174cb Rename setURL to setUrl 2016-09-27 00:24:22 -07:00
Zach Borboa 36ad0e4ecf Implement setHeaders() 2016-09-24 01:15:27 -07:00
Zach Borboa cc23a1b29e Fix Curl::unsetHeader() 2016-09-24 01:02:04 -07:00
Zach Borboa 90b17385f6 Implement removeHeader(); unsetHeader now unsets existing header
removeHeader() removes an internal request header.
unsetHeader() now removes an extra header previously set using setHeader().
2016-09-24 00:09:55 -07:00
Zach Borboa af03a4b81e Add bytes to callback 2016-09-23 01:25:52 -07:00
Zach Borboa 4818885d3f Update available methods in readme 2016-09-23 01:17:55 -07:00
Zach Borboa 363a362bcd Fix #332: Implement Curl::setMaxFilesize() 2016-09-23 01:13:49 -07:00
Zach Borboa f26d659a89 Clean up 2016-09-22 23:54:10 -07:00
Zach Borboa f9cf113a86 Remove Curl::getResponseCookies(), use Curl::responseCookies directly instead 2016-09-04 01:43:10 -07:00
Zach Borboa 7038db4538 Make internal method private 2016-09-04 01:42:17 -07:00
Zach Borboa 35ac500e03 Improve cookie handling for multicurl requests.
Fix Curl::responseCookies set in headerCallback() being overwritten during multicurl request.
Use rfc cookie encoding when using MultiCurl::setCookie().
Make MultiCurl::responseCookies publicly accessible.
2016-09-04 01:12:06 -07:00
Zach Borboa a02c8aa5f2 Fix undefined index when option not set 2016-09-03 22:49:41 -07:00
Zach Borboa 2e08fc596a Bump major version 2016-09-02 17:18:01 -07:00
Zach Borboa 3789e2077b Implement a more efficient handling of requests in parallel.
A window size is now used to set the maximum number of active requests at any given time. Each time a request is
completed, a new request is added from the queue until all requests are processed. The result is a more continuous
stream of requests rather than a burst of requests that may cause servers to quickly become overloaded.
2016-09-02 03:57:53 -07:00
Zach Borboa b907159c2f Move download complete handling to Curl::exec() 2016-09-02 01:30:16 -07:00
Zach Borboa ae6a3e5c28 Append existing error message when not empty 2016-09-01 23:14:01 -07:00
Zach Borboa 14d651b4ad Fix memory leak when using Curl::setDefaultDecoder() 2016-09-01 00:05:15 -07:00
Zach Borboa d70c770cc1 Include additional error code information in error message when possible 2016-08-31 23:31:59 -07:00
Zach Borboa 6dc65e994c Set Curl::curlErrorMessage from target handle 2016-08-31 21:39:34 -07:00
Zach Borboa 1edc13b5eb Clean up docblocks 2016-08-29 23:05:01 -07:00
Zach Borboa 8db91c79c7 Ensure Curl::setOpts() returns true when all options are successfully set 2016-08-29 22:44:48 -07:00
Zach Borboa 39c21041a5 Clean up per PSR2 2016-08-24 00:25:38 -07:00
Zach Borboa 5877dd0933 Bump minor version 2016-08-18 19:27:24 -07:00
Zach Borboa a2918325ae Fix "Too many open files" error when adding hundreds of downloads using MultiCurl:addDownload() 2016-08-15 23:41:46 -07:00
Zach Borboa e31718fbfe Remove negation 2016-08-15 00:30:09 -07:00