|
1 | 1 | PHP NEWS
|
2 | 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
3 |
| -?? ??? ????, PHP 8.0.0rc2 |
4 |
| - |
5 |
| -- Curl: |
6 |
| - . Fixed bug #80121 (Null pointer deref if CurlHandle directly instantiated). |
7 |
| - (Nikita) |
8 |
| - |
9 |
| -- Opcache: |
10 |
| - . Fixed bug #80184 (Complex expression in while / if statements resolves to |
11 |
| - false incorrectly). (Nikita) |
12 |
| - |
13 |
| -- Reflection: |
14 |
| - . Fixed bug #80190 (ReflectionMethod::getReturnType() does not handle static |
15 |
| - as part of union type). (Nikita) |
16 |
| - |
17 |
| -- SPL: |
18 |
| - . Fixed bug #65387 (Circular references in SPL iterators are not garbage |
19 |
| - collected). (Nikita) |
20 |
| - |
21 |
| -- Standard: |
22 |
| - . Fixed bug #64060 (lstat_stat_variation7.phpt fails on certain file systems). |
23 |
| - (M. Voelker, cmb) |
24 |
| - |
25 |
| -01 Oct 2020, PHP 8.0.0rc1 |
26 |
| - |
27 |
| -- CLI: |
28 |
| - . Allow debug server binding to an ephemeral port via `-S localhost:0`. (Sara) |
29 |
| - |
30 |
| -- Core: |
31 |
| - . Fixed bug #80109 (Cannot skip arguments when extended debug is enabled). |
32 |
| - (Nikita) |
33 |
| - |
34 |
| -- ODBC: |
35 |
| - . Fixed bug #22986 (odbc_connect() may reuse persistent connection). (cmb) |
36 |
| - |
37 |
| -- PDO_Firebird: |
38 |
| - . Fixed bug #64937 (Firebird PDO preprocessing sql). (Simonov Denis) |
39 |
| - |
40 |
| -- SPL: |
41 |
| - . SplFixedArray is now IteratorAggregate rather than Iterator. (alexdowad) |
42 |
| - |
43 |
| -- Zlib: |
44 |
| - . Fixed bug #78792 (zlib.output_compression disabled by Content-Type: image/). |
45 |
| - (cmb) |
46 |
| - |
47 |
| -17 Sep 2020, PHP 8.0.0beta4 |
48 |
| - |
49 |
| -- Core: |
50 |
| - . Implement #[Attr] Attribute syntax as per final vote in RFC |
51 |
| - https://wiki.php.net/rfc/shorter_attribute_syntax_change |
52 |
| - . Fixed bug #80045 (memleak after two set_exception_handler calls with |
53 |
| - __call). (Nikita) |
54 |
| - . Fixed bug #80096 (Segmentation fault with named arguments in nested call). |
55 |
| - (Nikita) |
56 |
| - . Fixed faulty generator cleanup with yield from. (Bob) |
57 |
| - |
58 |
| -- Date: |
59 |
| - . Fixed bug #80057 (DateTimeImmutable::createFromFormat() does not populate |
60 |
| - time). (Derick) |
61 |
| - |
62 |
| -- FFI: |
63 |
| - . Added FFI\CType::getName() method. (chopins) |
64 |
| - |
65 |
| -03 Sep 2020, PHP 8.0.0beta3 |
66 |
| - |
67 |
| -- Calendar: |
68 |
| - . Fixed bug #80007 (Potential type confusion in unixtojd() parameter parsing). |
69 |
| - (Andy Postnikov) |
70 |
| - |
71 |
| -- COM: |
72 |
| - . Fixed bug #55847 (DOTNET .NET 4.0 GAC new location). (cmb) |
73 |
| - |
74 |
| -- DOM: |
75 |
| - . Fixed bug #79968 (DOMChildNode API crash on unattached nodes). (Benjamin) |
76 |
| - |
77 |
| -- Fileinfo: |
78 |
| - . Upgrade to libmagic 5.39. (Anatol) |
79 |
| - |
80 |
| -- Opcache: |
81 |
| - . Fixed bug #80030 (Optimizer segfault with isset on static property with |
82 |
| - undef dynamic class name). (Nikita) |
83 |
| - |
84 |
| -20 Aug 2020, PHP 8.0.0beta2 |
85 |
| - |
86 |
| -- SPL: |
87 |
| - . Fixed bug #79987 (Memory leak in SplFileInfo because of missing |
88 |
| - zend_restore_error_handling()). (Dmitry) |
89 |
| - |
90 |
| -06 Aug 2020, PHP 8.0.0beta1 |
91 |
| - |
92 |
| -- Core: |
93 |
| - . Fixed bug #78236 (convert error on receiving variables when duplicate [). |
94 |
| - (cmb) |
95 |
| - . Fixed bug #79108 (Referencing argument in a function makes it a reference |
96 |
| - in the stack trace). (Nikita) |
97 |
| - . Fixed bug #79897 (Promoted constructor params with attribs cause crash). |
98 |
| - (Deus Kane) |
99 |
| - . Fixed bug #79946 (Build fails due to undeclared UINT32_C). (Nikita) |
100 |
| - . Fixed bug #77561 (Shebang line not stripped for non-primary script). |
101 |
| - (Nikita) |
102 |
| - . Fixed bug #79948 (Exit in auto-prepended file does not abort PHP execution). |
103 |
| - (Nikita) |
104 |
| - . Fixed bug #65275 (Calling exit() in a shutdown function does not change the |
105 |
| - exit value in CLI). (Nikita) |
106 |
| - . Fixed bug #62294 (register_shutdown_function() does not correctly handle |
107 |
| - exit code). (Nikita) |
108 |
| - . Fixed bug #79927 (Generator doesn't throw exception after multiple yield |
109 |
| - from iterable). (Nikita) |
110 |
| - . Fixed bug #78770 (Incorrect callability check inside internal methods). |
111 |
| - (Nikita) |
112 |
| - |
113 |
| -- Date: |
114 |
| - . Fixed bug #60302 (DateTime::createFromFormat should new static(), not new |
115 |
| - self()). (Derick) |
116 |
| - . Implemented FR #79903 (datetime: new format "p", same as "P" but returning |
117 |
| - "Z" for UTC). (gharlan) |
118 |
| - |
119 |
| -- JIT: |
120 |
| - . Fixed bug #79864 (JIT segfault in Symfony OptionsResolver). (Dmitry) |
121 |
| - . Fixed bug #79888 (Incorrect execution with JIT enabled). (Dmitry) |
122 |
| - |
123 |
| -- LDAP: |
124 |
| - . Fixed memory leaks. (ptomulik) |
125 |
| - |
126 |
| -- OCI8: |
127 |
| - . Modernized oci_register_taf_callback() callable argument parsing |
128 |
| - implementation. (girgias) |
129 |
| - |
130 |
| -23 Jul 2020, PHP 8.0.0alpha3 |
131 |
| - |
132 |
| -- Core: |
133 |
| - . Fixed bug #79790 ("Illegal offset type" exception during AST evaluation |
134 |
| - not handled properly). (Nikita) |
135 |
| - . Fixed bug #79791 (Assertion failure when unsetting variable during binary |
136 |
| - op). (Nikita) |
137 |
| - . Fixed bug #79841 (Syntax error in configure / unescaped "[]" in php.m4). |
138 |
| - (Nikita) |
139 |
| - . Fixed bug #79828 (Segfault when trying to access non-existing variable). |
140 |
| - (Nikita) |
141 |
| - . Fixed bug #79852 (count(DOMNodeList) doesn't match |
142 |
| - count(IteratorIterator(DOMNodeList))). (Nikita) |
143 |
| - . Fixed bug #79867 (Promoted untyped properties should get null default |
144 |
| - value). (Nikita) |
145 |
| - |
146 |
| -- Standard: |
147 |
| - . Fixed bug #79868 (Sorting with array_unique gives unwanted result). (Nikita) |
148 |
| - |
149 |
| -09 Jul 2020, PHP 8.0.0alpha2 |
150 |
| - |
151 |
| -- FFI: |
152 |
| - . Fixed bug #79749 (Converting FFI instances to bool fails). (cmb) |
153 |
| - |
154 |
| -- JIT: |
155 |
| - . Fixed bug #79743 (Fatal error when assigning to array property |
156 |
| - with JIT enabled). (Laruence) |
157 |
| - |
158 |
| -- PCRE: |
159 |
| - . Updated to PCRE2 10.35. (cmb) |
160 |
| - |
161 |
| -25 Jun 2020, PHP 8.0.0alpha1 |
162 |
| - |
163 |
| -- Core: |
164 |
| - . Removed the pdo_odbc.db2_instance_name php.ini directive. (Kalle) |
165 |
| - . Fixed bug #77619 (Wrong reflection on MultipleIterator::__construct). |
166 |
| - (Fabien Villepinte) |
167 |
| - . Fixed bug #65274 (Enhance undefined class constant error with class name). |
168 |
| - (Nikita) |
169 |
| - . Fixed bug #49555 (Fatal error "Function must be a string" message should be |
170 |
| - renamed). (Nikita) |
171 |
| - . Fixed bug #70839 (Converting optional argument to variadic forbidden by LSP |
172 |
| - checks). (Nikita) |
173 |
| - . Fixed bug #69084 (Unclear error message when not implementing a renamed |
174 |
| - abstract trait function). (Nikita) |
175 |
| - . Fixed bug #62609 (Allow implementing Traversable on abstract classes). |
176 |
| - (Nikita) |
177 |
| - . Fixed bug #79462 (method_exists and property_exists incoherent behavior). |
178 |
| - (cmb) |
179 |
| - . Fixed bug #79368 ("Unexpected end of file" is not an acceptable error |
180 |
| - message). (Alex Dowad) |
181 |
| - . Fixed bug #36365 (scandir duplicates file name at every 65535th file). |
182 |
| - (cmb) |
183 |
| - . Use SSE2 instructions do locale independent strtolower. (Laruence) |
184 |
| - . Fixed bug #79521 (Check __set_state structure). (carusogabriel) |
185 |
| - . Fixed bug #79467 (data:// wrappers are writable). (cmb) |
186 |
| - . Implemented FR #47074 (phpinfo() reports "On" as 1 for the some |
187 |
| - extensions). (cmb) |
188 |
| - . Implemented FR #72089 (require() throws fatal error instead of exception). |
189 |
| - (Nikita) |
190 |
| - . Fixed bug #77966 (Cannot alias a method named "namespace"). (Nikita) |
191 |
| - |
192 |
| -- BZ2: |
193 |
| - . Fixed bug #71263 (fread() does not report bzip2.decompress errors). (cmb) |
194 |
| - |
195 |
| -- CURL: |
196 |
| - . Bumped required libcurl version to 7.29.0. (cmb) |
197 |
| - |
198 |
| -- Date: |
199 |
| - . Fixed bug #65547 (Default value for sunrise/sunset zenith still wrong). |
200 |
| - (cmb) |
201 |
| - . Fixed bug #69044 (discrepancy between time and microtime). (krakjoe) |
202 |
| - |
203 |
| -- DOM: |
204 |
| - . Add property DOMXPath::$registerNodeNamespaces and constructor argument |
205 |
| - that allow global flag to configure query() or evaluate() calls. |
206 |
| - |
207 |
| -- Enchant: |
208 |
| - . Add LIBENCHANT_VERSION macro. |
209 |
| - . Deprecate enchant_broker_set_dict_path, enchant_broker_get_dict_path, |
210 |
| - enchant_dict_add_to_personal and enchant_dict_is_in_session. |
211 |
| - . Add enchant_dict_add and enchant_dict_is_added functions. |
212 |
| - . Use libenchant-2 when available. |
213 |
| - |
214 |
| -- FPM: |
215 |
| - . Fixed bug #64865 (Search for .user.ini files from script dir up to |
216 |
| - CONTEXT_DOCUMENT_ROOT). (Will Bender) |
217 |
| - . Add pm.status_listen option. (Jakub Zelenka) |
218 |
| - |
219 |
| -- GD: |
220 |
| - . Fixed bug #55005 (imagepolygon num_points requirement). (cmb) |
221 |
| - . Replaced gd resources with objects. (Mark Randall) |
222 |
| - . Made the $num_points parameter of php_imagepolygon optional. (cmb) |
223 |
| - . Removed deprecated image2wbmp(). (cmb) |
224 |
| - . Removed deprecated png2wbmp() and jpeg2wbmp(). (cmb) |
225 |
| - . Added imagegetinterpolation(). (cmb) |
226 |
| - |
227 |
| -- Iconv: |
228 |
| - . Dropped support for iconv without proper errno setting. (cmb) |
229 |
| - |
230 |
| -- Intl: |
231 |
| - . Removed deprecated INTL_IDNA_VARIANT_2003. (cmb) |
232 |
| - |
233 |
| -- JIT: |
234 |
| - . Fixed bug #79582 (Crash seen when opcache.jit=1235 and |
235 |
| - opcache.jit_debug=2). (Laruence) |
236 |
| - . Fixed bug #77857 (Wrong result if executed with JIT). (Laruence) |
237 |
| - . Fixed bug #79255 (PHP cannot be compiled with enable JIT). |
238 |
| - (Laruence, Dmitry) |
239 |
| - |
240 |
| -- JSON: |
241 |
| - . The JSON extension is now an integral part of PHP and cannot be disabled |
242 |
| - as per RFC: https://wiki.php.net/rfc/always_enable_json (tandre) |
243 |
| - |
244 |
| -- LDAP: |
245 |
| - . Removed deprecated ldap_sort. (mcmic) |
246 |
| - |
247 |
| -- MBString: |
248 |
| - . Fixed bug #76999 (mb_regex_set_options() return current options). (cmb) |
249 |
| - . Removed the unused $is_hex parameter from mb_decode_numericentity(). (cmb) |
250 |
| - |
251 |
| -- MySQLi: |
252 |
| - . Fixed bug #76809 (SSL settings aren't respected when persistent connections |
253 |
| - are used). (fabiomsouto) |
254 |
| - |
255 |
| -- mysqlnd: |
256 |
| - . Fixed #60594 (mysqlnd exposes 160 lines of stats in phpinfo). (PeeHaa) |
257 |
| - |
258 |
| -- OCI8: |
259 |
| - . Deprecated old OCI8 function aliases. (Jens de Nies) |
260 |
| - . Removed obsolete no-op function oci_internal_debug(). (Jens de Nies) |
261 |
| - |
262 |
| -- OpCache: |
263 |
| - . Fixed bug #78654 (Incorrectly computed opcache checksum on files with |
264 |
| - non-ascii characters). (mhagstrand) |
265 |
| - . Fixed bug #76535 (Opcache does not replay compile-time warnings). (Nikita) |
266 |
| - . Fixed bug #79665 (ini_get() and opcache_get_configuration() inconsistency). |
267 |
| - (cmb) |
268 |
| - |
269 |
| -- OpenSSL: |
270 |
| - . Added Cryptographic Message Syntax (CMS) support. (Eliot Lear) |
271 |
| - |
272 |
| -- PCRE: |
273 |
| - . Don't ignore invalid escape sequences. (sjon) |
274 |
| - |
275 |
| -- PGSQL: |
276 |
| - . Bumped required libpq version to 9.1. (cmb) |
277 |
| - |
278 |
| -- PDO: |
279 |
| - . Changed default PDO error mode to exceptions. (AllenJB) |
280 |
| - . Fixed bug #77849 (Disable cloning of PDO handle/connection objects). |
281 |
| - (camporter) |
282 |
| - |
283 |
| -- PDO_OCI: |
284 |
| - . Added support for setting and getting the oracle OCI 18c call timeout. |
285 |
| - (camporter) |
286 |
| - |
287 |
| -- PDO_PGSQL: |
288 |
| - . Bumped required libpq version to 9.1. (cmb) |
289 |
| - |
290 |
| -- phpdbg: |
291 |
| - . Fixed bug #76596 (phpdbg support for display_errors=stderr). (kabel) |
292 |
| - . Fixed bug #76801 (too many open files). (alekitto) |
293 |
| - . Fixed bug #77800 (phpdbg segfaults on listing some conditional breakpoints). |
294 |
| - (krakjoe) |
295 |
| - . Fixed bug #77805 (phpdbg build fails when readline is shared). (krakjoe) |
296 |
| - |
297 |
| -- Reflection: |
298 |
| - . Fixed bug #78697 (ReflectionClass::implementsInterface - inaccurate error |
299 |
| - message with traits). (villfa) |
300 |
| - . Implement ReflectionProperty::hasDefaultValue and |
301 |
| - Reflection::getDefaultValue (beberlei) |
302 |
| - . Fixed bug #64592 (ReflectionClass::getMethods() returns methods out of |
303 |
| - scope). (Nikita) |
304 |
| - . Fixed bug #77325 (ReflectionClassConstant::$class returns wrong class when |
305 |
| - extending). (Nikita) |
306 |
| - . Fixed bug #69180 (Reflection does not honor trait conflict resolution / |
307 |
| - method aliasing). (Nikita) |
308 |
| - . Fixed bug #74939 (Nested traits' aliased methods are lowercased). (Nikita) |
309 |
| - . Implement #79628 (Add $filter parameter for ReflectionClass::getConstants |
310 |
| - and ReflectionClass::getReflectionConstants) (carusogabriel) |
311 |
| - |
312 |
| -- Session: |
313 |
| - . Fixed bug #78624 (session_gc return value for user defined session |
314 |
| - handlers). (bshaffer) |
315 |
| - . Fixed bug #73529 (session_decode() silently fails on wrong input). (cmb) |
316 |
| - |
317 |
| -- Shmop: |
318 |
| - . Converted shmop resources to objects. (cmb) |
319 |
| - |
320 |
| -- SimpleXML: |
321 |
| - . Fixed bug #75245 (Don't set content of elements with only whitespaces). |
322 |
| - (eriklundin) |
323 |
| - . Fixed bug #63575 (Root elements are not properly cloned). (cmb) |
324 |
| - |
325 |
| -- sodium: |
326 |
| - . Fixed bug #77646 (sign_detached() strings not terminated). (Frank) |
327 |
| - |
328 |
| -- SQLite3: |
329 |
| - . Added SQLite3::setAuthorizer() and respective class constants. (bohwaz) |
330 |
| - |
331 |
| -- SPL: |
332 |
| - . Fixed bug #71236 (Second call of spl_autoload_register() does nothing if it |
333 |
| - has no arguments). (Nikita) |
334 |
| - . Fixed bug #65006 (spl_autoload_register fails with multiple callables using |
335 |
| - self, same method). (Nikita) |
336 |
| - |
337 |
| -- Standard: |
338 |
| - . Implemented FR #78638 (__PHP_Incomplete_Class should be final). (Laruence) |
339 |
| - . Fixed bug #77204 (getimagesize(): Read error! should mention file path). |
340 |
| - (peter279k) |
341 |
| - . Fixed bug #76859 (stream_get_line skips data if used with data-generating |
342 |
| - filter). (kkopachev) |
343 |
| - . Fixed bug #78385 (parse_url() does not include 'query' when question mark |
344 |
| - is the last char). (Islam Israfilov) |
345 |
| - . Fixed bug #75902 (str_replace should warn when misused with nested arrays). |
346 |
| - (Nikita) |
347 |
| - . Fixed bug #47983 (mixed LF and CRLF line endings in mail()). (cmb) |
348 |
| - . Made quoting of cmd execution functions consistent. (cmb) |
349 |
| - |
350 |
| -- tidy: |
351 |
| - . Removed the unused $use_include_path parameter from tidy_repair_string(). |
352 |
| - (cmb) |
353 |
| - |
354 |
| -- XML: |
355 |
| - . Fixed bug #76874 (xml_parser_free() should never leak memory). (Nikita) |
356 |
| - |
357 |
| -- XMLWriter: |
358 |
| - . Changed functions to accept/return XMLWriter objects instead of resources. |
359 |
| - (cmb) |
360 |
| - . Implemented FR #79344 (xmlwriter_write_attribute_ns: $prefix should be |
361 |
| - nullable). (cmb) |
362 |
| - |
363 |
| -- Zip: |
364 |
| - . Fixed bug #72374 (remove_path strips first char of filename). (tyage, Remi) |
365 |
| - . Add ZipArchive::setMtimeName and ZipArchive::setMtimeIndex methods. (Remi) |
366 |
| - . Add ZipArchive::setProgressCallback method (since libzip 1.3.0). (Remi) |
367 |
| - . Add ZipArchive::setCancelCallback method (since libzip 1.6.0). (Remi) |
368 |
| - . Add optional "flags" parameter to ZipArchive::addEmptyDir, addFile and |
369 |
| - addFromString methods. (Remi) |
370 |
| - . Add "flags" options to ZipArchive::addGlob and addPattern methods |
371 |
| - keeping previous behavior having FL_OVERWRITE by default. (Remi) |
372 |
| - . Add ZipArchive::replaceFile() method. (Remi) |
373 |
| - . Add lastId property to ZipArchive. (Remi) |
374 |
| - . ZipArchive::status and ZipArchive::statusSys properties and |
375 |
| - ZipArchive::getStatusString() method stay valid after the archive |
376 |
| - is closed. (Remi) |
377 |
| - . Fixed bug #50678 (files extracted by ZipArchive class lost their |
378 |
| - original modified time). (Remi) |
379 |
| - . Implemented FR #77960 (add compression / encryption options for |
380 |
| - ZipArchive::addGlob and ZipArchive::addPattern). (Remi) |
381 |
| - . Add ZipArchive::EM_UNKNOWN and ZipArchive::EM_TRAD_PKWARE constants. (Remi) |
382 |
| - . Add ZipArchive::isCompressionMethodSupported() and |
383 |
| - ZipArchive::isEncryptionMethodSupported() method (libzip 1.7.0). (Remi) |
384 |
| - |
385 |
| -- Zlib: |
386 |
| - . Fixed bug #71417 (fread() does not report zlib.inflate errors). (cmb) |
| 3 | +?? ??? ????, PHP 8.1.0alpha1 |
387 | 4 |
|
388 | 5 | <<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
|
0 commit comments