diff options
| author | 2018-09-24 13:18:15 +0100 | |
|---|---|---|
| committer | 2018-09-24 13:18:15 +0100 | |
| commit | 967ed65e00b790df25c1e6925f211779bd0098d9 (patch) | |
| tree | d7a3da10aa98899c9f08e7433a38fe21a262a61b /modules | |
| parent | Better communicate issues with load/unload/reload of modules (diff) | |
| signature | ||
Actually implement !reloadallmodules in modules.py
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/modules.py | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/modules/modules.py b/modules/modules.py index 154a1765..0d4844e9 100644 --- a/modules/modules.py +++ b/modules/modules.py @@ -57,18 +57,23 @@ class Module(object): def reload_all(self, event): reloaded = [] failed = [] - for name in self.bot.modules.modules.keys(): + for name in list(self.bot.modules.modules.keys()): try: self._reload(name) - except ModuleManager.ModuleNotFoundException: - failed.append - if not self._reload(event): + except ModuleWarning: + continue + except: failed.append(name) - else: - reloaded.append(name) + continue + reloaded.append(name) - event["stdout"].write("Reloaded modules: %s" % \ - " ".join(modules_reloaded)) + if reloaded and failed: + event["stdout"].write("Reloaded %d modules, %d failed" % ( + len(reloaded), len(failed))) + elif failed: + event["stdout"].write("Failed to reload all modules") + else: + event["stdout"].write("Reloaded %d modules" % len(reloaded)) def enable(self, event): name = event["args_split"][0].lower() |
