release v3.3.0
[m6w6/ext-http] / CHANGELOG.md
1 # ChangeLog v3
2
3 ## 3.2.4, 2021-01-13
4
5 * Fixed configure on systems which do not provide icu-config
6 * Fixed gh-issue #89: Cookie handling cannot be disabled since v3.2.1
7
8 ## 3.2.3, 2019-10-29
9
10 * Fixed Windows build (Jan Ehrhardt)
11
12 ## 3.2.2, 2019-10-24
13
14 * PHP-7.4 compatibility
15 * Fixed gh-issue #92: http\Message\Body::addForm() discards numeric names
16 * Fixed gh-issue #95: typo in http\Message::getResponseCode()'s error message
17
18 ## 3.2.1, 2019-06-07
19
20 * Fixed gh-issue #88: Unable to run test suite (Remi Collet)
21 * Fixed gh-issue #86: test failure with curl 7.64
22 * Fixed gh-issue #85: [-Wformat-extra-args] build warnings
23 * Fixed gh-issue #84: segfault and build failure since curl 7.62
24 * Fixed gh-issue #82: Test harness improvements (Chris Wright)
25 * Fixed gh-issue #64: compress and connecttimeout interfere with low_speed_limit (@rcanavan)
26 * Fixed http\QueryString::getGlobalInstance()
27 * Fixed missing 2nd reflection argument info of http\Client::notify()
28 * Fixed PHP-7.4 compatibility
29
30 ## 3.2.0, 2018-07-19
31
32 * PHP-7.2 compatibility
33 * Fixed gh-issue #73: build fails with libidn and libidn2
34 + Added brotli compression support
35 + Implemented gh-issue #58: Notify observers before any request is built
36
37 Changes from RC1:
38 * Fixed gh-issue #78: PHP-7.3 build crashes
39
40 ## 3.2.0RC1, 2018-04-09
41
42 * PHP-7.2 compatibility
43 * Fixed gh-issue #73: build fails with libidn and libidn2
44 + Added brotli compression support
45 + Implemented gh-issue #58: Notify observers before any request is built
46
47 ## 3.1.0, 2016-12-12
48
49 + Added http\Client\Curl\User interface for userland event loops
50 + Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and http\Url::STDFLAGS
51 + Added http\Client::setDebug(callable $debug)
52 + Added http\Client\Curl\FEATURES constants and namespace
53 + Added http\Client\Curl\VERSIONS constants and namespace
54 + Added share_cookies and share_ssl (libcurl >= 7.23.0) options to http\Client::configure()
55 + http\Client uses curl_share handles to properly share cookies and SSL/TLS sessions between requests
56 + Improved configure checks for default CA bundles
57 + Improved negotiation precision
58 * 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.
59 * Fix gh-issue #50: http\Client::dequeue() within http\Client::setDebug() causes segfault (Mike, Maik Wagner)
60 * Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value() (Mike, @rc0r)
61 * Fix gh-issue #45: HTTP/2 response message parsing broken with libcurl >= 7.49.1 (Mike)
62 * Fix gh-issue #43: Joining query with empty original variable in query (Mike, Sander Backus)
63 * Fix gh-issue #42: fatal error when using punycode in URLs (Mike, Sebastian Thielen)
64 * Fix gh-issue #41: Use curl_version_info_data.features when initializing options (Mike)
65 * Fix gh-issue #40: determinde the SSL backend used by curl at runtime (Mike, @rcanavan)
66 * Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option proxy_service_name (Mike, @rcanavan)
67 * Fix gh-issue #38: Persistent curl handles: error code not properly reset (Mike, @afflerbach)
68 * Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is used (Mike, @rcanavan, @afflerbach)
69 * Fix gh-issue #34: allow setting multiple headers with the same name (Mike, @rcanavan)
70 * Fix gh-issue #33: allow setting prodyhost request option to NULL (Mike, @rcanavan)
71 * Fix gh-issue #31: add/improve configure checks for default CA bundle/path (Mike, @rcanavan)
72
73 Changes from beta1:
74 * Fixed recursive calls to the event loop dispatcher
75
76 Changes from beta2:
77 + Improved configure checks for IDNA libraries (added --with-http-libicu-dir, --with-http-libidnkit{,2}-dir, --with-http-libidn2-dir)
78 * Fix bug #73055: crash in http\QueryString (Mike, @rc0r) (CVE-2016-7398)
79 * Fix bug #73185: Buffer overflow in HTTP parse_hostinfo() (Mike, @rc0r) (CVE-2016-7961)
80 * Fix HTTP/2 version parser for older libcurl versions (Mike)
81 * Fix gh-issue #52: Underscores in host names: libidn Failed to parse IDN (Mike, @canavan)
82
83 ## 3.1.0RC1, 2016-10-04
84
85 + Added http\Client\Curl\User interface for userland event loops
86 + Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and http\Url::STDFLAGS
87 + Added http\Client::setDebug(callable $debug)
88 + Added http\Client\Curl\FEATURES constants and namespace
89 + Added http\Client\Curl\VERSIONS constants and namespace
90 + Added share_cookies and share_ssl (libcurl >= 7.23.0) options to http\Client::configure()
91 + http\Client uses curl_share handles to properly share cookies and SSL/TLS sessions between requests
92 + Improved configure checks for default CA bundles
93 + Improved negotiation precision
94 * 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.
95 * Fix gh-issue #50: http\Client::dequeue() within http\Client::setDebug() causes segfault (Mike, Maik Wagner)
96 * Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value() (Mike, @rc0r)
97 * Fix gh-issue #45: HTTP/2 response message parsing broken with libcurl >= 7.49.1 (Mike)
98 * Fix gh-issue #43: Joining query with empty original variable in query (Mike, Sander Backus)
99 * Fix gh-issue #42: fatal error when using punycode in URLs (Mike, Sebastian Thielen)
100 * Fix gh-issue #41: Use curl_version_info_data.features when initializing options (Mike)
101 * Fix gh-issue #40: determinde the SSL backend used by curl at runtime (Mike, @rcanavan)
102 * Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option proxy_service_name (Mike, @rcanavan)
103 * Fix gh-issue #38: Persistent curl handles: error code not properly reset (Mike, @afflerbach)
104 * Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is used (Mike, @rcanavan, @afflerbach)
105 * Fix gh-issue #34: allow setting multiple headers with the same name (Mike, @rcanavan)
106 * Fix gh-issue #33: allow setting prodyhost request option to NULL (Mike, @rcanavan)
107 * Fix gh-issue #31: add/improve configure checks for default CA bundle/path (Mike, @rcanavan)
108
109 Changes from beta1:
110 * Fixed recursive calls to the event loop dispatcher
111
112 Changes from beta2:
113 + Improved configure checks for IDNA libraries (added --with-http-libicu-dir, --with-http-libidnkit{,2}-dir, --with-http-libidn2-dir)
114 * Fix bug #73055: crash in http\QueryString (Mike, @rc0r) (CVE-2016-7398)
115 * Fix bug #73185: Buffer overflow in HTTP parse_hostinfo() (Mike, @rc0r) (CVE-2016-7961)
116 * Fix HTTP/2 version parser for older libcurl versions (Mike)
117 * Fix gh-issue #52: Underscores in host names: libidn Failed to parse IDN (Mike, @canavan)
118
119 ## 3.1.0beta2, 2016-09-07
120
121 + Added http\Client\Curl\User interface for userland event loops
122 + Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and http\Url::STDFLAGS
123 + Added http\Client::setDebug(callable $debug)
124 + Added http\Client\Curl\FEATURES constants and namespace
125 + Added http\Client\Curl\VERSIONS constants and namespace
126 + Added share_cookies and share_ssl (libcurl >= 7.23.0) options to http\Client::configure()
127 + http\Client uses curl_share handles to properly share cookies and SSL/TLS sessions between requests
128 + Improved configure checks for default CA bundles
129 + Improved negotiation precision
130 * 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.
131 * Fix gh-issue #50: http\Client::dequeue() within http\Client::setDebug() causes segfault (Mike, Maik Wagner)
132 * Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value() (Mike, @rc0r)
133 * Fix gh-issue #45: HTTP/2 response message parsing broken with libcurl >= 7.49.1 (Mike)
134 * Fix gh-issue #43: Joining query with empty original variable in query (Mike, Sander Backus)
135 * Fix gh-issue #42: fatal error when using punycode in URLs (Mike, Sebastian Thielen)
136 * Fix gh-issue #41: Use curl_version_info_data.features when initializing options (Mike)
137 * Fix gh-issue #40: determinde the SSL backend used by curl at runtime (Mike, @rcanavan)
138 * Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option proxy_service_name (Mike, @rcanavan)
139 * Fix gh-issue #38: Persistent curl handles: error code not properly reset (Mike, @afflerbach)
140 * Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is used (Mike, @rcanavan, @afflerbach)
141 * Fix gh-issue #34: allow setting multiple headers with the same name (Mike, @rcanavan)
142 * Fix gh-issue #33: allow setting prodyhost request option to NULL (Mike, @rcanavan)
143 * Fix gh-issue #31: add/improve configure checks for default CA bundle/path (Mike, @rcanavan)
144
145 Changes from beta1:
146 * Fixed recursive calls to the event loop dispatcher
147
148 ## 3.1.0beta1, 2016-08-22
149
150 + Added http\Client\Curl\User interface for userland event loops
151 + Added http\Url::IGNORE_ERRORS, http\Url::SILENT_ERRORS and http\Url::STDFLAGS
152 + Added http\Client::setDebug(callable $debug)
153 + Added http\Client\Curl\FEATURES constants and namespace
154 + Added http\Client\Curl\VERSIONS constants and namespace
155 + Added share_cookies and share_ssl (libcurl >= 7.23.0) options to http\Client::configure()
156 + http\Client uses curl_share handles to properly share cookies and SSL/TLS sessions between requests
157 + Improved configure checks for default CA bundles
158 + Improved negotiation precision
159 * 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.
160 * Fix gh-issue #50: http\Client::dequeue() within http\Client::setDebug() causes segfault (Mike, Maik Wagner)
161 * Fix gh-issue #47: http\Url: Null pointer deref in sanitize_value() (Mike, @rc0r)
162 * Fix gh-issue #45: HTTP/2 response message parsing broken with libcurl >= 7.49.1 (Mike)
163 * Fix gh-issue #43: Joining query with empty original variable in query (Mike, Sander Backus)
164 * Fix gh-issue #42: fatal error when using punycode in URLs (Mike, Sebastian Thielen)
165 * Fix gh-issue #41: Use curl_version_info_data.features when initializing options (Mike)
166 * Fix gh-issue #40: determinde the SSL backend used by curl at runtime (Mike, @rcanavan)
167 * Fix gh-issue #39: Notice: http\Client::enqueue(): Could not set option proxy_service_name (Mike, @rcanavan)
168 * Fix gh-issue #38: Persistent curl handles: error code not properly reset (Mike, @afflerbach)
169 * Fix gh-issue #36: Unexpected cookies sent if persistent_handle_id is used (Mike, @rcanavan, @afflerbach)
170 * Fix gh-issue #34: allow setting multiple headers with the same name (Mike, @rcanavan)
171 * Fix gh-issue #33: allow setting prodyhost request option to NULL (Mike, @rcanavan)
172 * Fix gh-issue #31: add/improve configure checks for default CA bundle/path (Mike, @rcanavan)
173
174 ## 3.0.1, 2016-03-09
175
176 * Fix php-bug #71719: Buffer overflow in HTTP url parsing functions (Mike, rc0r)
177 * Fix gh-issue #28: Possible null pointer dereference in php_http_url_mod() (rc0r)
178 * Fix gh-issue #21: Fix PHP7 config.w32 (Jan Ehrhardt)
179 * Fix gh-issue #20: setSslOptions notice with curl 7.43 (Mike, Vitaliy Demidov)
180
181 ## 3.0.0, 2016-01-19
182
183 PHP7 compatible release based on the 2.5.x series with the following backwards incompatible changes:
184 - removed http\Url::FROM_ENV from the default flags of the http\Url constructor, use http\Env\Url instead
185
186 ## 3.0.0RC1, 2015-12-07
187
188 PHP7 compatible release based on the 2.5.x series with the following backwards incompatible changes:
189 - removed http\Url::FROM_ENV from the default flags of the http\Url constructor, use http\Env\Url instead