aboutsummaryrefslogtreecommitdiffstats
path: root/util
Commit message (Collapse)AuthorAgeFilesLines
* util.dbuffer: dynamic string bufferMatthew Wild2020-06-262-0/+178
| | | | | | | | | | | | | | Similar to util.ringbuffer (and shares almost identical API). Differences: - size limit is optional and dynamic - does not allocate a fixed buffer of max_size bytes - focus on simply storing references to existing string objects where possible, avoiding unnecessary allocations - references are still stored in a ring buffer to enable use as a fast FIFO Optional second parameter to new() provides the number of ring buffer segments. On Lua 5.2 on my laptop, a segment is ~19 bytes. If the ring buffer fills up, the next write will compact all strings into a single item.
* util.dns: Update RR types from IANA registryKim Alvefur2020-06-251-17/+23
|
* util.prosodyctl.check: Use net.unbound for DNS if availableKim Alvefur2020-06-251-0/+3
| | | | Improves performance somewhat by avoiding the rate limiting in net.dns
* util.dependencies: Prefer net.unbound over net.adnsKim Alvefur2020-06-251-0/+5
|
* util.dependencies: Add awareness of luaunboundKim Alvefur2020-06-251-0/+8
|
* util.dns: Library for decoding DNS recordsKim Alvefur2019-03-091-0/+271
| | | | Imported from luaunbound-prosody 5f7c771138b1
* Merge 0.11->trunkKim Alvefur2020-06-231-1/+0
|\
| * util.startup: Remove duplicated initialization of logging (fix #1527)Kim Alvefur2020-06-221-1/+0
| |
* | util.adminstream: Prevent closure on read timeoutKim Alvefur2020-06-181-1/+1
| |
* | util.prosodyctl.shell: Collect extra return valuesKim Alvefur2020-06-171-1/+1
| | | | | | | | Forgot in previous commit
* | util.prosodyctl.shell: Handle argument parsing errorsKim Alvefur2020-06-171-0/+9
| | | | | | | | | | | | While almost identical to the handling in util.startup, this seems more appropriate. It would also simplify if shell-specific options need to be handled in the future.
* | util.argparse: Move exiting and error to util.startupKim Alvefur2020-06-172-6/+13
| | | | | | | | | | | | | | | | It's not so nice to have a library that exits the entire application from under you, so this and the error reporting belongs in util.startup. The argparse code was originally in util.startup but moved out in 1196f1e8d178 but the error handling should have stayed.
* | util.gc: Linter fixes [luacheck]Matthew Wild2020-06-151-2/+1
| |
* | util.startup: Configure the GC on startup, using the config or built-in defaultsMatthew Wild2020-06-151-0/+17
| |
* | util.gc: New module for configuring the Lua garbage collectorMatthew Wild2020-06-151-0/+50
| |
* | util.prosodyctl.check: Fix traceback by handling SRV '.' target toKim Alvefur2020-06-141-0/+8
| | | | | | | | | | The IDNA to-ASCII operation returns nil in this case, which causes an error in net.dns
* | util.async: Don't attempt to close thread if not created yetMatthew Wild2020-06-141-1/+1
| |
* | util.async: Call coroutine.close() on dead threads (Lua 5.4)Matthew Wild2020-06-141-1/+5
| |
* | util.async: Rename wait -> wait_for (w/compat)Matthew Wild2020-06-131-2/+3
| | | | | | | | Agreed this name is clearer and wait_for(thing) reads well in code.
* | util.statsd: Update for API changeKim Alvefur2020-06-111-5/+5
| | | | | | | | See change d75d805c852f to util.statistics
* | util.promise: Add all_settled, which follows semantics of allSettled from ES2020Matthew Wild2020-06-081-0/+22
| |
* | util.sslconfig: Process TLS 1.3-specific cipher listKim Alvefur2020-06-071-0/+3
| | | | | | | | Same way as with other cipher list options
* | util.human.io: Fix right-alignmentKim Alvefur2020-06-061-1/+1
| |
* | Merge 0.11->trunkKim Alvefur2020-06-062-1/+5
|\|
| * util.sasl.plain: Apply saslprep to stored passwordKim Alvefur2020-05-221-1/+1
| | | | | | | | | | | | Fixes something like #1560 here too. The password sent by the user already had saslprep applied.
| * util.sasl.scram: Apply saslprep before hashing password, fixes #1560Kim Alvefur2020-05-221-0/+4
| |
| * util.prosodyctl: Tell prosody do daemonize via command line flag (fixes #1514)Kim Alvefur2020-01-261-2/+2
| | | | | | | | Backport of 88be11e9f9b9
* | util.human.io.table: Allow a map callaback per columnKim Alvefur2020-06-041-1/+1
| | | | | | | | | | | | This allows e.g. mapping booleans to "yes" or "no", specific number formatting or generating virtual columns. All while not mutating the underlying data or creating additional temporary tables.
* | util.human.io: Consider separator when calculating remaining widthKim Alvefur2020-06-041-0/+3
| |
* | util.human.io: Use literal ellipsis instead of \u escapeKim Alvefur2020-06-041-1/+1
| | | | | | | | For compat with Lua 5.2 and before
* | util.human.io: Replace overflow with ellipsisKim Alvefur2020-06-041-1/+3
| |
* | util.human.io: Draw a separator between columnsKim Alvefur2020-06-041-2/+3
| |
* | util.dependencies: Use util.human.io.table to replace custom layout codeMatthew Wild2020-06-041-25/+22
| |
* | util.human.io: Remove padding option and use $COLUMNS as default widthMatthew Wild2020-06-041-4/+3
| |
* | util.human.units: Factor out function for getting multiplierKim Alvefur2020-06-041-9/+15
| |
* | util.adminstream: Set a read timeout handlerKim Alvefur2020-06-041-0/+9
| | | | | | | | So that net.server doesn't close the connection on inactivity.
* | util.human.io: table: Fix title printing when columns use named keysMatthew Wild2020-06-041-2/+3
| |
* | util.array: pluck: Support default value to avoid holesMatthew Wild2020-06-041-2/+6
| |
* | util.human.io: table: Return title row when no row data passedMatthew Wild2020-06-031-0/+5
| |
* | util.human.io: table: switch row function to simply returning prepared row ↵Matthew Wild2020-06-031-5/+6
| | | | | | | | string
* | util.adminstream: Fire event based on stanza name too for convenienceMatthew Wild2020-06-031-1/+3
| |
* | util.human.io: Add padleft, padright and a table printing functionMatthew Wild2020-06-031-0/+53
| |
* | util.human.units: Handle lack of math.log(n, base) on Lua 5.1Kim Alvefur2020-06-031-0/+8
| |
* | util.human.units: Put math functions into localsKim Alvefur2020-06-031-3/+9
| | | | | | | | | | Primarily because the next commit will deal with math.log behaving differently on Lua 5.1 and that's eaiser with locals.
* | util.human.units: Handle location of unpack() in Lua 5.1Kim Alvefur2020-06-031-1/+3
| |
* | util.human.units: A library for formatting numbers with SI unitsKim Alvefur2019-01-041-0/+58
| |
* | util.statistics: Unify API of methods to include a config tableKim Alvefur2019-01-041-14/+23
| | | | | | | | | | The primary goal here is to allow specifying an unit that each statistic is measured in.
* | util.prosodyctl.shell: Save readline historyKim Alvefur2020-06-021-0/+7
| |
* | util.adminstream: Import net.server [luacheck]Matthew Wild2020-06-021-0/+1
| |
* | util.prosodyctl.shell, util.adminstream: Move connection logic into ↵Matthew Wild2020-06-022-42/+47
| | | | | | | | adminstream for easier reuse