Magento 2.4.6 Release Notes Highlights
For shop owners and developers, Magento 2.4.6 delivers much more than they could have anticipated, including high security, performance, and significant bug improvements.
Security Improvements
Even though there are not any confirmed attacks that occurred, it is still recommended that admins should protect their Admin by using IP allow listing, VPN usage, two-factor authentication, and good password hygiene.
Security is always a top priority for eCommerce platforms, and Magento 2.4.6 comes with several security enhancements. The most notable improvement is that the reCAPTCHA validation no longer fails. Additionally, now email confirmation is required when an admin user updates his email.
Platform Improvements
Magento 2.4.6 has introduced several platform enhancements to improve users’ overall experience.
- PHP 8.2 support has been introduced, and PHP 8.1 is still supported.
- OpenSearch 2.5 is tested, and OpenSearch 2.x is recommended with this release, even though OpenSearch 1.x is still supported.
- Elasticsearch 8.x
- Redis 7.0.x is recommended as in 2024, Redis 6.2 will reach the end of life.
Performance & Scalability Enhancements
Performance and scalability are crucial for eCommerce platforms, and Magento 2.4.6 has introduced several improvements in this area.
- Limit the number of products shown in the product grid.
- Increase import performance up to 100,000 records per minute
- Enhance order processing
- Improve operations performance when having 100+ customer segments
GraphQL
You can find the following GraphQL enhancements in this Magento 2.4.6 release:
- Faster response time when products are queried in categories with category permissions
- Render category tree quickly if stores have a large number of categories
- Faster response time for bulk cart operations query
- Support order sorting in the customer query
Braintree Payment Enhancements
There are a lot of Braintree payment improvements in the Adobe Commerce/Magento 2.4.6 release, as below:
- Display the Pay Later button & messages for Italy & Spain
- Enable PayPal Vault
- Add Fraud Protection and ACH webhooks
B2B
Now two GraphQL schemas have been released:
- Purchase Order GraphQL: including all purchase orders creation, editing, and deleting)
- Purchase Order Rule GraphQL: including rules creation, editing, and deleting, as well as purchase order manual validation.
Improved Accessibility
This version focuses on improving the storefront experience (PWA):
- Descriptive accessible names
- Verbal descriptive labels included in the Has Video search filters
- Allow full-page storefront functionality access of keyboard-only users
Page Builder & PWA Studio
Page Builder v1.7.3 and PWA Studio v.13.0.x work well with Adobe Commerce/Magento 2.4.6.
Significant Issues Fixed in the Magento 2.4.6
Adobe fixed hundreds of issues. You can find some significant fixed bugs below:
- Optimize Installation, upgrade, and deployment
- Update bundle product via API
- No longer flush full-page cache except when the ordered item is out of stock.
- Eliminate COD payment method if exempted for the country stated in the shipping and billing addresses.
- Add drag and drop feature to product custom options
- Allow shoppers to add items to their wish list after they log in
- FedEx, USPS, and UPS shipping rates are now calculated correctly even if the Free Shipping Cart rule is enabled to only a subset of cart items
- Enhance the performance of strings searches when the Minimum Terms to Match configuration is enabled.
Is Magento 2.4.6 worth it?
As you can see, Adobe Commerce (Magento) 2.4.6 has multiple improvements in the most significant areas that excite merchants and developers. This release motivates business owners to upgrade their websites to the latest Magento version and experience new functionality.
Adobe has posted official notes for the Magento 2.4.6 release. You can find the latest release notes here:
However, please take note that this release may contain backward-incompatible changes. So, you should review these changes carefully before upgrading your website. Ensuring that extensions, themes, and third parties work smoothly is essential to avoid any negative impact on your business operations.
How to upgrade to Magento 2.4.6
System requirements
- PHP: 8.1 or 8.2
- MariaDB 10.6 (10.4 is still supported but not recommended)
- Composer 2.2.x
- Elasticsearch 8.x
- OpenSearch 2.x (1.x is still supported but not recommended)
Learn more about system requirements here
Steps to upgrade to the latest version of Magento
Manage packages
After preparing your system to make sure the version 2.4.6 will work well on it, you can start managing packages.
1. Activate maintenance mode
To block users from accessing your store while you carry out upgrades.
bin/magento maintenance:enable
2. Disable all cron jobs
To prevent data corruption during the upgrade process, it’s important to disable all cron jobs before starting if there are any asynchronous processes, such as message queue consumers, currently running.
Adobe Cloud:
./vendor/bin/ece-tools cron:disable
Magento Open Source:
bin/magento cron:remove
3. Start all message queue consumers manually
To ensure that all messages are consumed, it is advisable to start all message queue consumers manually.
bin/magento cron:run --group=consumers
You should wait for the cron job to finish before proceeding. You can monitor the job’s progress by using a process viewer or by running the ps aux | grep 'bin/magento queue
command repeatedly until all processes have been completed.
4. Back up composer
cp composer.json composer.json.bak
5. Change packages
Have specific packages added or removed For instance:
composer remove magento/product-community-edition --no-update
Sample data should be also upgraded:
composer require
- Adobe Commerce:
composer require
magento/module-bundle-sample-data:100.4.*
magento/module-widget-sample-data:100.4.*
magento/module-theme-sample-data:100.4.*
magento/module-catalog-sample-data:100.4.*
magento/module-customer-sample-data:100.4.*
magento/module-cms-sample-data:100.4.*
magento/module-catalog-rule-sample-data:100.4.*
magento/module-sales-rule-sample-data:100.4.*
magento/module-review-sample-data:100.4.*
magento/module-tax-sample-data:100.4.*
magento/module-sales-sample-data:100.4.*
magento/module-grouped-product-sample-data:100.4.*
magento/module-downloadable-sample-data:100.4.*
magento/module-msrp-sample-data:100.4.*
magento/module-configurable-sample-data:100.4.*
magento/module-product-links-sample-data:100.4.*
magento/module-wishlist-sample-data:100.4.*
magento/module-swatches-sample-data:100.4.*
magento/sample-data-media:100.4.*
magento/module-offline-shipping-sample-data:100.4.*
magento/module-gift-card-sample-data:100.4.*
magento/module-customer-balance-sample-data:100.4.*
magento/module-target-rule-sample-data:100.4.*
magento/module-gift-registry-sample-data:100.4.*
magento/module-multiple-wishlist-sample-data:100.4.*
--no-update
- Magento Open Source:
composer require
magento/module-bundle-sample-data:100.4.*
magento/module-widget-sample-data:100.4.*
magento/module-theme-sample-data:100.4.*
magento/module-catalog-sample-data:100.4.*
magento/module-customer-sample-data:100.4.*
magento/module-cms-sample-data:100.4.*
magento/module-catalog-rule-sample-data:100.4.*
magento/module-sales-rule-sample-data:100.4.*
magento/module-review-sample-data:100.4.*
magento/module-tax-sample-data:100.4.*
magento/module-sales-sample-data:100.4.*
magento/module-grouped-product-sample-data:100.4.*
magento/module-downloadable-sample-data:100.4.*
magento/module-msrp-sample-data:100.4.*
magento/module-configurable-sample-data:100.4.*
magento/module-product-links-sample-data:100.4.*
magento/module-wishlist-sample-data:100.4.*
magento/module-swatches-sample-data:100.4.*
magento/sample-data-media:100.4.*
magento/module-offline-shipping-sample-data:100.4.*
--no-update
6. Upgrade your instance
You can upgrade your instance by using the following syntax for the composer require-commerce
command:
composer require-commerce magento/
--no-update [--interactive-root-conflicts]
[--force-root-updates] [--help]
The command includes the following options:
(required): Specifies the package to be upgraded. For on-premises installations, the value should be either product-community-edition or product-enterprise-edition.
(required): Specifies the version of Adobe Commerce or Magento Open Source to upgrade to, for example, 2.4.3.--no-update
(required): Disables automatic dependency updates.--interactive-root-conflicts
(optional): Allows interactive viewing and updating of outdated or customized values that do not match the version being upgraded to.--force-root-updates
(optional): Overrides all conflicting custom values with the expected Magento values.--help
(optional): Provides usage details for the plugin. If neither--interactive-root-conflicts
nor--force-root-updates
is specified, the command retains the existing conflicting values and displays a warning message. You can refer to the Plugin Usage README for more information about the plugin.
7. Update the dependencies
composer update
Update metadata
1. You may update the “name”, “version”, and “description” fields in the composer.json file according to your requirements.
2. Apply updates
composer update
3. Clear the var/
and generated/
subdirectories:
rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf generated/code/*
4. Update the database schema and data
bin/magento setup:upgrade
5. Disable maintenance mode
bin/magento maintenance:disable
6. Restart Varnish if needed
If you are using Varnish for page caching, you need to restart it after completing the upgrade process. service varnish restart
Double check
After completing the upgrade process, you should check whether the storefront URL is loading properly in a web browser to ensure that the upgrade was successful. If the storefront fails to load properly, it may indicate an unsuccessful upgrade.
If the application generates a We're sorry, an error has occurred while generating this email
error, you should take the following steps:
1. Reset the file system ownership and permissions with root user privileges.
2. Clear the contents of the following directories:
var/cache/
var/page_cache/
generated/code/
3. Check your storefront in your web browser again.