squishy

Thu, 23 Mar 2023 18:56:32 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Thu, 23 Mar 2023 18:56:32 +0000
changeset 485
c9a144591649
parent 482
4c4f3dd62c54
child 486
6416ea3fff86
permissions
-rw-r--r--

component: Avoid adding to the global stream metatable

This allows component and client connections to be made side-by-side.
Previous to this change, loading this connection module would break the
ability to make client connections, due to overriding stream methods such as
:reopen() and :reset().

A next step would be to share the methods that the two connection modules have
in common.

Output "verse.lua"

-- Verse-specific versions of libraries
Module "util.encodings"		"libs/encodings.lua"
Module "util.hashes"		"libs/hashes.lua"
Module "util.sha1"		"util/sha1.lua"
Module "lib.adhoc"              "libs/adhoc.lib.lua"
Module "util.table" "libs/table.lua"

-- Prosody libraries
if not GetOption("prosody") then
	AutoFetchURL "http://hg.prosody.im/0.10/raw-file/tip/?"
else
	AutoFetchURL(GetOption("prosody").."/?")
end

Module "util.stanza"		"util/stanza.lua"
Module "util.timer"		"util/timer.lua"
Module "util.termcolours"	"util/termcolours.lua"
Module "util.uuid"		"util/uuid.lua"
Module "util.time" "libs/time.lua"
Module "util.envload" "util/envload.lua"
Module "util.id" "util/id.lua"
Module "util.serialization" "util/serialization.lua"
Module "util.indexedbheap" "util/indexedbheap.lua"
Module "util.xpcall" "util/xpcall.lua"
Module "util.array" "util/array.lua"
Module "util.format" "util/format.lua"
Module "util.promise" "util/promise.lua"
Module "net.adns"              "net/unbound.lua"
Module "util.dns" "util/dns.lua"
Module "net.server"		"net/server_select.lua"
Module "util.xmppstream"	"util/xmppstream.lua"
Module "util.jid"		"util/jid.lua"
Module "util.events"		"util/events.lua"
Module "util.dataforms"		"util/dataforms.lua"
Module "util.caps"		"util/caps.lua"
Module "util.vcard"		"util/vcard.lua"
Module "util.logger"		"util/logger.lua"
Module "util.datetime"		"util/datetime.lua"
Module "util.json"		"util/json.lua"
Module "util.xml"		"util/xml.lua"
Module "util.rsm"       "util/rsm.lua"
Module "util.random"       "util/random.lua"
Module "util.ip"       "util/ip.lua"
Module "util.hex" "util/hex.lua"
Module "util.net" "libs/net.lua"
Module "util.sslconfig" "util/sslconfig.lua"
Module "util.paths"     "util/paths.lua"
Module "util.mathcompat" "util/mathcompat.lua"
Module "util.dnsregistry" "util/dnsregistry.lua"
Module "net.tls_luasec"   "net/tls_luasec.lua"

Module "util.sasl.scram"       "util/sasl/scram.lua"
Module "util.sasl.plain"       "util/sasl/plain.lua"
Module "util.sasl.anonymous"   "util/sasl/anonymous.lua"
Module "util.sasl.oauthbearer" "util/sasl/oauthbearer.lua"

-- Verse plugins
plugins = {
	-- Login
	"tls", "sasl", "bind", -- "session", "legacy", "compression";
	-- Reliability
	"smacks", "keepalive";
	-- Queries
	"disco", "version", "ping", "uptime", "time";
	-- Privacy control
	"blocking";
	-- Jingle / file transfer
	"jingle", "jingle_ft", "jingle_s5b", "proxy65", "jingle_ibb";
	-- Pubsub
	"pubsub", "pep";
	-- Command and control
	"adhoc";
	-- Basics
	"presence", "private", "roster", "register";
	-- MUC
	"groupchat";
	-- vCard
	"vcard", "vcard_update";
	-- Carbons
	"carbons";

	"archive";
	"browsing";
}

for _, plugin in ipairs(plugins) do
	Module("verse.plugins."..plugin)("plugins/"..plugin..".lua")
end
	
Module "util.http" "util/http.lua"
Module "net.http.parser" "net/http/parser.lua"
Module "net.http" "net/http.lua"
Module "util.x509" "util/x509.lua"

Module "verse.bosh" "bosh.lua"

if GetOption "internal-bit-module" then
	Module "bit" "libs/bit.lua"
end

Module "verse.client" "client.lua"
Module "verse.component" "component.lua"

-- Main verse file
Main "init.lua"

mercurial