Software /
code /
prosody
Comparison
plugins/mod_storage_sql.lua @ 13242:0d3881bf29a8
mod_storage_sql: Spell out missing dependencies
Using util.dependencies appeared to cause problems with running tests in
Busted, so this also removes that and uses pcall directly.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 22 Jul 2023 16:15:48 +0200 |
parent | 13241:0419de4e4db1 |
child | 13318:4a437dd62cc9 |
comparison
equal
deleted
inserted
replaced
13241:0419de4e4db1 | 13242:0d3881bf29a8 |
---|---|
1 | 1 |
2 -- luacheck: ignore 212/self | 2 -- luacheck: ignore 212/self |
3 | 3 |
4 local deps = require "prosody.util.dependencies"; | |
5 local cache = require "prosody.util.cache"; | 4 local cache = require "prosody.util.cache"; |
6 local json = require "prosody.util.json"; | 5 local json = require "prosody.util.json"; |
7 local sqlite = deps.softreq "prosody.util.sqlite3"; | |
8 local dbisql = (sqlite and deps.softreq or require) "prosody.util.sql"; | |
9 local xml_parse = require "prosody.util.xml".parse; | 6 local xml_parse = require "prosody.util.xml".parse; |
10 local uuid = require "prosody.util.uuid"; | 7 local uuid = require "prosody.util.uuid"; |
11 local resolve_relative_path = require "prosody.util.paths".resolve_relative_path; | 8 local resolve_relative_path = require "prosody.util.paths".resolve_relative_path; |
12 local jid_join = require "prosody.util.jid".join; | 9 local jid_join = require "prosody.util.jid".join; |
13 | 10 |
14 local is_stanza = require"prosody.util.stanza".is_stanza; | 11 local is_stanza = require"prosody.util.stanza".is_stanza; |
15 local t_concat = table.concat; | 12 local t_concat = table.concat; |
13 | |
14 local have_dbisql, dbisql = pcall(require, "prosody.util.sql"); | |
15 local have_sqlite, sqlite = pcall(require, "prosody.util.sqlite3"); | |
16 if not have_dbisql then | |
17 module:log("debug", "Could not load LuaDBI, error was: %s", dbisql) | |
18 dbisql = nil; | |
19 end | |
20 if not have_sqlite then | |
21 module:log("debug", "Could not load LuaSQLite3, error was: %s", sqlite) | |
22 sqlite = nil; | |
23 end | |
24 if not (have_dbisql or have_sqlite) then | |
25 module:log("error", "LuaDBI or LuaSQLite3 are required for using SQL databases but neither are installed"); | |
26 module:log("error", "Please install at least one of LuaDBI and LuaSQLite3. See https://prosody.im/doc/depends"); | |
27 error("No SQL library available") | |
28 end | |
16 | 29 |
17 local noop = function() end | 30 local noop = function() end |
18 local unpack = table.unpack; | 31 local unpack = table.unpack; |
19 local function iterator(result) | 32 local function iterator(result) |
20 return function(result_) | 33 return function(result_) |