diff --git a/doc/source/changes.rst b/doc/source/changes.rst index 77c20f16..d7c5ba56 100644 --- a/doc/source/changes.rst +++ b/doc/source/changes.rst @@ -1179,8 +1179,15 @@ The following Modules configuration option has been introduced on Modules 5. Starting version 5.1, modules tagged ``keep-loaded`` are excluded from Useless Requirement Unload mechanism. - Starting version 5.5, modules tagged ``sticky`` or ``super-sticky`` are - excluded from Useless Requirement Unload mechanism. + Starting version 5.5: + + * Modules tagged ``sticky`` or ``super-sticky`` are excluded from Useless + Requirement Unload mechanism. + * No attempt to reload a Dependent Reload module is made if this module is + not loadable (requirement not loaded or conflict found with loaded + environment), even if force mode is enabled. Reload is attempted when + module is not loadable if it is sticky (tagged super-sticky or sticky and + force mode not enabled). :mconfig:`avail_output`, :mconfig:`avail_terse_output` diff --git a/doc/source/design/conflict-unload.rst b/doc/source/design/conflict-unload.rst index 3505ffa7..d28f9615 100644 --- a/doc/source/design/conflict-unload.rst +++ b/doc/source/design/conflict-unload.rst @@ -173,6 +173,14 @@ Changes made to the DepRe mechanism: to perform these unload in the reverse load order (to ensure a module is unloaded before its requirements) +* Reload of DepRe module is attempted only it is loadable. Which means its + requirements are loaded and it does not conflict with current loaded + environment. If module is sticky (super-sticky or sticky and not forced) + attempt to load DepRe module is performed even if not loadable. If force + mode is enabled reload of non-loadable DepRe module is not attempted, unless + if tagged super-sticky. Not reloaded DepRe module is considered as a DepUn + module. + Notes -----