What's New In Magento 2.4.6

Mark Shust walks through Magento 2.4.6's biggest changes: PHP 8.1/8.2 only, Composer v2, and jQuery migrate removed. New features include custom SMTP support, improved GraphQL and REST APIs with CSV import, and major performance gains in category rendering, bulk cart operations, and order processing.
Questions this video answers
March 14, 2023.
PHP 8.1 and PHP 8.2.
20,000 products (default).
Up to 100,000 records per minute.
1,000 orders per minute (≈15 orders per second).
Chapters
Hey there M2 dev, I'd like to discuss the newest release of Magento, which is 2.4.6. This is one of the biggest releases to happen in Magento for a long while and there are major changes in this update, but this release is a bit different because it's the first one where the community actually got the opportunity to publicly vote on issues that they wanted in the core A new initiative called the Magento Open Source Community prioritization process started back in October 2022 with the goal of ensuring that the Magento Open Source community has a say in which items are actually included in core code. In this process the community had the opportunity to vote on issues, which helps to determine what is next to be worked on. Simple reactions using thumbs up emojis give issues importance and then the Community Council created a prioritization backlog from the results. While only about 10 items were included in the 2. 4, 6 release of Magento, it's a wonderful addition that helps get the community involved with the release process. In my opinion, Magento's rollout of PHP8 support was done perfectly. 2.4.4 was the first version to support PHP 8.1, but was always backwards compatible with PHP 7.4 as it included no breaking updates. This allowed developers and systems integrators to migrate from PHP7 to PHP8 with without worrying about updating the code to PHP8. With the 2.4.5 release, Magento started implementing PHP8 attributes in certain DOC blocks which added PHP8 specific functionality but still kept the code compatible with PHP 7.4. However, during this release cycle, the end of life of php 7.4 occurred in November of 2022. If you didn't upgrade by this time, your store fell at risk of becoming non compliant with PCI requirements, basically forcing you to upgrade to pH. And now with Magento 246, only PHP 8.1 and 8.2 are supported as these are the only current versions of PHP that are actively supported. If you're wondering why Magento246 doesn't support PHP7, don't blame Magento. Because every other version of PHP is officially dead and no longer supported, it's finally time to start upgrading your stores. If for some reason you're still stuck on an older version of PHP, check out the Magento 2 PHP8 compatibility checker module on GitHub by Algentos. This module will analyze your site and quickly determine which third party modules are compatible with specific versions of php. PHP wasn't the only software version to get updated. All third party libraries have also been upgraded to the latest versions compatible with PHP 8.2. Composer 1 support has been removed as Composer has finally been updated to version two and OpenSearch is also now an officially supported search engine. Regarding Adobe Commerce, OpenSearch is also now the default catalog search engine due to some licensing restrictions with Elasticsearch, Redis, Elasticsearch and MariaDB also got updates to new versions including backwards compatibility with previous versions. Another update that developers will like is that jQuery migrate has finally been removed. This means that you will finally stop seeing those pesky useless warning messages being logged to the console. If you like this update, you may also like this video. Let's get into some of the exciting updates. Finally. I mean finally merchants now have the ability to specify a custom external SMT provider. This means that us devs can finally remove those third party modules that we needed to install in order to send emails via a custom SMTP service. Magento also now has a new Media gallery. Well it's actually been around since Magento245 but due to a bug it was never set as the default Media Gallery. So now it is. Page Builder also has a new drag and drop feature where you can bulk import images into the gallery, which is a really big time saver. There have also been a number of enhancements to the Graph QL layer specifically in regards to performance. This is important as more and more merchants choose to either build or migrate to headless storefronts in Adobe Commerce. Purchase orders functionality has also now been fully exposed in the GraphQL layer with the addition of approval rules in the API. Stores with thousands of categories that may also be deeply nested will have a big performance improvement due to an improved rendering process of the category tree. The category list query has been optimized to support customers with a very large numbers of categories. The code involving the loading of category children has also been refactored, removing unnecessary method calls, improving caching of the category tree, and loading category data recursively In a similar performance update. Bulk cart operations have also been sped up due to an optimization of query response times, specifically in situations where 500 or more products have been added to the shopping cart. Yes, I said thousands of categories and over 500 items in the cart. If you didn't know this already, Magento can definitely scale and there are some even more impressive figures. Next I call these Big Boy updates because these scaling numbers are pretty mind blowing. There's a new system config setting for limiting the number of products displayed in a product grid. The limit is set to 20,000 by default, and this limit only affects product collections within UI components. By limiting the number of products displayed, it can greatly increase the performance operations of grids that contain more than 200,000 products. GraphQL isn't the only programming interface that got updated. There's a new post endpoint in the REST API that allows data to be imported into Adobe Commerce with a CSV. This endpoint provides the same capabilities as the admin import and supports creating, reading and deleting products, pricing data and customers right from CSV files. And the best part, it processes up to 100,000 records a minute right out of the box. This is pretty amazing if you ask me. Finally, order processing has very noticeable throughput enhancements. If one of your merchants is running a Black Friday style event and handling a very high number of orders at a single time, you may even have run into this scenario. Now, Adobe says an instance of commerce 2 4, 6 running on their cloud architecture can process a very high volume of simultaneous orders to the tune of 1,000 orders a minute. That's 15 orders a second. This is accomplished through the use of a custom database load balancing configuration by using secondary read replicas for both MySQL and RedIS database instances. If you aren't running Commerce Cloud, you can most likely also run a very similar setup, but it may require some additional configuration to get it working properly with your own servers. I can't even begin to go over all of the bug fixes, updates and improvements in this release. You'll need to check out the full release notes to see all of the details, but I'll warn you that it may take a while just to glance through all of them. Over 300 bug fix and improvement updates landed in this release, including eight larger security updates that will also be backported to 2 4, 5 and 24 4. This includes gaps in the admin action logs that provide more auditing information and admin user email address changes needing to be confirmed. There have also been a number of accessibility improvements in Magento246. Many of these changes stem from an EU law dropping in 2025, and it seems that Adobe wants to get ahead of themselves to make Magento fully compliant. This includes a number of screen reader improvements as well as keyboard input updates around the checkout, workflow flow and page controls. Some notable updates landing in this update include recaptcha validation no longer failing during checkout when a payment fails, and customers who exceed the maximum number of login attempts can now log in after a password reset. There have also been a number of bug fixes corrected in two main areas, caching and indexing. Previously, the full page cache relating to a specific category was flushed after a shipment was created. For any order that was a big issue. Now it's only flushed when the ordered product from the related category is out of stock. Relatedly, there was an issue where the price indexer removed outdated records before replacing them, causing products to temporarily disappear from a storefront. I personally remember this being a big issue for quite some time now. The price indexer only deletes data after the newly updated index executes, which resolves this issue. There were also issues where the display display out of stock products config didn't work as expected as it still showed some out of stock products in the storefront. Now products are displayed as expected There were eight private beta releases of Adobe Commerce before the final GA version was tagged, but this is the last time that Adobe Commerce will have private beta releases. Moving forward, Adobe announced that all future releases of Adobe Commerce as well as Magento open source will be public. It will be interesting to see how this all plays out, but I think this is a net positive for all users of Magento. I believe the Adobe Commerce beta program was a bit of an unknown and if you weren't accepted into the beta program, you couldn't have access to these early released versions even if you were a paying member of Adobe. By opening up releases to all customers as well as the open source version, not only will they receive more internal feedback, but the public may even be able to help out by providing fixes and improvements back to the core code during this time. I think the community prioritization initiative is a huge boon for Magento and additional efforts made to increase transparency and enhance open source initiatives will be very welcome additions. Adobe did push out an updated release cycle as it appears as though Magento is moving to yearly release cycles, but I'm not quite sure if you know the answer to this. Be sure to leave your thoughts in the comments below, but 2.4.6 will be the only major release of Magento in 2023. If you want some info on how to deal with debugging Magento version upgrades, this may be the next best possible video for you to check out. Thanks so much for watching. If you like this video, be sure to tap that like button and subscribe to my channel so you're in the know anytime I post anything about Magento and as always keep coding.










