From: Christoph M. Becker Date: Tue, 8 Dec 2020 11:24:09 +0000 (+0100) Subject: Merge branch 'PHP-7.4' into PHP-8.0 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fb4bc0f9e589a862d0fb1c05467bf589f86cee96;p=php Merge branch 'PHP-7.4' into PHP-8.0 * PHP-7.4: Fix #48725: Support for flushing in zlib stream --- fb4bc0f9e589a862d0fb1c05467bf589f86cee96 diff --cc NEWS index a776b3faf4,9560df1c93..3d9fcb4a5b --- a/NEWS +++ b/NEWS @@@ -58,164 -46,84 +58,167 @@@ PH - Tidy: . Fixed bug #77594 (ob_tidyhandler is never reset). (cmb) +- Tokenizer: + . Fixed bug #80462 (Nullsafe operator tokenize with TOKEN_PARSE flag fails). + (Nikita) + +- XML: + . XmlParser opaque object renamed to XMLParser for consistency with other XML objects. (girgias) + + - Zlib: + . Fixed #48725 (Support for flushing in zlib stream). (cmb) + -26 Nov 2020, PHP 7.4.13 +26 Nov 2020, PHP 8.0.0 + +- BZ2: + . Fixed bug #71263 (fread() does not report bzip2.decompress errors). (cmb) + +- CLI: + . Allow debug server binding to an ephemeral port via `-S localhost:0`. (Sara) + +- COM: + . Fixed bug #55847 (DOTNET .NET 4.0 GAC new location). (cmb) + . Fixed bug #62474 (com_event_sink crashes on certain arguments). (cmb) + +- Calendar: + . Fixed bug #80007 (Potential type confusion in unixtojd() parameter parsing). + (Andy Postnikov) - Core: - . Fixed bug #80280 (ADD_EXTENSION_DEP() fails for ext/standard and ext/date). + . Fixed bug #36365 (scandir duplicates file name at every 65535th file). + (cmb) + . Fixed bug #49555 (Fatal error "Function must be a string" message should be + renamed). (Nikita) + . Fixed bug #62294 (register_shutdown_function() does not correctly handle + exit code). (Nikita) + . Fixed bug #62609 (Allow implementing Traversable on abstract classes). + (Nikita) + . Fixed bug #65274 (Enhance undefined class constant error with class name). + (Nikita) + . Fixed bug #65275 (Calling exit() in a shutdown function does not change the + exit value in CLI). (Nikita) + . Fixed bug #69084 (Unclear error message when not implementing a renamed + abstract trait function). (Nikita) + . Fixed bug #70839 (Converting optional argument to variadic forbidden by LSP + checks). (Nikita) + . Fixed bug #74558 (Can't rebind closure returned by Closure::fromCallable()). (cmb) + . Fixed bug #77561 (Shebang line not stripped for non-primary script). + (Nikita) + . Fixed bug #77619 (Wrong reflection on MultipleIterator::__construct). + (Fabien Villepinte) + . Fixed bug #77966 (Cannot alias a method named "namespace"). (Nikita) + . Fixed bug #78236 (convert error on receiving variables when duplicate [). + (cmb) + . Fixed bug #78770 (Incorrect callability check inside internal methods). + (Nikita) + . Fixed bug #79108 (Referencing argument in a function makes it a reference + in the stack trace). (Nikita) + . Fixed bug #79368 ("Unexpected end of file" is not an acceptable error + message). (Alex Dowad) + . Fixed bug #79462 (method_exists and property_exists incoherent behavior). + (cmb) + . Fixed bug #79467 (data:// wrappers are writable). (cmb) + . Fixed bug #79521 (Check __set_state structure). (carusogabriel) + . Fixed bug #79790 ("Illegal offset type" exception during AST evaluation + not handled properly). (Nikita) + . Fixed bug #79791 (Assertion failure when unsetting variable during binary + op). (Nikita) + . Fixed bug #79828 (Segfault when trying to access non-existing variable). + (Nikita) + . Fixed bug #79841 (Syntax error in configure / unescaped "[]" in php.m4). + (Nikita) + . Fixed bug #79852 (count(DOMNodeList) doesn't match + count(IteratorIterator(DOMNodeList))). (Nikita) + . Fixed bug #79867 (Promoted untyped properties should get null default + value). (Nikita) + . Fixed bug #79897 (Promoted constructor params with attribs cause crash). + (Deus Kane) + . Fixed bug #79927 (Generator doesn't throw exception after multiple yield + from iterable). (Nikita) + . Fixed bug #79946 (Build fails due to undeclared UINT32_C). (Nikita) + . Fixed bug #79948 (Exit in auto-prepended file does not abort PHP execution). + (Nikita) + . Fixed bug #80045 (memleak after two set_exception_handler calls with + __call). (Nikita) + . Fixed bug #80096 (Segmentation fault with named arguments in nested call). + (Nikita) + . Fixed bug #80109 (Cannot skip arguments when extended debug is enabled). + (Nikita) + . Fixed bug #80225 (broken namespace usage in eval code). (Nikita) . Fixed bug #80258 (Windows Deduplication Enabled, randon permission errors). (cmb) + . Fixed bug #80280 (ADD_EXTENSION_DEP() fails for ext/standard and ext/date). + (cmb) + . Fixed bug #80334 (assert() vs named parameters - confusing error). (Nikita) + . Fixed bug #80055 (Abstract trait methods returning "self" cannot be + fulfilled by traits). (Nikita) + . Fixed faulty generator cleanup with yield from. (Bob) + . Implement #[Attr] Attribute syntax as per final vote in RFC + https://wiki.php.net/rfc/shorter_attribute_syntax_change + . Implemented FR #47074 (phpinfo() reports "On" as 1 for the some + extensions). (cmb) + . Implemented FR #72089 (require() throws fatal error instead of exception). + (Nikita) + . Removed the pdo_odbc.db2_instance_name php.ini directive. (Kalle) + . Use SSE2 instructions do locale independent strtolower. (Laruence) -- COM: - . Fixed bug #62474 (com_event_sink crashes on certain arguments). (cmb) +- Curl: + . Bumped required libcurl version to 7.29.0. (cmb) + . Fixed bug #80121 (Null pointer deref if CurlHandle directly instantiated). + (Nikita) - DOM: + . Add property DOMXPath::$registerNodeNamespaces and constructor argument + that allow global flag to configure query() or evaluate() calls. + . Fixed bug #79968 (DOMChildNode API crash on unattached nodes). (Benjamin) . Fixed bug #80268 (loadHTML() truncates at NUL bytes). (cmb) -- FFI: - . Fixed bug #79177 (FFI doesn't handle well PHP exceptions within callback). - (cmb, Dmitry, Nikita) - -- IMAP: - . Fixed bug #64076 (imap_sort() does not return FALSE on failure). (cmb) - . Fixed bug #76618 (segfault on imap_reopen). (girgias) - . Fixed bug #80239 (imap_rfc822_write_address() leaks memory). (cmb) - . Fixed minor regression caused by fixing bug #80220. (cmb) - . Fixed bug #80242 (imap_mail_compose() segfaults for multipart with rfc822). +- Date: + . Fixed bug #60302 (DateTime::createFromFormat should new static(), not new + self()). (Derick) + . Fixed bug #65547 (Default value for sunrise/sunset zenith still wrong). (cmb) + . Fixed bug #69044 (discrepancy between time and microtime). (krakjoe) + . Fixed bug #80057 (DateTimeImmutable::createFromFormat() does not populate + time). (Derick) + . Implemented FR #79903 (datetime: new format "p", same as "P" but returning + "Z" for UTC). (gharlan) -- MySQLi: - . Fixed bug #79375 (mysqli_store_result does not report error from lock wait - timeout). (Kamil Tekiela, Nikita) - . Fixed bug #76525 (mysqli::commit does not throw if MYSQLI_REPORT_ERROR - enabled and mysqlnd used). (Kamil Tekiela) - . Fixed bug #72413 (mysqlnd segfault (fetch_row second parameter - typemismatch)). (Kamil Tekiela) - -- ODBC: - . Fixed bug #44618 (Fetching may rely on uninitialized data). (cmb) - -- Opcache: - . Fixed bug #79643 (PHP with Opcache crashes when a file with specific name - is included). (twosee) - . Fixed run-time binding of preloaded dynamically declared function. (Dmitry) - -- OpenSSL: - . Fixed bug #79983 (openssl_encrypt / openssl_decrypt fail with OCB mode). - (Nikita) - -- PDO MySQL: - . Fixed bug #66528 (No PDOException or errorCode if database becomes - unavailable before PDO::commit). (Nikita) - . Fixed bug #65825 (PDOStatement::fetch() does not throw exception on broken - server connection). (Nikita) - -- SNMP: - . Fixed bug #70461 (disable md5 code when it is not supported in net-snmp). - (Alexander Bergmann, cmb) +- Enchant: + . Add LIBENCHANT_VERSION macro. + . Add enchant_dict_add and enchant_dict_is_added functions. + . Deprecate enchant_broker_set_dict_path, enchant_broker_get_dict_path, + enchant_dict_add_to_personal and enchant_dict_is_in_session. + . Use libenchant-2 when available. -- Standard: - . Fixed bug #80266 (parse_url silently drops port number 0). (cmb, Nikita) +- FFI: + . Added FFI\CType::getName() method. (chopins) + . Fixed bug #79177 (FFI doesn't handle well PHP exceptions within callback). + (cmb, Dmitry, Nikita) + . Fixed bug #79749 (Converting FFI instances to bool fails). (cmb) -29 Oct 2020, PHP 7.4.12 +- FPM: + . Add pm.status_listen option. (Jakub Zelenka) -- Core: - . Fixed bug #80061 (Copying large files may have suboptimal performance). - (cmb) - . Fixed bug #79423 (copy command is limited to size of file it can copy). - (cmb) - . Fixed bug #80126 (Covariant return types failing compilation). (Nikita) - . Fixed bug #80186 (Segfault when iterating over FFI object). (Nikita) +- Fileinfo: + . Upgrade to libmagic 5.39. (Anatol) -- Calendar: - . Fixed bug #80185 (jdtounix() fails after 2037). (cmb) +- GD: + . Added imagegetinterpolation(). (cmb) + . Fixed bug #55005 (imagepolygon num_points requirement). (cmb) + . Made the $num_points parameter of php_imagepolygon optional. (cmb) + . Removed deprecated image2wbmp(). (cmb) + . Removed deprecated png2wbmp() and jpeg2wbmp(). (cmb) + . Replaced gd resources with objects. (Mark Randall) - IMAP: + . Fixed bug #64076 (imap_sort() does not return FALSE on failure). (cmb) + . Fixed bug #76618 (segfault on imap_reopen). (girgias) . Fixed bug #80213 (imap_mail_compose() segfaults on certain $bodies). (cmb) . Fixed bug #80215 (imap_mail_compose() may modify by-val parameters). (cmb) + . Fixed bug #80216 (imap_mail_compose() does not validate types/encodings). + (cmb) . Fixed bug #80220 (imap_mail_compose() may leak memory). (cmb) . Fixed bug #80223 (imap_mail_compose() leaks envelope on malformed bodies). (cmb)