Extension Dependencies: Difference between revisions

m
(Long-term we do want em:requires to be able to provide em:updateURL)
Line 34: Line 34:


== Item Install & Upgrade ==
== Item Install & Upgrade ==
When installing or upgrading using a manager (e.g. Extension / Theme Manager) after all installations in progress complete if a dependency is not satisfied the item would have the autoDisabled property set to true and the user would be notified via a dialog that an item requires additional items to be installed or enabled.
When installing or upgrading using a manager (e.g. Extension / Theme Manager) after all installations in progress complete if a dependency is not satisfied the item would have the appDisabled property set to true and the user would be notified via a dialog that an item requires additional items to be installed or enabled.


If the required item is installed and disabled:
If the required item is installed and disabled the item will automatically be enables unless the user has manually disabled tthe item.
* the user would be given the option of enabling the item.
'''Q:''' What should the user experience be specifically if the required item can't be enabled due to it having a dependency that is not satisfied? I suspect a similar experience to the one they are currently having which can be a bit disconcerting.


If the required item is not installed:
If the required item is not installed (future):
* if <tt>em:requires</tt> provides a <tt>homepageURL</tt> the user would be provided with a link to the required item's home page.
* if <tt>em:requires</tt> provides a <tt>homepageURL</tt> the user would be provided with a link to the required item's home page.
* the user will always be given the option of installing the required items since <tt>updateURL</tt> will default to UMO when it is not specified.
* the user will always be given the option of installing the required items since <tt>updateURL</tt> will default to UMO when it is not specified.
Line 46: Line 44:


When an item that is a dependency of another item is being upgraded and the upgrade will disable the item that depends on it the user would be notified and given the option to not upgrade the item.
When an item that is a dependency of another item is being upgraded and the upgrade will disable the item that depends on it the user would be notified and given the option to not upgrade the item.
== Item Uninstall ==
== Item Uninstall ==
When uninstalling an item the user will be warned if uninstalling an item will disable another item that requires it. Instead of displaying a prompt informing the user "If you uninstall..." the text should also include "The following items that require this item will be disabled..."<br>
When uninstalling an item the user will be warned if uninstalling an item will disable another item that requires it. Instead of displaying a prompt informing the user "If you uninstall..." the text should also include "The following items that require this item will be disabled..."<br>
Confirmed users
1,041

edits