magento / magento2

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.
http://www.magento.com
Open Software License 3.0
11.39k stars 9.29k forks source link

Why is Magento 2 now such bloatware? #30722

Open michel334 opened 3 years ago

michel334 commented 3 years ago

Suggestion:

Make 3rd party modules OPTIONAL and DISABLE by DEFAULT (klarna, dhl, yotpo, dotmailer etc etc etc etc etc) My clients DO NOT NEED these modules. These modules create bugs, problems and slow loading times.

Make new functionality OPTIONAL and DISABLE by DEFAULT (multi source stock inventory, adobe stock images etc. etc etc..) My clients DO NOT NEED this functionality. This functionality creates bugs, problems and slow loading times.

I am perfectly capable of choosing the modules my clients need and enabling/installing them if and when we need them.

Also, for the love of all that is holy, no dependency hell :)

Keep it lean and mean guys! :)

Kind regards, Michel

Summary (*)

Examples (*)

Proposed solution


Please provide Severity assessment for the Issue as Reporter. This information will help during Confirmation and Issue triage processes.

m2-assistant[bot] commented 3 years ago

Hi @michel334. Thank you for your report. To help us process this issue please make sure that you provided the following information:

Please make sure that the issue is reproducible on the vanilla Magento instance following Steps to reproduce. To deploy vanilla Magento instance on our environment, please, add a comment to the issue:

@magento give me 2.4-develop instance - upcoming 2.4.x release

For more details, please, review the Magento Contributor Assistant documentation.

Please, add a comment to assign the issue: @magento I am working on this


:clock10: You can find the schedule on the Magento Community Calendar page.

:telephone_receiver: The triage of issues happens in the queue order. If you want to speed up the delivery of your contribution, please join the Community Contributions Triage session to discuss the appropriate ticket.

:movie_camera: You can find the recording of the previous Community Contributions Triage on the Magento Youtube Channel

:pencil2: Feel free to post questions/proposals/feedback related to the Community Contributions Triage process to the corresponding Slack Channel

atishgoswami commented 3 years ago

Hello @michel334,

If you want you can remove the extra modules using composer replace functionality. Here are a few community extensions that can help:

https://github.com/yireo/magento2-replace-tools

Individual Bundles: https://github.com/yireo/magento2-replace-all https://github.com/yireo/magento2-replace-bundled https://github.com/yireo/magento2-replace-inventory https://github.com/yireo/magento2-replace-core https://github.com/yireo/magento2-replace-graphql https://github.com/yireo/magento2-replace-content-staging https://github.com/yireo/magento2-replace-sample-data

Also additional this module can help identifying we certain modules have any dependencies: https://github.com/avstudnitz/AvS_DisableModules

Hope this helps 😃

ericmorand commented 3 years ago

I couldn't agree more. Magento 2 is a bloatware, trying to solve everything, slow and incredibly taxing on resources - both from the server and the browser.

But that wouldn't be that bad if it was not a dependency hell: it's impossible to know what modules can be removed because most of them seem to be dependent to another one, even when it's totally non-obvious - see this issue for example: https://github.com/magento/magento2/issues/30501 - and thus it is very difficult and error-prone to remove modules that we don't need.

People keeps on pointing us to composer packages that try to fix the issue but it's not what this issue is about: Magento 2 needs to stop being a bloatware to begin with. Having to install a composer package to remove some modules from Magento 2 is surrealist.

So, here is my proposal:

Your current approach of providing a out-of-the-box installation (i.e. this very GitHub project) - coming with everything possible - may be appropriate for casual merchants. It is definitely not what professional users need.

michel334 commented 3 years ago

@atishgoswami wow thanks, i will try those links. I do appreciate Magento's hard work with all these modules, but i get tired of fixing error's related to modules my clients do not need. Even when modules are "disabled" in the admin i still get errors related to those modules :) But your answer will help, thanks :)

thomas-kl1 commented 3 years ago

If you need to start a project without tons of dependencies, you can use your own metapackage, e.g: https://github.com/thomas-kl1/magento2-base-light This might be harder to upgrade because each dependency need to be check first, but at least there is no "surprise packages"

duffner commented 3 years ago

Hello @michel334,

If you want you can remove the extra modules using composer replace functionality. Here are a few community extensions that can help:

https://github.com/yireo/magento2-replace-tools

Individual Bundles: https://github.com/yireo/magento2-replace-all https://github.com/yireo/magento2-replace-bundled https://github.com/yireo/magento2-replace-inventory https://github.com/yireo/magento2-replace-core https://github.com/yireo/magento2-replace-graphql https://github.com/yireo/magento2-replace-content-staging https://github.com/yireo/magento2-replace-sample-data

Also additional this module can help to identify we certain modules have any dependencies: https://github.com/avstudnitz/AvS_DisableModules

Hope this helps 😃

While I agree this is an option, it shouldn't require a third-party module to disable and should just be disabled not included by default.

Jieiku commented 3 years ago

@thomas-kl1 Is your metapackage the bare minimum to get Magento 2 up and running? using my own meta package sounds like exactly what I might be looking for. I do not want all the modules that got installed by default, I use only 1 of them as far as I am aware, and I would much rather add modules on an as needed basis.

thomas-kl1 commented 3 years ago

@xekon didn't tried in production but I did some tests and it was running fine :) Some packages are still mandatory because of wrong dependencies in the code (some PR are in progress). Also I've added non mandatory package to the magento2-base-light metapackage such as the developer module. Be aware to specify the elasticsearch package you need.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed after 14 days if no further activity occurs. Is this issue still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? Thank you for your contributions!

t-heuser commented 3 years ago

Still an unresolved issue.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed after 14 days if no further activity occurs. Is this issue still relevant? If so, what is blocking it? Is there anything you can do to help move it forward? Thank you for your contributions!

thomas-kl1 commented 3 years ago

Not stale

michel334 commented 3 years ago

forgotten but not stale

frankhdz commented 3 years ago

Definitely tired of all the dependencies on modules we don't use. I ran into this issue with the reviews module not long ago. Magento is definitely bloated and while it served my purpose on getting a store up and running quickly it has slowly degraded into a hellish nightmare of a project with things constantly breaking for no reason whatsoever! We don't touch the site and bam the site breaks.

Our case is not a typical store per say and requires some special functionality that frankly magento was not built for and we are at the point now that writing a custom solution is looking better than constantly fixing magento bugs. The trouble is this beast does not leave us alone long enough to write the new solution with its constant issues!

Then of course there is the awful speed, we have thrown everything at this from redis, memcache, elastic search slimmed down javascript and CSS files and nothing helps the performs painfully slow. Enabling flat catalog does nothing, nothing! In fact it broke our store when we enabled it! In fact, the more I write about it the angrier I get and the more it makes me want to put in extra hours to develop a custom solution that performs faster and is easier to maintain than this bloated monstrosity!

marvinhinz commented 1 year ago

Any updates?