A system to detect conflicts between modules would be useful. Say I want to significantly alter the functionality of the the core comment module. The forum module is dependent on the comment module and refers specifically to its namespace. For this reason, simply creating another module with a new namespace to is not sufficient. The forum module would need to be hacked to make its calls refer to the new module's functions.
I propose a system that will allow module developers to specifiy the modules that conflict with their own. Conflicts could be based on redundant functionality or a shared namespace. If a conflicting module is enabled, an administrator would be notified of the conflict and instructed to disable the conflicting module before enabling the new module. This would give module developers the option of redefining functions without being concerned about namespace conflicts.
This is the best solution I could conceive for the problem I've outlined above. I'm aware of the issues that may arise as a result of facilitating namespace conflicts (especially in documentation). But at this point, I don't see an alternative.
Comments
Comment #1
ntroutman commentedI second this.
Comment #2
lilou commentedDuplicate of #92233: Modules in conflict - conflicts[], breaks[], brokenby[] field in modules .info file
Comment #3
jsheppard commentedI agree. I was experimenting with WordPress recently and noticed that WordPress has already implemented a system like this and it warned me about installing a certain extension because it conflicted with an extension I had already installed. This information allowed me to make an informed decision about which of the two extensions I preferred for the solution I was building and prevented me from installing an extension that would cause problems on my site.
Though I love Drupal and prefer building sites with it over building sites with WordPress, I have often tried to implement modules that conflicted with modules I already installed, but in Drupal it's a lot harder to find the source of the conflict once the conflict surfaces. It would be nice to be warned at the point of module install and be able to make a decision before even completing the module install.
I've searched the Drupal community and Google extensively for a module that provides this functionality, but find nothing. It would be very nice if functionality like this was included in Drupal Core (as it appears to be in WordPress).