Michael Wallner [Thu, 27 Sep 2018 06:18:37 +0000 (08:18 +0200)]
build: fix master
Michael Wallner [Wed, 26 Sep 2018 08:21:05 +0000 (10:21 +0200)]
Merge branch 'fix/no-test-args-passthru' of https://github.com/DaveRandom/ext-http
Michael Wallner [Wed, 26 Sep 2018 08:19:39 +0000 (10:19 +0200)]
coverity fixups
Chris Wright [Wed, 22 Aug 2018 14:53:05 +0000 (15:53 +0100)]
Only pass valid options through from TEST_PHP_ARGS and make sure child process has extensions
Michael Wallner [Mon, 23 Jul 2018 09:46:50 +0000 (11:46 +0200)]
travis: fix test
Michael Wallner [Mon, 23 Jul 2018 09:43:57 +0000 (11:43 +0200)]
travis: fix ssl client test
Michael Wallner [Thu, 19 Jul 2018 11:22:51 +0000 (13:22 +0200)]
back to dev
Michael Wallner [Thu, 19 Jul 2018 11:16:13 +0000 (13:16 +0200)]
prepare release v3.2.0
* Fixed gh-issue #73: build fails with libidn and libidn2
* Fixed gh-issue #78: PHP-7.3 build crashes
* Fixed PHP-7.2 build crashes
+ Added brotli compression support
+ Implemented gh-issue #58: Notify observers before any request is built
Michael Wallner [Wed, 18 Jul 2018 11:50:43 +0000 (13:50 +0200)]
travis: rebuild deps on master
Michael Wallner [Wed, 18 Jul 2018 11:23:18 +0000 (13:23 +0200)]
travis: clean on build failure
Michael Wallner [Wed, 18 Jul 2018 10:59:26 +0000 (12:59 +0200)]
add 7.3; reconfigure for master
Remi Collet [Wed, 18 Jul 2018 04:37:53 +0000 (06:37 +0200)]
fix for 7.3.0alpha4
Michael Wallner [Tue, 26 Jun 2018 15:19:43 +0000 (17:19 +0200)]
fix shutdown crash with 7.3/master
Michael Wallner [Tue, 26 Jun 2018 13:40:28 +0000 (15:40 +0200)]
attempt to fix #78
PHP-7.3 build fails on x86 due to change of the calling convention of
the zif_handler
Michael Wallner [Mon, 9 Apr 2018 10:35:26 +0000 (12:35 +0200)]
prepare release v3.2.0RC1
* PHP-7.2 compatibility
* Fixed gh-issue #73: build fails with libidn and libidn2
+ Added brotli compression support
+ Implemented gh-issue #58: Notify observers before any request is built
Michael Wallner [Mon, 9 Apr 2018 10:33:01 +0000 (12:33 +0200)]
prepare release v3.2.0RC1
* PHP-7.2 compatibility
* Fixed gh-issue #73: build fails with libidn and libidn2
+ Added brotli compression support
+ Implemented gh-issue #58: Notify observers before any request is built
Michael Wallner [Tue, 6 Mar 2018 12:50:04 +0000 (13:50 +0100)]
split utf8 ranges and single chars
Michael Wallner [Tue, 6 Mar 2018 11:45:45 +0000 (12:45 +0100)]
use binary search on utf8_ranges
Michael Wallner [Mon, 5 Mar 2018 13:30:31 +0000 (14:30 +0100)]
switching on bits of just the start char won't work ;)
Michael Wallner [Mon, 5 Mar 2018 13:29:23 +0000 (14:29 +0100)]
delete gcov files before cache
Michael Wallner [Mon, 5 Mar 2018 10:52:49 +0000 (11:52 +0100)]
use u_isalnum if available
Michael Wallner [Mon, 5 Mar 2018 08:11:20 +0000 (09:11 +0100)]
two-split switch
Michael Wallner [Sat, 3 Mar 2018 14:01:14 +0000 (15:01 +0100)]
unrolled isualpha
Michael Wallner [Fri, 2 Mar 2018 20:29:18 +0000 (21:29 +0100)]
change build directory
Michael Wallner [Fri, 2 Mar 2018 14:44:21 +0000 (15:44 +0100)]
traying to cache stuff on travis
Michael Wallner [Fri, 2 Mar 2018 12:42:31 +0000 (13:42 +0100)]
fix dangling else swallowing the return statement with clang
Michael Wallner [Fri, 2 Mar 2018 12:35:52 +0000 (13:35 +0100)]
fix segfault if filter could not be located
Michael Wallner [Fri, 2 Mar 2018 11:07:49 +0000 (12:07 +0100)]
fix test
Michael Wallner [Fri, 2 Mar 2018 10:13:01 +0000 (11:13 +0100)]
fix tests
Michael Wallner [Fri, 2 Mar 2018 09:56:57 +0000 (10:56 +0100)]
new build matrix
Michael Wallner [Tue, 27 Feb 2018 16:32:45 +0000 (17:32 +0100)]
implement #58
Client observers are now informed with an "prepare" event.
Note, though, that http\Client::getProgressInfo() does not return
the progress state received for this event.
Michael Wallner [Tue, 27 Feb 2018 15:18:21 +0000 (16:18 +0100)]
fix build without brotli, take 2
Michael Wallner [Tue, 27 Feb 2018 14:29:13 +0000 (15:29 +0100)]
fix build without brotli
Michael Wallner [Tue, 27 Feb 2018 14:22:27 +0000 (15:22 +0100)]
include brotli in the coverage build
Michael Wallner [Tue, 27 Feb 2018 14:19:59 +0000 (15:19 +0100)]
set AHVE_LIBBROTLI to false if checks fail
Michael Wallner [Tue, 27 Feb 2018 10:28:59 +0000 (11:28 +0100)]
typo
Michael Wallner [Tue, 27 Feb 2018 10:04:52 +0000 (11:04 +0100)]
POS: brotli
Michael Wallner [Tue, 27 Feb 2018 10:04:19 +0000 (11:04 +0100)]
configure: fix libevent version check
Michael Wallner [Tue, 27 Feb 2018 10:03:59 +0000 (11:03 +0100)]
configure: fix version check with empty version
Michael Wallner [Tue, 27 Feb 2018 07:50:35 +0000 (08:50 +0100)]
don't fail on cppcheck, yet
Michael Wallner [Tue, 27 Feb 2018 07:27:26 +0000 (08:27 +0100)]
export PKG_CONFIG_PATH, else pkg-config doesn't pick it up
Michael Wallner [Mon, 26 Feb 2018 16:54:02 +0000 (17:54 +0100)]
prepare travis
Michael Wallner [Mon, 26 Feb 2018 16:35:04 +0000 (17:35 +0100)]
gitignore
Michael Wallner [Mon, 26 Feb 2018 16:34:05 +0000 (17:34 +0100)]
add missing files
Michael Wallner [Mon, 26 Feb 2018 16:25:46 +0000 (17:25 +0100)]
add brotli filter and tests
Michael Wallner [Mon, 26 Feb 2018 12:40:05 +0000 (13:40 +0100)]
ignore new headers
Michael Wallner [Mon, 26 Feb 2018 12:39:49 +0000 (13:39 +0100)]
fix warning
Michael Wallner [Mon, 26 Feb 2018 12:39:32 +0000 (13:39 +0100)]
optimize
Michael Wallner [Mon, 26 Feb 2018 07:49:03 +0000 (08:49 +0100)]
add brotli encoding
Michael Wallner [Fri, 23 Feb 2018 07:18:44 +0000 (08:18 +0100)]
update curl info
Michael Wallner [Fri, 23 Feb 2018 07:12:28 +0000 (08:12 +0100)]
update utf8 table
Michael Wallner [Fri, 23 Feb 2018 06:58:11 +0000 (07:58 +0100)]
fix cppcheck
Michael Wallner [Thu, 22 Feb 2018 16:35:13 +0000 (17:35 +0100)]
performance improvements
Michael Wallner [Tue, 20 Feb 2018 14:02:59 +0000 (15:02 +0100)]
fix test
Michael Wallner [Tue, 20 Feb 2018 13:28:19 +0000 (14:28 +0100)]
test against master
Michael Wallner [Tue, 20 Feb 2018 12:43:02 +0000 (13:43 +0100)]
fix leak
Michael Wallner [Thu, 8 Feb 2018 15:59:50 +0000 (16:59 +0100)]
fix macro
Michael Wallner [Thu, 8 Feb 2018 15:52:45 +0000 (16:52 +0100)]
update test versions
Michael Wallner [Thu, 8 Feb 2018 15:48:04 +0000 (16:48 +0100)]
compat with master
Michael Wallner [Wed, 7 Feb 2018 11:45:52 +0000 (12:45 +0100)]
refactor for 7.2
Michael Wallner [Thu, 1 Feb 2018 13:36:09 +0000 (14:36 +0100)]
fix #73
include idna.h prior idn2.h to ensure INDA_H is defined and libidn2 does
not try to define the idna compat layer
Michael Wallner [Wed, 20 Sep 2017 14:25:41 +0000 (16:25 +0200)]
--crashes; ++leaks;
Michael Wallner [Mon, 3 Jul 2017 07:59:08 +0000 (09:59 +0200)]
Merge branch 'v3.1.x'
Michael Heimpold [Sun, 4 Jun 2017 13:00:33 +0000 (15:00 +0200)]
Handle NULL strings gracefully during constant registration
When libcurl is compiled not using e.g. libz or SSL, then a call to
curl_version_info could return NULL in the corresponding fields of
curl_version_info_data.
Passing such NULL pointers down to REGISTER_NS_STRING_CONSTANT results
in a segfault during php startup, so let's check for this special case
and register a NULL constant in this case.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Michael Wallner [Tue, 4 Apr 2017 19:05:21 +0000 (21:05 +0200)]
fix #68
Michael Wallner [Tue, 4 Apr 2017 18:48:42 +0000 (20:48 +0200)]
fix #66 & fix #67
Michael Wallner [Tue, 4 Apr 2017 11:38:11 +0000 (13:38 +0200)]
clean up test
Michael Wallner [Tue, 4 Apr 2017 11:35:18 +0000 (13:35 +0200)]
Fixed issue #63
Use urldecode instead of raw_urldecode in http_params
Michael Wallner [Tue, 4 Apr 2017 09:53:08 +0000 (11:53 +0200)]
curl: fix gnutls include
Michael Wallner [Tue, 4 Apr 2017 07:21:56 +0000 (09:21 +0200)]
administrativa
Michael Wallner [Tue, 4 Apr 2017 07:09:20 +0000 (09:09 +0200)]
Fix issue #65
http\Client::enqueue(): Could not enqueue request: The easy handle
is already added to a multi handle (@rcanavan, Mike)
Michael Wallner [Tue, 4 Apr 2017 07:09:11 +0000 (09:09 +0200)]
3.1.1dev
Michael Wallner [Tue, 24 Jan 2017 07:38:58 +0000 (08:38 +0100)]
fix querystring object conversion on master
Ondřej Surý [Mon, 23 Jan 2017 09:39:48 +0000 (10:39 +0100)]
Use ntohl instead of doing LE conversion yourself
Michael Wallner [Tue, 13 Dec 2016 09:10:09 +0000 (10:10 +0100)]
configure: fix -Werror builds
Remi Collet [Mon, 12 Dec 2016 12:49:33 +0000 (13:49 +0100)]
fix build
Michael Wallner [Wed, 7 Jun 2017 06:07:32 +0000 (08:07 +0200)]
Merge pull request #70 from mhei/fix_register_null_strings
Handle NULL strings gracefully during constant registration
Michael Heimpold [Sun, 4 Jun 2017 13:00:33 +0000 (15:00 +0200)]
Handle NULL strings gracefully during constant registration
When libcurl is compiled not using e.g. libz or SSL, then a call to
curl_version_info could return NULL in the corresponding fields of
curl_version_info_data.
Passing such NULL pointers down to REGISTER_NS_STRING_CONSTANT results
in a segfault during php startup, so let's check for this special case
and register a NULL constant in this case.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Michael Wallner [Tue, 4 Apr 2017 19:05:21 +0000 (21:05 +0200)]
fix #68
Michael Wallner [Tue, 4 Apr 2017 18:48:42 +0000 (20:48 +0200)]
fix #66 & fix #67
Michael Wallner [Tue, 4 Apr 2017 11:38:11 +0000 (13:38 +0200)]
clean up test
Michael Wallner [Tue, 4 Apr 2017 11:35:18 +0000 (13:35 +0200)]
Fixed issue #63
Use urldecode instead of raw_urldecode in http_params
Michael Wallner [Tue, 4 Apr 2017 09:53:08 +0000 (11:53 +0200)]
curl: fix gnutls include
Michael Wallner [Tue, 4 Apr 2017 07:21:56 +0000 (09:21 +0200)]
administrativa
Michael Wallner [Tue, 4 Apr 2017 07:09:20 +0000 (09:09 +0200)]
Fix issue #65
http\Client::enqueue(): Could not enqueue request: The easy handle
is already added to a multi handle (@rcanavan, Mike)
Michael Wallner [Tue, 4 Apr 2017 07:09:11 +0000 (09:09 +0200)]
3.1.1dev
Michael Wallner [Tue, 31 Jan 2017 14:13:19 +0000 (15:13 +0100)]
TODO: crash--; leaks++;
Michael Wallner [Mon, 30 Jan 2017 15:16:26 +0000 (16:16 +0100)]
avoid COW violation
Michael Wallner [Mon, 30 Jan 2017 15:16:04 +0000 (16:16 +0100)]
fix opcache weirdance
Michael Wallner [Mon, 30 Jan 2017 11:41:03 +0000 (12:41 +0100)]
avoid COW violation
Michael Wallner [Mon, 30 Jan 2017 11:40:36 +0000 (12:40 +0100)]
deref
Michael Wallner [Tue, 24 Jan 2017 10:54:57 +0000 (11:54 +0100)]
separate input hashtables to avoid string memleaks
Michael Wallner [Tue, 24 Jan 2017 07:38:58 +0000 (08:38 +0100)]
fix querystring object conversion on master
Ondřej Surý [Mon, 23 Jan 2017 09:39:48 +0000 (10:39 +0100)]
Use ntohl instead of doing LE conversion yourself
Michael Wallner [Tue, 13 Dec 2016 09:10:09 +0000 (10:10 +0100)]
configure: fix -Werror builds
Remi Collet [Mon, 12 Dec 2016 12:49:33 +0000 (13:49 +0100)]
fix build
Michael Wallner [Mon, 12 Dec 2016 09:02:56 +0000 (10:02 +0100)]
release 3.1.0
+ Added http\Client\Curl\User interface for userland event loops
+ Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and
http\Url::STDFLAGS
+ Added http\Client::setDebug(callable $debug)
+ Added http\Client\Curl\FEATURES constants and namespace
+ Added http\Client\Curl\VERSIONS constants and namespace
+ Added share_cookies and share_ssl (libcurl >= 7.23.0) options to
http\Client::configure()
+ http\Client uses curl_share handles to properly share cookies and
SSL/TLS sessions between requests
+ Improved configure checks for default CA bundles
+ Improved negotiation precision
* Fixed regression introduced by http\Params::PARSE_RFC5987: negotiation
using the params parser would receive param keys without the trailing
asterisk, stripped by http\Params::PARSE_RFC5987.
* Fix gh-issue #50: http\Client::dequeue() within
http\Client::setDebug() causes segfault (Mike, Maik Wagner)
* Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value()
(Mike, @rc0r)
* Fix gh-issue #45: HTTP/2 response message parsing broken with
libcurl >= 7.49.1 (Mike)
* Fix gh-issue #43: Joining query with empty original variable in query
(Mike, Sander Backus)
* Fix gh-issue #42: fatal error when using punycode in URLs
(Mike, Sebastian Thielen)
* Fix gh-issue #41: Use curl_version_info_data.features when
initializing options (Mike)
* Fix gh-issue #40: determinde the SSL backend used by curl at runtime
(Mike, @rcanavan)
* Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option
proxy_service_name (Mike, @rcanavan)
* Fix gh-issue #38: Persistent curl handles: error code not properly
reset (Mike, @afflerbach)
* Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is
used (Mike, @rcanavan, @afflerbach)
* Fix gh-issue #34: allow setting multiple headers with the same name
(Mike, @rcanavan)
* Fix gh-issue #33: allow setting prodyhost request option to NULL
(Mike, @rcanavan)
* Fix gh-issue #31: add/improve configure checks for default
CA bundle/path (Mike, @rcanavan)
Changes from beta1:
* Fixed recursive calls to the event loop dispatcher
Changes from beta2:
+ Improved configure checks for IDNA libraries (added
--with-http-libicu-dir, --with-http-libidnkit{,2}-dir,
--with-http-libidn2-dir)
* Fix bug #73055: crash in http\QueryString (Mike, @rc0r)
(CVE-2016-7398)
* Fix bug #73185: Buffer overflow in HTTP parse_hostinfo() (Mike, @rc0r)
(CVE-2016-7961)
* Fix HTTP/2 version parser for older libcurl versions (Mike)
* Fix gh-issue #52: Underscores in host names: libidn Failed to parse
IDN (Mike, @canavan)
Michael Wallner [Mon, 12 Dec 2016 07:36:14 +0000 (08:36 +0100)]
prepare 3.1.0
Michael Wallner [Mon, 12 Dec 2016 07:30:01 +0000 (08:30 +0100)]
ignore new headers in root
Michael Wallner [Mon, 12 Dec 2016 07:28:59 +0000 (08:28 +0100)]
typo