intersystems / intersystems/ipm
Update framework enhancement: remove dependencies that don't exist in a new version of a module
- Dominant language
- ObjectScript
- Stars
- 41
- Forks
- 29
- Avg merge
- 23h 54m
- Merged PRs (30d)
- 4
Description
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
Contributor guide
Assessment
This issue has not been assessed yet.