X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=CHANGELOG.md;h=37af2aad504c262da80ed45211ce39294567244b;hp=9e2d12dcf4dd92fa0c9c7b1e643f3881d2115860;hb=HEAD;hpb=b2cddc09fda9358c7c2bdfaf487196cb3ff34749 diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e2d12d..47ec2a3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,146 +1,88 @@ -# ChangeLog v3 - -## 3.1.0, 2016-12-12 - -+ 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) +# ChangeLog v4 + +## 4.2.5, 2024-02-05 + +* Fix incompatible pointer types (32-bit) (see gh issue #134) +* Fix glitch in CURL_VERSION_TLSAUTH_SRP autoconf probe (see gh issue #133) + +## 4.2.4, 2023-10-02 + +* Fix Error using ssl array in options : Could not set option tlsauthtype + (see gh issue #131) +* Fix arginfo wargnings of the internal curl client user handler +* Disable libidn support for v1.36-v1.38 due to broken locale detection + +## 4.2.3, 2022-06-10 + +* Fix http\Client::requeue() not updating response callback + +## 4.2.2, 2022-02-25 + +* Fixed gh-issue #123: Segfault with libcurl 7.81 + +## 4.2.1, 2021-09-13 + +* Fixed failing tests with PHP-8.1 (see gh issue #120) +* Fixed configure reliably finding the right libcurl features available +* Fixed cookie handling with libcurl 7.77+ and consistently across all + supported libcurl versions (follow-up to gh issue #116) + +## 4.2.0, 2021-08-30 + +* Fixed PHP-8.1 compatibility (see gh issues #114, #115 and #118) +* Fixed cookies failing with libcurl >= 7.77 (see gh issue #116) +* Fixed tests using $_ENV instead of getenv() to find executables in PATH (see gh issue #113) +* Added http\Env::reset(): resets internal HTTP request cache (see gh issue #90) + +## 4.1.0, 2021-04-21 + +* Added request options: + * http\Client\Curl::$abstract_unix_socket + * http\Client\Curl::$altsvc + * http\Client\Curl::$altsvc_ctrl + * http\Client\Curl::$aws_sigv4 + * http\Client\Curl::$doh_url + * http\Client\Curl::$dns_shuffle_addresses + * http\Client\Curl::$haproxy_protocol + * http\Client\Curl::$hsts + * http\Client\Curl::$hsts_ctrl + * http\Client\Curl::$http09_allowed + * http\Client\Curl::$maxage_conn + * http\Client\Curl::$pinned_publickey + * http\Client\Curl::$proxy_ssl + * http\Client\Curl::$socks5_auth + * http\Client\Curl::$tcp_fastopen + * http\Client\Curl::$tls13_ciphers + * http\Client\Curl::$xoauth2_bearer +* Added request option constants: + * http\Client\Curl\AUTH_AWS_SIGV4 + * http\Client\Curl\AUTH_BEARER + * http\Client\Curl\AUTH_NONE + * http\Client\Curl\HTTP_VERSION_2_PRIOR_KNOWLEDGE + * http\Client\Curl\HTTP_VERSION_3 + * http\Client\Curl\SSL_VERSION_MAX_* + * http\Client\Curl\SSL_VERSION_TLSv1_3 +* Added library version constants: + * http\Client\Curl\Versions\BROTLI + * http\Client\Curl\Versions\CAINFO + * http\Client\Curl\Versions\CAPATH + * http\Client\Curl\Versions\HYPER + * http\Client\Curl\Versions\ICONV + * http\Client\Curl\Versions\NGHTTP2 + * http\Client\Curl\Versions\QUIC + * http\Client\Curl\Versions\ZSTD + +## 4.0.0, 2021-01-13 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) - -## 3.1.0RC1, 2016-10-04 - -+ 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) +* Fixed configure on systems which do not provide icu-config +* Fixed gh-issue #89: Cookie handling cannot be disabled since v3.2.1 -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) - -## 3.1.0beta2, 2016-09-07 - -+ 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 - -## 3.1.0beta1, 2016-08-22 - -+ 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) - -## 3.0.1, 2016-03-09 - -* Fix php-bug #71719: Buffer overflow in HTTP url parsing functions (Mike, rc0r) -* Fix gh-issue #28: Possible null pointer dereference in php_http_url_mod() (rc0r) -* Fix gh-issue #21: Fix PHP7 config.w32 (Jan Ehrhardt) -* Fix gh-issue #20: setSslOptions notice with curl 7.43 (Mike, Vitaliy Demidov) - -## 3.0.0, 2016-01-19 - -PHP7 compatible release based on the 2.5.x series with the following backwards incompatible changes: -- removed http\Url::FROM_ENV from the default flags of the http\Url constructor, use http\Env\Url instead - -## 3.0.0RC1, 2015-12-07 - -PHP7 compatible release based on the 2.5.x series with the following backwards incompatible changes: -- removed http\Url::FROM_ENV from the default flags of the http\Url constructor, use http\Env\Url instead +## 4.0.0beta1, 2020-09-23 +* PHP 8 compatibility + - Drop ext-propro support: + PHP 8 removes the object get/set API from the ZendEngine, which renders + that extension dysfunctional. As a consequence, the header property of + http\Message and derived classes cannot be modified in place, and thus + by reference.