Diff

util/prosodyctl/check.lua @ 13727:704765bfe0a3 13.0

prosodyctl: check features: Fix traceback for components with no recommended modules (thanks Menel, riau)
author Matthew Wild <mwild1@gmail.com>
date Mon, 17 Feb 2025 11:35:03 +0000
parent 13723:d7bf48d31374
line wrap: on
line diff
--- a/util/prosodyctl/check.lua	Mon Feb 17 00:55:27 2025 +0100
+++ b/util/prosodyctl/check.lua	Mon Feb 17 11:35:03 2025 +0000
@@ -1613,21 +1613,23 @@
 					if found then
 						local enabled_component_modules = api(found):get_option_inherited_set("modules_enabled");
 						local recommended_mods = recommended_component_modules[component_module];
-						local missing_mods = {};
-						for _, mod in ipairs(recommended_mods) do
-							if not enabled_component_modules:contains(mod) then
-								table.insert(missing_mods, mod);
+						if recommended_mods then
+							local missing_mods = {};
+							for _, mod in ipairs(recommended_mods) do
+								if not enabled_component_modules:contains(mod) then
+									table.insert(missing_mods, mod);
+								end
 							end
-						end
-						if #missing_mods > 0 then
-							if not current_feature.lacking_component_modules then
-								current_feature.lacking_component_modules = {};
+							if #missing_mods > 0 then
+								if not current_feature.lacking_component_modules then
+									current_feature.lacking_component_modules = {};
+								end
+								table.insert(current_feature.lacking_component_modules, {
+									host = found;
+									component_module = component_module;
+									missing_mods = missing_mods;
+								});
 							end
-							table.insert(current_feature.lacking_component_modules, {
-								host = found;
-								component_module = component_module;
-								missing_mods = missing_mods;
-							});
 						end
 					end
 				end