Upgrading to the latest version: Magento 2.4.4


Introduction

Usually aimed at improving security and enhancing performance, newer versions of technologies bring about changes and fixes based on the loopholes of the previous versions. Through this blog, we shall look at the steps to upgrade Magento 2 to its latest version, 2.4.4.

Before we dive into the process, let’s understand the fundamental need for a technological update and the seven areas where Magento 2.4.4 comes across as a massive and substantial release.

About Magento 2.4.4 Update

The core purpose of every version update is to improve security and performance with additional changes like infrastructure upgrades, code enhancements, and the introduction of new features. With the release of Magento 2.4.4, Industry-wide experts are considering it as a significant version release since it focuses on six transformational areas;

  1. Introducing the support of PHP 8.0 for Magento 2.4.4 and PHP 8.1 for the eCommerce platform. The language update has shown a 23.0% speedup in Symfony Demo.
  2. Adding OpenSearch Support along with ElasticSearch support.
  3. Doing away with third-party extensions & modules, Magento is now decoupled and allows most features without having to avail of any third-party integrations.
  4. Updated crucial software components like adding ElasticSearch 7.16.1 and OpenSearch 1.1 support, upgrading jquery-ui to version 1.13.0, and project libraries and dependencies made compatible with PHP 8.1.
  5. Removing and updating libraries to enhance performance. The following were removed – es6-collections.js, MutationObserver.js, Modernizr, FormData.js, and updated libraries like script.aculo.us, Chart.js, moment.js, moment-timezone-with-data.js, matchMedia.js, underscore.js, PrototypeJS.
  6. With the Magento 2.4.4 release, Adobe has promised to fix GraphQL errors to solve product configuration issues, product identification issues, the appearance of categories etc.,

Now that we know the updates that Magento 2.4.4 breaks, let’s look at the steps to upgrade it.

How To Upgrade To Magento 2.4.4?

There were three ways to upgrade Magento

  1. Using the Composer from the command line
  2. Using Web Setup Wizard from admin
  3. Download latest Magento and replace the core files

Since the release of Magento 2.4.0, Magento removed the Web Setup Wizard from the admin panel. So, developers have to update Magento from the command line or by file replacement. I will suggest the command line functionality. As there is no Web Setup Wizard option, we will discuss only available options.

Using The Composer From The Command Line

Updating Magento using the composer is the first method of updating Magento. The first step in this process is to define the new Magento version using the composer. You can run the below command from the Magento root directory.

composer require magento/product-community-edition 2.4.4 –no-update

Once you’ve written the above command, you need to update Magento using the composer.

composer update

After running the composer update command, you can download all the updated modules from the Magento repository. Make sure that your system specification is compatible with the latest Magento version. If everything is as expected, then you will not face any issue while updating Magento. But you might face most common issues if your system is not up to date or any third party extension might create a problem

Below Are Some Known Issues That You Might Face While Updating Magento

Undefined class constant PRE_COMMAND_RUN

If you are getting this error, that means your composer version is old, and you need to update your composer version. Run the below command to update the composer version.

composer self-update

Unknown downloader type: Available types: git, svn, fossil, hg, perforce, zip, rar, tar, gzip, xz, phar, file, path

This is also regarding the composer version if you have updated your composer version and are still getting this error, then backup your vendor folder and re-run the command.

Download Latest Magento And Replace The Core Files

Replacing the core files is not a recommended way to update Magento. But in some cases, when Magento has more third-party extensions and more customization, we have to choose this way. The process is straightforward. First, you need to take a backup of all Magento core folders, not only the “vendor” folder.

After taking backup of core folders, you need to download the latest Magento version and replace particular folders.

Once you have made all the above changes, you need to run setup upgrade and deploy commands.

php bin/magento setup:upgrade

php bin/magento setup:static-content:deploy

And this is all that you need to do to update Magento. There are few things to consider before updating Magento.

Backup your site first

Backup your database because when you run the “setup upgrade” command after an upgrade, new fields in the table or some fields might wipe-out.

Check if your theme and extensions are compatible with more recent versions of Magento.

Above, we saw the issues while upgrading Magento. Now we will discuss some known issues after upgrading the Magento.

Refused to execute inline script because it violates the following Content Security Policy directive.

Magento introduced the new module called “Magento_CSP” With regards to the CSRF Protection. You need to allow access to all the CDN resources. You can create an XML file in your module on below path

app/etc/COMPANYNAME/MODULENAME/etc/csp_whitelist.xml

Add the below code to your file. This example works for the google analytics URLs

 <?xml version=”1.0″?>

<csp_whitelist xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:module:Magento_Csp/etc/csp_whitelist.xsd”>

<policies&gt

<policy id=”script-src”>

<values>

<!–Google>

<value id=”google-analytics” type=”host”>www.google-analytics.com> </value>

</values>

<policy>

<policies>

<csp_whitelist>

Conclusion

Running an older version of Magento is not a good idea. Nowadays, it is necessary to be up to date. Upgrading Magento will provide you with the latest security updates and advantage of new features and performance improvements.

Magento also requires the updated version of extensions and themes so you can take advantage of those as well. So, contact an experienced Magento Development Company that will fulfill your development needs hassle-free!



Source link