feat: Add Mage-OS Minimal metapackage with optimized dependencies #274
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Introduces a proof-of-concept minimal metapackage that significantly reduces installation footprint by including only essential Magento packages and removing optional dependencies.
This will allow power users to 'build your own' installation, including only packages that they need for their specific situation.
Changes
Impact
Dependency Reduction:
Scope & Limitations
Usage
Build it by cloning this branch, and building a Mage-OS release like
You must set up
php-classes.pharon your system path, per this repo's README.To use the build, once it's complete:
packages/mage-os/project-minimal-2.2.0-alpha1.zipcomposer.json into a new folder you want to install torepo.mage-os.orgto an artifact with your local folder where you unpacked the packages, likecomposer installNext Steps
Notes
I opted to implement it as 'keep these packages' rather than some algorithm or list for 'remove these packages', on the basis that new Magento packages should not be included automatically going forward. If an upstream package is added that is needed, we should update the Minimal packages list explicitly to include it.
Ready for: Design review, testing pipeline, community feedback