Commit 04c2058c6db for php
commit 04c2058c6dbd86e4eb5059bf51b2f03bc09f0f46
Merge: cd383dcc377 f9cf4fb51bf
Author: Kamil Tekiela <tekiela246@gmail.com>
Date: Mon Oct 12 14:36:02 2026 +0100
Merge branch 'PHP-8.6'
diff --cc NEWS
index 44fb719c698,cbc53640df9..e027d6c139e
--- a/NEWS
+++ b/NEWS
@@@ -1,26 -1,144 +1,26 @@@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? ????, PHP 8.6.0RC4
+?? ??? ????, PHP 8.7.0alpha1
-- Core:
- . Fixed bug GH-24184 (System ID not being reinitialized after an Apache
- graceful restart, potentially causing incompatible OPcache file cache
- entries to be reused). (Levi Morrison)
- . Fixed memory leak when an exception already contains the pending exception
- in its previous chain. (Edmond)
- . Fixed bug GH-23979 (Nullsafe operator must not flush delayed oplines of an
- enclosing function). (ndossche)
- . Fixed memory manager keeping a block reallocated to exactly the size of
- the next smaller bin in its larger bin, which efree_size() then freed
- into the wrong one. (Marc Bennewitz)
- . Fix throwing behaviour with recursive arrays in VM. (ndossche)
+- Curl:
- . curl_multi_exec() now throws a TypeError when still_running is not an int.
++ . curl_multi_exec() now throws a TypeError when still_running is not an int.
+ (arshidkv12)
- FPM:
- . Fixed bug GH-24229 (fcgi_close() passes shutdown() a literal 1, which is
- SHUT_RD in WASI). (Ryosuke Ishibashi)
-
-- MBString:
- . Fixed bug GH-23958 (truncated encoding names resolving to full names). (Kamil Tekiela)
-
-- Opcache:
- . Fixed bug GH-17626 (JIT corrupts an opline handler when blacklisting a
- root trace at the opcache.jit_max_root_traces limit, causing spurious
- "Too few arguments" errors and crashes). (RV7PR)
- . Fix type inference of ADD_ARRAY_UNPACK with integer keys. (ndossche)
- . Fix too wide type inference for ASSIGN_DIM_OP. (ndossche)
- . Fix OSS-Fuzz #568005340 (FETCH_DIM_FUNC_ARG partial conversion). (ndossche)
- . Fix exception checks due to NAN warnings and object empty()'s. (ndossche)
-
-- PDO:
- . Fixed a duplicate warning when ATTR_STATEMENT_CLASS is rejected on a
- persistent connection. (Ilia Alshanetsky)
-
-- Phpdbg:
- . Fix wrong command names. (ndossche, Weilin Du)
-
-- Phar:
- . Fixed GH-24166 (Double-free in Phar::webPhar() in CGI without PATH_INFO).
- (RigelYoung, Jakub Zelenka)
-
-- Session:
- . Fixed session_write_close() keeping the save handler open when the
- session data cannot be encoded. (Ilia Alshanetsky)
-
-- Standard:
- . Fixed chown() and lchown() failing to resolve user names in ZTS builds
- when getpwnam_r() needs a larger buffer. (Ilia Alshanetsky)
- . Fixed password_get_info() and password_needs_rehash() accepting malformed
- bcrypt costs. (Ilia Alshanetsky)
-
-- Zip:
- . Fixed use-after-free when re-entering ZipArchive during destruction or
- a close warning, and rejected opening streams while closing. (jvoisin)
- . Fixed a use-after-free when a ZipArchive method that modifies the archive
- is called from a progress or cancel callback during close().
- (Ilia Alshanetsky)
-
-- Zlib:
- . Fixed use-after-free when an error handler removes a failing zlib.inflate
- filter (GH-24176). (Edmond)
-
-08 Oct 2026, PHP 8.6.0RC3
-
-- BCMath:
- . Fixed BcMath\Number results that truncate to zero keeping a negative sign
- and comparing less than zero. (Ilia Alshanetsky)
+ . Use recommended TYPE, HELP order for OpenMetrics metadata.
+ (Marcel Hernandez)
-- BZ2:
- . Fixed double close of the descriptor and use-after-free of the inner
- stream when bzopen() is given a stream resource. (Jakub Zelenka)
-
-- CLI
- . Fix GH-22567 (Windows ZTS CLI SAPI should refresh its TSRMLS cache during
- request activation). (matyhtf)
- . Fixed bug GH-23764 (Built-in server leaks a file descriptor on every HEAD
- request for a static file). (jakubskopal)
- . Fixed crash in the built-in server when a client is reset before being
- accepted. (David Carlier)
- . Fixed the built-in server truncating an error page and leaking its
- unsent part after a partial socket write. (Ilia Alshanetsky)
-
-- Core
- . Fixed bug GH-23644 (Optimizer leaves a constant-vs-constant comparison
- unfolded, crashing the VM in zval_undefined_cv). (ndossche)
- . Fixed OSS-Fuzz 532353396 (assertion failure with static type). (Girgias)
- . Fix GH-23662 (Avoid NAN warning in print_r()). (CodedByManish)
- . Fix GH-21999: GC inconsistency with lazy object, var_dump(), and object
- comparison. (Arnaud)
- . Fixed OSS-Fuzz #536440507 (Immutable class incorrect assertion).
- (ndossche)
- . Fixed bug GH-23628 (Tracing JIT reads undefined property slots of lazy
- proxy objects instead of forwarding to the real instance). (lisachenko)
- . Fixed bug GH-23882 (array_map() optimization is incorrect for
- strict_types=1). (timwolla)
- . Fixed OSS-Fuzz #565486253 (coerced arg with '...' on non-variadic
- function). (ndossche)
- . Fixed AVX being reported as supported when the OS has not enabled AVX
- state. (Ilia Alshanetsky)
- . Fixed OSS-Fuzz #552682112 (assertion failure wrt
- zp_arg_must_be_sent_by_ref()). (ndossche)
- . Fixed GH-23921 (Fibers start with error_reporting = 0 when the
- error_reporting INI directive is not set). (Girgias)
- . Fixed GH-23980 (ZEND_ASSERT violation @ ZEND_INCLUDE_OR_EVAL). (ndossche)
- . Deprecated using "let" or "is" as the name of a class, function, or
- constant, and as an alias in class_alias() and use declarations. (Girgias)
- . Deprecated using "_" as a constant name and as an alias for a class or
- constant in use declarations. (Girgias)
- . Switch the POSIX high resolution timer back to CLOCK_MONOTONIC from
- CLOCK_MONOTONIC_RAW. (nicolas-grekas)
- . Fixed array_map optimization with non-literal function or non-literal args.
- (Arnaud)
- . Fixed use-after-free when a dl()-loaded extension declares a frameless
- function and a later request calls it. (Ilia Alshanetsky)
- . Fixed System V shared memory emulation for Windows attaching segments past
- the end of their mapping. (Ilia Alshanetsky)
- . Fixed exception thrown by destructor during GC in a Fiber not being rethrown
- into the frame that triggered the GC. (Nicolas Grekas)
-
-- DOM:
- . Fixed DOMXPath and Dom\XPath losing the context node and in-scope
- namespaces of an evaluation after a php:function() callback evaluated
- another expression on the same object. (Ilia Alshanetsky)
-
-- FFI:
- . Fixed crashes with FFI callbacks created from __call() trampolines
- and array callables whose object is released. (Ilia Alshanetsky)
+- Hash:
+ . Fixed mhash_keygen_s2k() truncating a $length above INT_MAX instead of
+ throwing a ValueError. (Marc Bennewitz)
- Intl:
- . Fixed grapheme_strstr() and grapheme_stristr() returning incorrect substrings
- when supplementary characters precede the match. (Weilin Du)
- . Fixed grapheme_strstr() and grapheme_strpos() missing canonically
- equivalent matches, and grapheme searches reporting ICU errors for empty
- haystacks. (Weilin Du)
- . Fixed grapheme_strrpos() and grapheme_strripos() skipping overlapping matches
- when using a negative offset. (Weilin Du)
- . Fixed IntlDateFormatter::parse(), localtime() and parseToCalendar()
- treating the offset as UTF-16 code units instead of bytes.
+ . Fixed Collator attribute and strength methods not rejecting an
+ unconstructed Collator. (Ilia Alshanetsky)
+ . Added optional $availableLocales argument to Locale::acceptFromHttp()
+ (GH-24074). (David Carlier)
+ . Fixed a double-free when Calendar::createInstance() or
+ IntlCalendar::fromDateTime() fails after adopting a TimeZone.
(Ilia Alshanetsky)
- Lexbor:
@@@ -43,6 -308,6 +43,7 @@@
. Updated Unicode data tables to Unicode 18.0 (Yuya Hamada)
. Fixed mbstring functions emitting surrogates in UTF-8 output and flagging
it as valid UTF-8. (Nicolas Grekas)
++ . Fixed bug GH-23958 (truncated encoding names resolving to full names). (Kamil Tekiela)
- MySQLi:
. Fix GH-22854: Fixed failed assertion when accessing mysqli property after