aboutsummaryrefslogtreecommitdiffstats
path: root/util
Commit message (Collapse)AuthorAgeFilesLines
...
* | | util.startup: Handle missing nparams field from debug info (not present in 5.1)Matthew Wild2020-10-111-2/+3
| | |
* | | util.startup: Include arguments in function string representationKim Alvefur2020-10-091-2/+8
| | | | | | | | | | | | | | | | | | | | | Improves usability of the console when digging around the internals. No specific rationale for the function<file:line>(args) format, it looked best of the variants I tried.
* | | util.startup: Retrieve less data for function string representationKim Alvefur2020-10-091-1/+1
| | | | | | | | | | | | debug.getinfo(f) collects more info than what is needed here.
* | | util.startup: Save the path used by the installer to prosody.pathsKim Alvefur2020-10-071-0/+1
| | | | | | | | | | | | | | | | | | Makes it easier for other parts of the code to use this for things, such as determining whether a certain module is from this path or from elsewhere.
* | | util.startup: Fix startup failure if CFG_DATADIR is unsetKim Alvefur2020-10-051-1/+1
| | | | | | | | | | | | As is normal when running from source
* | | util.startup: Re-enable installer path setupKim Alvefur2020-10-051-2/+2
| | |
* | | util.startup: Put 'installer_plugin_path' under data directory by defaultKim Alvefur2020-10-051-1/+1
| | | | | | | | | | | | | | | Fixes issue where it ends up creating this in $PWD, which might be ~prosody, ~you or /, depending on how it's invoked.
* | | util.prosodyctl: Simplify luarocks invocationKim Alvefur2020-10-051-7/+3
| | |
* | | util.prosodyctl: Move hardcoded luarocks server into prosodyctlKim Alvefur2020-10-051-2/+2
| | | | | | | | | | | | To be replaced with config option in future commit
* | | util.prosodyctl: Flip argument orderKim Alvefur2020-10-051-1/+1
| | | | | | | | | | | | | | | "verb subject" feels better than "subject verb", especially since the subject (module) is optional.
* | | util.prosodyctl: Construct luarocks command line with templatesKim Alvefur2020-10-051-2/+7
| | | | | | | | | | | | More flexible and safer wrt escaping
* | | util.pluginloader: Look for module libs in mod_plugin/lib.luaKim Alvefur2020-10-051-0/+3
| | | | | | | | | | | | | | | Luarocks can't be told to install something as foo.lib.lua AFAIK, so instead let's try mod_bar/foo.lua
* | | util.pluginloader: Look for top level mod_something.lua in luarocks-style treeKim Alvefur2020-10-051-0/+1
| | |
* | | util.pluginloader: Extract Lua version onceKim Alvefur2020-10-051-1/+1
| | | | | | | | | | | | It's not going to change while the module is loaded.
* | | util.xml: Fix float formatting of line and columns in error (on Lua 5.3+)Kim Alvefur2020-10-031-1/+1
| | |
* | | Merge 0.11->trunkMatthew Wild2020-09-301-1/+1
|\| |
| * | util.indexedbheap: Fix heap datastructure corruption in ↵Waqas Hussain2020-09-291-1/+1
| |/ | | | | | | :reschedule(smaller_value)
| * util.startup: Configure the GC on startup, using the config or built-in defaultsMatthew Wild2020-06-151-0/+17
| |
| * util.gc: Linter fixes [luacheck]Matthew Wild2020-06-151-2/+1
| |
| * util.gc: New module for configuring the Lua garbage collectorMatthew Wild2020-06-151-0/+50
| |
* | util.error: Drop registry initialization with namespace as keyKim Alvefur2020-09-281-4/+0
| | | | | | | | Enough complexity with compact vs normal and with/without namespace
* | util.error: Expand compact registries into normal form internallyKim Alvefur2020-09-281-8/+34
| | | | | | | | Also the exposed form on the table returned from init()
* | util.error: Add a "compact mode" for registriesKim Alvefur2020-09-281-4/+7
| | | | | | | | Inspired by the older registry in pubsub.lib.lua
* | util.error: Expose source and registry as fields on the registry objectKim Alvefur2020-09-281-0/+2
| | | | | | | | For access, e.g. to identify and compare errors later
* | util.error: Turns out <gone> wasn't alone, there's also <redirect>Kim Alvefur2020-09-281-2/+7
| |
* | util.error: Pass converted stanza errors throguh new()Kim Alvefur2020-09-271-6/+3
| | | | | | | | In order to benefit from common processing
* | util.serialization: Let freeze metamethod return a literal stringKim Alvefur2020-09-261-0/+4
| | | | | | | | | | Enables custom serialization, such as creating a datatype that serializes into a variable reference.
* | util.error: Collect Application-Specific Conditions from stanza errorsKim Alvefur2020-09-261-2/+3
| |
* | util.error: Add special case handling of <gone> with an URIKim Alvefur2020-09-261-0/+3
| |
* | util.error: Default error originator to stanza senderKim Alvefur2020-09-261-1/+2
| | | | | | | | | | The @by attribute is primarily useful for errors caused by intermediate entities.
* | util.error: Extract error originator from stanza errorsKim Alvefur2020-09-261-1/+6
| |
* | util.stanza: Extract Application-Specific Condition from errorsKim Alvefur2020-09-261-6/+8
| | | | | | | | API change
* | util.stanza: Support Application-Specific Conditions in util.errorKim Alvefur2020-09-261-0/+5
| |
* | util.stanza: Get 'by' from context insteadKim Alvefur2020-09-261-1/+1
| | | | | | | | | | | | | | Zash> <error by=?> should go where? extra.by? context? source? Zash> In Prosody this would usually be module.host or a bare user/room JID MattJ> Zash: context MattJ> context.by, basically the opposite of context.actor
* | util.stanza: Support inclusion of <gone> URI from util.error objectKim Alvefur2020-09-261-2/+8
| |
* | util.stanza: Support getting 'by' from util.error objectKim Alvefur2020-09-261-0/+3
| |
* | util.stanza: Reorder code to prepare for extracting 'by' from util.errorKim Alvefur2020-09-261-3/+3
| |
* | util.error: Add well-known field 'extra'Kim Alvefur2020-09-261-0/+2
| | | | | | | | | | A place for various extra fields and edge cases of the stanza error data model, e.g. the URI field of <gone>
* | util.error: Simplify error creation flowMatthew Wild2020-09-251-1/+13
| |
* | util.error: Switch coerce() to use new() and change 'native' to context ↵Matthew Wild2020-09-251-5/+3
| | | | | | | | field 'wrapped_error'
* | util.error: Have init() return an object to allow API extensibility via ↵Matthew Wild2020-09-251-3/+5
| | | | | | | | additional methods
* | util.error: Minor tweaks to error creation code to prepare for future changesMatthew Wild2020-09-251-2/+5
| |
* | util.error: Simplify error creation - remove ability to set context from ↵Matthew Wild2020-09-251-1/+1
| | | | | | | | templates, and remove default context
* | util.error: Add unique 'instance_id' to error objectsMatthew Wild2020-09-251-0/+2
| |
* | util.dataforms: Add support for validating (integer) rangesKim Alvefur2019-11-211-1/+13
| |
* | util.interpolation: Add '~' as the opposite of '&' (render sub-block if falsy)Matthew Wild2020-09-091-0/+3
| | | | | | | | One more magic character consumed!
* | util.helpers: when logging events, log individual handler callsMatthew Wild2020-09-031-0/+15
| |
* | util.events: Add set_debug_hook() methodMatthew Wild2020-09-031-1/+19
| | | | | | | | | | | | Hook signature: ret = debug_hook(handler, event_name, event_data)
* | util.jid: Fix special escaping of '\' per XEP-0106Kim Alvefur2020-08-281-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | From XEP-0106 §2. Requirements: > in certain circumstances, the escaping character itself ("\") might > also be escaped Later in §4.2 Address Transformation Algorithm it is stated that the backslash would only be escaped if it forms an escape sequence. Thus '\foo' is unaltered but '\20' must be escaped into '\5c20'. Thanks to lovetox and jonas’ for brining up.
* | util.error: Add a wrapper for common parametersKim Alvefur2020-08-281-0/+7
| | | | | | | | Lets you set up source and registry once per module