Diff

prosodyctl @ 7085:343be83ddfa6

Merge 0.10->trunk
author Kim Alvefur <zash@zash.se>
date Sat, 16 Jan 2016 22:44:43 +0100
parent 7082:8b590fc77d91
child 7147:81e54032d14d
child 7190:7a14ea196db3
line wrap: on
line diff
--- a/prosodyctl	Mon Jan 11 13:44:48 2016 +0100
+++ b/prosodyctl	Sat Jan 16 22:44:43 2016 +0100
@@ -877,6 +877,20 @@
 				print("    All hosts are disabled. Remove enabled = false from at least one VirtualHost section")
 			end
 		end
+		if not config["*"].modules_enabled then
+			print("    No global modules_enabled is set?");
+			local suggested_global_modules;
+			for host, options in enabled_hosts() do
+				if not options.component_module and options.modules_enabled then
+					suggested_global_modules = set.intersection(suggested_global_modules or set.new(options.modules_enabled), set.new(options.modules_enabled));
+				end
+			end
+			if not suggested_global_modules:empty() then
+				print("    Consider moving these modules into modules_enabled in the global section:")
+				print("    "..tostring(suggested_global_modules / function (x) return ("%q"):format(x) end));
+			end
+			print();
+		end
 		-- Check for global options under hosts
 		local global_options = set.new(it.to_array(it.keys(config["*"])));
 		local deprecated_global_options = set.intersection(global_options, deprecated);
@@ -1080,8 +1094,8 @@
 				target_hosts:remove("localhost");
 			end
 			
-			local modules = set.new(it.to_array(it.values(host_options.modules_enabled)))
-			                + set.new(it.to_array(it.values(config.get("*", "modules_enabled"))))
+			local modules = set.new(it.to_array(it.values(host_options.modules_enabled or {})))
+			                + set.new(it.to_array(it.values(config.get("*", "modules_enabled") or {})))
 			                + set.new({ config.get(host, "component_module") });
 
 			if modules:contains("proxy65") then