Motivating example:
- User installs module A v1.0.0, which depends on module B
- User updates to module A v2.0.0, which doesn't have any dependencies
- After the update, a new version of module A code is loaded. Module B code and data linger on the user system by default
The module developers can always uninstall module B in an update step, but it should be done automatically.
Dev Notes:
- One option for implementing this: within the
update command logic, we could consider running the clean lifecycle phase of the existing module before installing the new version
- Consider how to propagate a -purge flag to the correct module to uninstall (which removes data associated with the module), if it is passed to the
update command
Motivating example:
The module developers can always uninstall module B in an update step, but it should be done automatically.
Dev Notes:
updatecommand logic, we could consider running thecleanlifecycle phase of the existing module before installing the new versionupdatecommand