Skip to content

Instantly share code, notes, and snippets.

<?php
// The idea here is:
// - install Magento 2.3.3 and 2.3.3-p1 using composer in two different directories
// - loop over all directories in vendor/magento of those two installations
// - generate diff using 'git diff --no-index'
// - search and replace file paths in the diff and write it back as is
// - also output composer.patches.json file which can be used with the cweagans/composer-patches package
declare(strict_types=1);
@hostep
hostep / composer-v2-support-older-magento2-versions.md
Last active January 27, 2024 10:37
Add composer v2 support to older Magento2 versions

Add composer v2 support to older Magento2 versions

Magento 2.3.7 and 2.4.2 ship with composer v2 support out of the box but as far as I can see the only thing that needs to happen is to use some more modern versions of certain composer plugins which are used by certain dependencies of Magento.

This means we should be able to add composer v2 support to older Magento2 versions as well if we get a bit creative.

See below for diffs of the composer.json files you can apply to your projects, be sure to keep a mental note of these things, they will need to maintained by yourself in case newer versions of these modules are released. And if one day you update to Magento 2.3.7 or 2.4.2 or higher, you can remove these changes again.

⚠️ Disclaimer: use these tricks at your own risk!