Key Fixes in PHP 8.4.6:
- BCMath: Resolved pointer subtraction issues related to scale.
- Core:
- Addressed multi-level inheritance problems and default value inheritance in virtual properties.
- Fixed performance issues in 'foreach' loops and reflection inaccuracies for closures.
- Resolved memory management bugs related to lazy objects and module destruction.
- DBA: Fixed assertion violations when reopening files.
- DOM: Corrected assertion failures and attribute handling in DOM operations.
- Fuzzer: Fixed memory leaks in error paths.
- GD: Resolved issues with function calls using array references.
- LDAP: Clarified error messages for LDAP modifications.
- Mbstring: Addressed crashes in output handlers.
- Opcache: Fixed multiple segmentation faults and memory management issues related to JIT compilation.
- PDO: Resolved memory leaks during row destruction.
- SOAP: Corrected parsing errors that could lead to segmentation faults.
- SPL: Fixed use-after-free errors in ArrayObject.
- Treewide: Resolved assertion failures in reference destruction.
- Windows: Fixed compatibility issues with line endings.
Conclusion:
The PHP 8.4.6 release not only enhances stability and performance but also improves memory management and error handling across various modules. Developers are encouraged to upgrade to this version to benefit from these fixes and enhancements, ensuring a smoother development experience and improved application performance
PHP 8.4.6 released
PHP 8.4.6 has been released, resolving multiple bugs and issues associated with PHP. The release encompasses updates addressing BCMath, Core, DOM, Fuzzer, GD, LDAP, Mbstring, Opcache, SOAP, SPL, Treewide, and Windows. The updates encompass pointer subtraction for scale, property hook backing value access, unintentional inheritance of default values in overridden virtual properties, issues with JIT polymorphisms, stack-use-after-return scenarios, lazy object initialization, use-after-free during the destruction of dl()'ed module classes, OSS-Fuzz, notable performance degradation in 'foreach', assertion violations when repeatedly opening the same file with dba_open, and memory leaks in error paths of fuzzer SAPI, as well as in GD, LDAP, Mbstring, Opcache, PDO, Standard, SOAP, SPL, Treewide, and Windows. The release also resolves issues in zend_vm_gen.php, zend_vm_gen.php, and zend_vm_gen.php.