PHP 8.3.26 and 8.4.13 packages for Fedora/RHEL released
Remi Collet has announced the availability of RPM packages for PHP versions 8.3.26 and 8.4.13, which can be accessed through his repositories.
These latest versions of PHP are now available in the remi-modular repository for Fedora systems version 41 or higher and Enterprise Linux systems version 8 or higher (such as RHEL, Alma, and Rocky). The RPM packages are compatible with both x86_64 and aarch64 architectures. Notably, this release does not include any security fixes, so PHP versions 8.1.33 and 8.2.29 will remain unchanged.
To access these new PHP versions, users can opt to install them through the remi-safe repository as part of a software collection, providing an additional layer of compatibility and flexibility.
Regarding the specific enhancements and bug fixes in this release, both PHP 8.4.13 and PHP 8.3.26 have received considerable attention for addressing critical issues and improving overall performance. These include:
- Core improvements: fixed bugs related to repeated file inclusion, scanning string literals, garbage collection, array iterator pointers, and assertion failures when accessing deprecated constants.
- CLI enhancements: improved error messages for IPv6 address listening errors.
- Date functionality: corrected date_sunrise() and date_sunset() functions with partial-hour UTC offsets.
- DBA fixes: addressed stream resource mismanagement issues.
- DOM improvements: mitigated libxml2 tree dictionary bugs.
- FPM fixes: resolved failed debug assertions when setting php_admin_value.
- Intl updates: fixed locale strings canonicalization for IntlDateFormatter and NumberFormatter.
- Opcache enhancements: stored JIT variables before YIELD operations.
- OpenSSL fixes: addressed TLS stream accept failure success error messages and potential use-after-free issues with persistent pgsql connections.
Moreover, both PHP 8.4.13 and PHP 8.3.26 have seen improvements in Phar functionality, including memory leak fixes when verifying OpenSSL signatures, handling phar tar temporary files, metadata leaks during phar conversion, and Phar decompression with invalid extensions causing use-after-free vulnerabilities.
In addition to these bug fixes, the release also addresses issues related to standard library functions, such as avoiding integer overflows in array_splice operations, stream removal for incorrect zval_ptr_dtor calls, and Tidy functionality build issues due to deprecation and availability timing concerns. Finally, memory leaks have been fixed in Zip functionality when encountering empty glob results.
To install the latest version of PHP using dnf:
- For version 8.4:
- Replace default PHP with version 8.4: dnf module switch-to php:remi-8.4/common
- Install version 8.4 as a software collection: dnf install php84
- For version 8.3:
- Replace default PHP with version 8.3: dnf module switch-to php:remi-8.3/common
- Install version 8.3 as a software collection: dnf install php83
️ PHP version 8.3.26 and 8.4.13
PHP 8.5.0 Release Candidate 1 packages are now also available. For users looking to replace their default PHP version with PHP 8.5 using the module-based approach (considered the simplest method), they can follow these steps:
On systems utilizing dnf 4, such as Enterprise Linux, run the following command: dnf module switch-to php:remi-8.5/common. This will enable the use of PHP 8.5 as the default version.
For users on Fedora with dnf 5 installed, a slightly different process is required:first reset any existing PHP modules by executing dnf module reset php, followed by enabling the php:remi-8.5 module using the dnf module enable php:remi-8.5. Finally, update your system with the dnf update to ensure you have the latest version of PHP 8.5.
For those who prefer a parallel installation of PHP 8.5 as a software collection, they can install it using the command dnf install php85. This approach allows users to maintain their existing default PHP version while running tests with the newer release candidate.
PHP on the road to the 8.5.0 release
Version 8.5.0 Release Candidate 1 is released. It's now enter the stabilisation phase for the developers, and the test phase for the users.
️ PHP version 8.3.26 and 8.4.13
PHP on the road to the 8.5.0 release