File

.luacheckrc @ 9307:feaef6215bb8

util.stanza: Don't automatically generate ids for iq stanzas Users of this API should provide their own id attribute that meets their uniqueness requirements. The current implementation leaks information (i.e. how many iq stanzas have been sent by the server to other JIDs). Providing any strong guarantees of randomness here would need to pull in additional dependencies that we don't want in this simple library.
author Matthew Wild <mwild1@gmail.com>
date Thu, 13 Sep 2018 16:35:48 +0100
parent 9304:0616412409c5
child 9325:982f8ae61de2
line wrap: on
line source

cache = true
unused_secondaries = false
codes = true
ignore = { "411/err", "421/err", "411/ok", "421/ok", "211/_ENV", "431/log", "143/table", "113/unpack" }

max_line_length = 150

read_globals = {
	"prosody",
	"import",
};
files["prosody"] = {
	allow_defined_top = true;
	module = true;
}
files["prosodyctl"] = {
	allow_defined_top = true;
	module = true;
};
files["core/"] = {
	globals = {
		"prosody.hosts.?",
	};
}
files["util/"] = {
	-- Ignore unwrapped license text
	max_comment_line_length = false;
}
files["plugins/"] = {
	module = true;
	allow_defined_top = true;
	read_globals = {
		-- Module instance
		"module.name",
		"module.host",
		"module._log",
		"module.log",
		"module.event_handlers",
		"module.reloading",
		"module.saved_state",
		"module.global",
		"module.path",

		-- Module API
		"module.add_extension",
		"module.add_feature",
		"module.add_identity",
		"module.add_item",
		"module.add_timer",
		"module.broadcast",
		"module.context",
		"module.depends",
		"module.fire_event",
		"module.get_directory",
		"module.get_host",
		"module.get_host_items",
		"module.get_host_type",
		"module.get_name",
		"module.get_option",
		"module.get_option_array",
		"module.get_option_boolean",
		"module.get_option_inherited_set",
		"module.get_option_number",
		"module.get_option_path",
		"module.get_option_scalar",
		"module.get_option_set",
		"module.get_option_string",
		"module.handle_items",
		"module.hook",
		"module.hook_global",
		"module.hook_object_event",
		"module.hook_tag",
		"module.load_resource",
		"module.measure",
		"module.measure_event",
		"module.measure_global_event",
		"module.measure_object_event",
		"module.open_store",
		"module.provides",
		"module.remove_item",
		"module.require",
		"module.send",
		"module.set_global",
		"module.shared",
		"module.unhook",
		"module.unhook_object_event",
		"module.wrap_event",
		"module.wrap_global",
		"module.wrap_object_event",

		-- mod_http API
		"module.http_url",
	};
	globals = {
		-- Methods that can be set on module API
		"module.unload",
		"module.add_host",
		"module.load",
		"module.add_host",
		"module.save",
		"module.restore",
		"module.command",
		"module.environment",
	};
}
files["spec/"] = {
	std = "+busted"
}
files["prosody.cfg.lua"] = {
	ignore = { "131" };
	globals = {
		"Host",
		"host",
		"VirtualHost",
		"Component",
		"component",
		"Include",
		"include",
		"RunScript"
	};
}

if os.getenv("PROSODY_STRICT_LINT") ~= "1" then
	-- These files have not yet been brought up to standard
	-- Do not add more files here, but do help us fix these!
	local exclude_files = {
	"doc/net.server.lua";

	"fallbacks/bit.lua";
	"fallbacks/lxp.lua";

	"net/adns.lua";
	"net/cqueues.lua";
	"net/dns.lua";
	"net/server_select.lua";

	"plugins/mod_admin_adhoc.lua";
	"plugins/mod_admin_telnet.lua";
	"plugins/mod_http_files.lua";
	"plugins/mod_net_multiplex.lua";
	"plugins/mod_privacy.lua";
	"plugins/mod_s2s/mod_s2s.lua";
	"plugins/mod_s2s/s2sout.lib.lua";
	"plugins/mod_storage_sql1.lua";
	"plugins/mod_storage_sql.lua";
	"plugins/mod_websocket.lua";

	"spec/core_configmanager_spec.lua";
	"spec/core_moduleapi_spec.lua";
	"spec/net_http_parser_spec.lua";
	"spec/util_cache_spec.lua";
	"spec/util_events_spec.lua";
	"spec/util_http_spec.lua";
	"spec/util_ip_spec.lua";
	"spec/util_json_spec.lua";
	"spec/util_multitable_spec.lua";
	"spec/util_rfc6724_spec.lua";
	"spec/util_throttle_spec.lua";
	"spec/util_xmppstream_spec.lua";

	"tools/ejabberd2prosody.lua";
	"tools/ejabberdsql2prosody.lua";
	"tools/erlparse.lua";
	"tools/jabberd14sql2prosody.lua";
	"tools/migration/migrator.cfg.lua";
	"tools/migration/migrator/jabberd14.lua";
	"tools/migration/migrator/mtools.lua";
	"tools/migration/migrator/prosody_files.lua";
	"tools/migration/migrator/prosody_sql.lua";
	"tools/migration/prosody-migrator.lua";
	"tools/openfire2prosody.lua";
	"tools/xep227toprosody.lua";

	"util/sasl/digest-md5.lua";
	}
	for _, file in ipairs(exclude_files) do
		files[file] = { only = {} }
	end
end