PHP 8.4.18 Release Candidate released

Published by

The PHP 8.4.18 Release Candidate has been launched, prioritizing stability through the resolution of critical issues like use-after-free and null-pointer crashes that led to segmentation faults during shutdown, garbage collection, and JIT compilation. These improvements were largely informed by Google's OSS-Fuzz, which identified previously hidden bugs such as an infinite loop in fiber destructors and a faulty optimization path. Additionally, updates have enhanced date handling, DOM parsing, mbstring functions, and OpenSSL memory leak issues.

For developers using the 8.4 series in production, this release candidate is significant enough to warrant testing before the final version is released. Key fixes include the elimination of obscure use-after-free errors, which were particularly problematic for long-running CLI workers and FPM pools. The fixes have been documented under GitHub issues GH-20837 and GH-20766, improving the stability of applications relying on specific features.

Furthermore, OSS-Fuzz revealed bugs that, while not directly affecting most developers, indicated deeper stability issues that needed addressing. These include an infinite loop in garbage collection for fibers and a broken optimization path that caused random crashes. Developers are encouraged to test these updates, especially if working with fibers or JIT compilation.

Minor updates were also made to date handling, specifically keeping the leap second table current, enhancing the accuracy of historic time zones. Improvements in DOM parsing ensure that scripts generating markup no longer break the surrounding document. Additionally, mbstring functions have been fortified against common errors, such as divide-by-zero issues and stack overflow problems.

The Opcache JIT has received critical updates, ensuring that the tracing JIT does not crash under specific conditions. The OpenSSL component has been cleaned up to prevent memory leaks during certificate parsing, which is crucial in production environments.

Overall, developers are advised to test this release candidate by compiling the source, running regression suites, and checking for any lingering issues in their applications. This proactive testing can help ensure the final release is robust and ready for deployment.

In conclusion, PHP 8.4.18 RC brings a host of vital fixes and enhancements that address long-standing issues, making it an essential update for developers. As the community continues to test and provide feedback, it's important to keep an eye on the PHP bug tracker for any new regressions that may emerge as usage increases. Happy debugging and testing

PHP 8.4.18 Release Candidate released

The PHP 8.4.18 release candidate focuses on hard‑core stability fixes, eliminating critical use‑after‑free and null‑pointer crashes that previously caused segfaults during shutdown, garbage collection, and JIT compilation. Google’s OSS‑Fuzz uncovered hidden problems such as an infinite loop in fiber destructors and a broken optimizer path, both now guarded against, while ancillary updates improve date handling, DOM parsing, mbstring functions, OpenSSL error‑path memory leaks, and several miscellaneous components like var_dump and SplDoublyLinkedList. These patches collectively make long‑running CLI workers, FPM pools, and applications that rely on fibers, multibyte strings, or custom HTML injection far more reliable. 

PHP 8.4.18 Release Candidate released @ Linux Compatible