Latest Magento Release 2.4.4 Coming Soon!
Magento 2.4.4 version will be publicly released on March 8, 2022. It delivers security updates and performance boosts.
The Magento 2.4.4 version introduces support for PHP 8.1. You will get enhanced B2B & B2C features and headless support.
This release includes almost 250 quality fixes and enhancements.
Magento owners can soon get the latest version. We cover the highlights and updates of the Magento 2.4.4 release.
Adobe Commerce 2.4.4 Release Highlights
Platform Enhancements
- Support for latest Elasticsearch 7.16 and OpenSearch 1.2
-
JQuery
library has been upgraded to v3.6. - The
jquery-ui
library has been upgraded to v1.13.0. - TinyMCE 5.8.1 is now supported.
-
RequireJS
library has been upgraded to v2.3.6. - PHPUnit is upgraded to 9.5.x
- Laminas upgraded to the latest versions. These are compatible with PHP 8.1
Security Enhancements
- Token based access has been improved. A stand alone token can create a never expiring access. It can lead to security issues, so the option has been disabled.
- Session IDs are not stored in the database.
- OAuth access tokens and password reset tokens are now encrypted.
- Validation has been improved. It will prevent the upload of non alphanumeric file extensions.
- Swagger is disabled by default. It will be disabled when the version is in production mode.
- ReCAPTCHA support has been added to coupon codes.
- Improved API security
Testing
Adobe Commerce 2.4.4 has been tested to be compatible with -
- Varnish 7.0.0
- MySQL 8.0.27
- RabbitMQ 3.9.10
- MariaDB version 10.4.22
Adobe Commerce 2.4.4 New Features
1. PHP 8.1 Support
Magento 2.4.4 version will support PHP 8.1. The latest PHP version will bring better performance improvements.
All project libraries and dependencies are compatible with the latest PHP version.
PHP 8.1 is a major update for the language with new features such as:
- Readonly properties
- Enums
- First-class callable syntax
- Fibers
- Intersection types
Adobe offers a beta program to prepare merchants for the new releases.
It allows you to prepare sooner for the General Availability release date.
Support for PHP 7.3 is removed for Magento 2.4.4 version.
2. Library Upgrades and Removals
JS libraries updated
-
script.aculo.us
-
Chart. js
-
moment.js
-
Moment-timezone-with-data.js
-
matchMedia.js
-
underscore.js
-
Prototype JS
-
Require JS
-
LessCSS
JS libraries removed
-
es6-collections.js
-
MutationObserver. js
-
Modernizr
-
FormData. js
3. Performance Improvements
-
The 2.4.4 version will deliver high throughput order processing. The version has also optimized the message queue.
-
The AsyncOrder feature is added in this release. It supports around 60,000 orders per hour.
The previous version could process 10,000 orders per hour. It had a bottleneck for flash sales. -
The 2.4.4 version also offers a multiple consumers feature. It lets you add more message queue consumers on a single cloud instance.
-
The new
multiple_ processes
support running parallel consumers in multiple processes. You have to enable this feature. -
Cart operations for carts with 750 configurable products have been improved.
-
The memory limit is increased by
max_input_vars
in thephp.ini
file. -
Sales rules processing during checkout has been optimized.
4. Vendor Bundled Extensions
Earlier Magento versions had bundled third party plugins such as Amazon Pay, Vertex Cloud, etc. These came with the software.
Adobe has removed all vendor-bundled extensions in the 2.4.4 version. The only exception is the Braintree plugin, which will come natively.
You can get the removed extensions from the Magento Marketplace.
5. GraphQL
- GraphQL negotiable quotes -
If you are a B2B user, you can now complete all negotiable quotes tasks with GraphQL.
- Storefront related Admin config settings -
The storeConfig
query now returns the config settings for the Zero Subtotal Checkout and Check/Money Order payment methods.
- Updated core GraphQL library -
The webonyx
library is upgraded to version ^14.9. It allows core GraphQL to function.
- Translation issues in GraphQL -
The GraphQl resolver returns translated strings based on store scope as expected.
- GraphQL with New Relic -
GraphQL provides New Relic with descriptive transaction names. It is useful during debugging.
-
GraphQL Performance Improvements -
-
The GraphQL cart operations performance has improved. The
collectQuote Totals()
is now called only once on a GraphQL request. It will help to reduce response time. -
Storefront performance has been improved. Changes are made to how GraphQL requests are cached.
Fastly and Varnish will now cache GraphQL requests sent withauth
tokens.
6. B2B
-
The time to upgrade from Magento 2.3.5 (x) to 2.4.x is reduced. You can add more than 100,000 company roles a lot faster.
-
The POST
V1/order/:orderId/invoice
request will support creating partial invoices.
It works when the Payment on Account payment method is enabled. -
Pagination is now displayed on the catalog search result page.
-
Customer custom attributes are saved as expected. It is saved when you create a company customer account or user in the Admin.
-
Quick Order search by SKU is now case insensitive.
The Submit button on the Create New Company form is now disabled after one click. It helps prevent multiple form submissions.
7. Backward Incompatible Changes -BIC
Backward incompatible changes have an impact on extensions. With the code changes, the modules should work in a new way.
Cross-check your installed extensions with the new changes.
The Magento 2.4.4 release has two BIC updates:
Inventory Check on Cart Load
For 2.4.4, a new Enable Inventory Check On Cart Load option is added. It controls the inventory check when a product is added to a shopping cart.
The option is enabled by default. The inventory check may require extra server resources. Disabling the option can improve performance for checkout steps.
If the inventory step is disabled, you may get out of stock errors:
- The requested qty is not available.
- Unable to place an order: Enter a valid payment method and try again.
- The shipping method is missing. Select the shipping method and try again.
TinyMCE
The 2.4.4 version has three major BICs related updates:
1. Renamed TinyMCE4
to tinymce
The change removes the strict TinyMCE use from the code. The changes could cause the WYSIWYG interface to break.
The editor can be unavailable in the admin panel. It may damage the Magento Page Builder extension.
You can be impacted by these changes if:
-
You use a custom store configuration for
TinyMCE
. It uses thetinymce4
alias inrequirejs
-
Use the Page Builder JavaScript file. It can be renamed in any other place except the
app/code/ Magento/PageBuilder/etc/ adminhtml/di.xml
file.
2. Refactored TinyMCE MFTF tests
The new version has refactored WYSIWYG TinyMCE MFTF tests. It now uses the same sections\selectors.
You are impacted by these updates if:
-
You have tests that use elements (selectors) from duplicated sections. Tests that extend core tests with TinyMCE.
-
You have to update all tests that use duplicated elements.
3. Refactored TinyMCE4 MFTF tests
The TinyMCE4 MFTF tests have been refactored. It can break tests if you use or extend the TinyMCE4 MFTF tests.
The changes include:
- Action group
CliEnableTinyMCE4ActionGroup
is renamed toCliEnableTinyMCEActionGroup
- Replaced all references to “TinyMCE 4” in the test code base with
tinymce
- Change the
stepKey
on each test - Create variable for adapter version
These changes may impact your site. You must update all tests that rely on the refactored action group and TinyMCE4.
Magento 2.4.4 Fixed Issues
1. Cart and Checkout
-
Enhanced user experience for guest checkouts.
-
The Order Summary section of the checkout page is improved. It displays the correct currency and amount for the selected country.
-
Improved free shipping threshold.
-
Checkout no longer fails when the billing address is missing the street field values. The error message is not shown during checkout.
-
For large-scale businesses, there is a new & optional asynchronous order processing. It will offer checkout support for higher traffic.
2. Catalog
-
Daily catalog rules updates will not degrade performance.
-
Magento will not remove catalog and cart price rules on configurable products.
-
The mass attribute update action on the product grid is improved.
-
Magento no longer modifies related product prices. It was previously done when the product attributes changed.
-
You can now re-assign the final product remaining in a category.
-
You can use GraphQL queries to get scheduled updates for categories.
3. Bundle Products
-
You can now add a bundle product with Fixed Product Tax.
-
Currency conversion bug fixes for bundled products.
-
The cache cleaning algorithm during re indexing has been optimized.
-
Bundled products are displayed as expected when a category is cached.
4. Page Builder
-
Page Builder is now compatible with PHP 8.1
-
The
phpgt/dom
Composer dependency for themagento/magento2-page-builder
extension is upgraded to the latest versions. -
The menu for Page Builder Table Properties is improved.
-
The font size to display the Page Builder Table menu and default store view is optimized.
-
Magento will not convert all dynamic blocks to one language during an upgrade.
5. GraphQL fixes
-
The set
BillingAddressToCart
mutation is now fixed. It correctly uses thesame_as_ shipping
parameter to set the billing address. -
The
Configurable CartItem
mutation is fixed. It now returns the requested data as expected. -
MySQL queries are optimized for GraphQL
products
queries. It uses search parameters to refine search results. -
GraphQL now returns configurable child products as expected. It is done despite being turned off at the website level.
-
The MDVA-39935 patch will be compatible with Magento 2.4.1 – 2.4.3
-
The
addProductsToCompareList
mutation can now be used to compare configurable products.
6. Payment methods
-
The Venmo payment method is now supported.
-
The correct store ID is now used to retrieve saved credit cards on orders.
-
Anomalies with PayPal Credit display of gift cards are resolved.
7. Tests
-
WebAPI tests are now compatible with PHP 8.1
-
You can test the shopper experience for a specific country. It need not be the merchant’s location.
-
New tests to verify custom date attribute format for the storefront and Admin.
-
Functional tests are stabilized for PHP 8.x
-
Unit tests have been upgraded to use
PHPUnit
instead ofAspectMock
8. Email fixes
-
Magento has fixed the error message in the shipment details.
-
Region and country ID values are properly converted in email templates. Previously, it did not display the values correctly.
-
Order and shipment notification emails are fixed.
-
Email field validation errors on the checkout are fixed.
9. Magento Coding Standards
-
Updated
phpunit/ phpunit
to the latest version for themagento-coding-standard
repository. -
The
webonyx/graphql-php
dependency is updated to version ^14.9 -
Magento2.PHP.ArrayAutovivification
is added to identify the auto creation of arrays from a false value.
10. PayPal fixes
- Display of error during checkout with PayPal Express is fixed.
11. Installation, upgrade, and deployment
-
The new version can log an issue or static content deployment errors in build log files.
Initially, patches could insert duplicate values, which corrupted the database. -
Data patches can no longer ignore a table’s unique constraints. It will not add duplicate values into a MySQL database table.
12. General fixes
-
After a second failed login attempt, shoppers are redirected to the login page. Previously, Magento displayed a 404 error page.
-
Data migration tool can be used to migrate Magento 1. x store data to Magento 2.4.4
-
Administrators can retry operations that are running over the max processing time. The default maximum is 12 hours.
-
Adobe Commerce no longer duplicates an existing CMS page. Initially, it created a new node in the CMS hierarchy.
End Note
Magento 2.4.4 will offer a lot of improvements for the online store. We will see updated versions of ElasticSearch, jQuery, and MySQL.
With the support for PHP 8.1, sellers can expect performance boosts.
Get more insights about the Magento platform on the MGT-Commerce blog.