AC-17975: PHP 8.5 compatibility issues affect CLI commands, category editing, Design Configuration, and customer login
The AC-17975 patch fixes the issue where CLI commands, category editing, Design Configuration, and AJAX customer login fail in Adobe Commerce 2.4.9 when PHP 8.5 is used. This patch is available when the Quality Patches Tool (QPT) 1.1.83 is installed. The patch ID is AC-17975. Please note that this issue is scheduled to be fixed in Adobe Commerce 2.4.9-p1 and 2.4.10.
Affected products and versions
The patch is created for Adobe Commerce version:
- Adobe Commerce (all deployment methods) 2.4.9
Compatible with Adobe Commerce versions:
- Adobe Commerce (all deployment methods) 2.4.9
magento/quality-patches package to the latest version and check the compatibility on the Quality Patches Tool: Search for patches page. Use the patch ID as a search keyword to locate the patch.Issue
CLI commands, category editing, Design Configuration, and AJAX customer login fail when Adobe Commerce 2.4.9 runs on PHP 8.5.
Prerequisites:
PHP 8.5 is installed.
Steps to reproduce:
-
Run the following CLI command:
code language-none bin/magento --version -
On the storefront, complete a checkout and sign in during checkout while customer CAPTCHA is enabled for login and checkout.
-
In the Admin, open a category when a category attribute has
frontend_inputset tonull. -
In the Admin, go to Content > Design > Configuration, then click Edit in the Action column for a store view.
Expected results:
All operations complete successfully.
Actual results:
The operations fail with errors, such as:
Exception #0 (Exception): Deprecated Functionality: Using null as an array offset is deprecated, use an empty string instead
/var/www/html/vendor/magento/framework/App/Config/ScopeCodeResolver.php on line 62
report.CRITICAL: Exception: Deprecated Functionality: Using null as the key parameter for array_key_exists() ... in module-captcha/Helper/Data.php on line 92
There is an error in vendor/magento/framework/Setup/Mvc/MvcApplication.php at line: 170
Undefined constant "Magento\Framework\Setup\Mvc\GLOB_BRACE"
Deprecated Functionality: Using null as an array offset is deprecated, use an empty string instead in
var/www/html/app/code/Magento/Catalog/Model/Category/DataProvider.php on line 41
Apply the patch
To apply individual patches, use the following links depending on your deployment method:
- Adobe Commerce or Magento Open Source on-premises: Quality Patches Tool > Usage in the Quality Patches Tool guide
- Adobe Commerce on cloud infrastructure: Upgrades and Patches > Apply Patches in the Commerce on Cloud Infrastructure guide
Related reading
To learn more about Quality Patches Tool, refer to:
- Quality Patches Tool: A self-service tool for quality patches in the Tools guide