aboutsummaryrefslogtreecommitdiffstats
path: root/util
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | util.queue: Update :items() to consistently use private data directlyMatthew Wild2019-03-231-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | It will perform better this way, and we were accessing private variables already within the iterator.
| * | | | util.queue: Add 'consume()' convenience iteratorMatthew Wild2019-03-231-0/+3
| | | | |
| * | | | util.startup: Don't die if there are no config warnings to log (thanks buildbot)Matthew Wild2019-03-201-2/+4
| | | | |
| * | | | util.startup: Log configuration warnings at startupMatthew Wild2019-03-201-0/+6
| | | | |
| * | | | util.startup: Give function a more generic name so it can apply to all warningsMatthew Wild2019-03-201-3/+3
| | | | |
| * | | | util.serialization: Use util.hexKim Alvefur2019-03-171-9/+2
| | | | |
| * | | | util.serialization: Allow overriding table iteratorKim Alvefur2019-03-171-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Could be useful to eg swap it out with sorted_pairs to get a stable serialization. Default to next() wrapper to avoid metatable tricks from pairs().
| * | | | util.serialization: Optimize handling of last table separatorKim Alvefur2019-03-171-7/+5
| | | | | | | | | | | | | | | | | | | | Fewer next() calls and a step towards allowing use of a different iterator.
| * | | | Merge 0.11->trunkKim Alvefur2019-03-041-1/+10
| |\ \ \ \
| * \ \ \ \ Merge 0.11->trunkKim Alvefur2019-01-281-8/+13
| |\ \ \ \ \
| * | | | | | util.http: Fix decoding of uppercase URL encoded charsKim Alvefur2019-01-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Broken in 1af5106a2c34
| * | | | | | util.prosodyctl: Allow passing path to Lua runtime to the start() functionKim Alvefur2019-01-101-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default the shebang is used. Being able to override it is useful in cases where the shebang does not match the configured runtime.
| * | | | | | Merge 0.11->trunkKim Alvefur2019-01-061-0/+3
| |\ \ \ \ \ \
| * | | | | | | util.http: Pre-generate urlencoding mappings (optimization)Kim Alvefur2019-01-061-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Function calls are more expensive than table lookups
| * | | | | | | util.error: Add a function for creating an error object from an error stanzaKim Alvefur2018-12-301-0/+12
| | | | | | | |
| * | | | | | | util.error: Add new util library for structured errorsMatthew Wild2018-12-301-0/+40
| | | | | | | |
| * | | | | | | util.promise: Remove references to callbacks after settling promiseKim Alvefur2018-12-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to help the garbage collector.
| * | | | | | | Merge 0.11->trunkKim Alvefur2018-12-291-0/+14
| |\ \ \ \ \ \ \
| * | | | | | | | util.stanza: Require a type attribute for iq stanzasKim Alvefur2018-12-281-1/+7
| | | | | | | | |
| * | | | | | | | Merge 0.11->trunkKim Alvefur2018-12-091-1/+2
| |\ \ \ \ \ \ \ \
| * | | | | | | | | util.format: Serialize values for the %q formatKim Alvefur2018-10-121-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improves eg debug logs
| * | | | | | | | | lint: Remove use of the 143 error codeKim Alvefur2018-12-083-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Does not appear to be invoked by anything
| * | | | | | | | | util.iterators: Use pack from table.packKim Alvefur2018-12-081-3/+3
| | | | | | | | | |
| * | | | | | | | | util.format: Use pack from util.tableKim Alvefur2018-12-081-2/+3
| | | | | | | | | |
| * | | | | | | | | Merge 0.11->trunkKim Alvefur2018-12-021-27/+17
| |\ \ \ \ \ \ \ \ \
| * | | | | | | | | | util.format: Tweak how nil values are handledKim Alvefur2018-11-281-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because [<nil>] seems exsessive
* | | | | | | | | | | util.serialization: Cache default serialization instance (fixes #1389)Kim Alvefur2019-07-081-1/+6
| |_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most serialization uses still use the default serialize() and thus duplicate much of the setup, which negates some of the performance improvements of the rewrite.
* | | | | | | | | | util.sql: Ignore if tables and indices already exist on creation (fixes #1064)Kim Alvefur2019-05-301-0/+6
| |_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tested with SQLite3 3.16.2 and 3.27.2 and Postgres 11. MySQL does not support IF NOT EXISTS for indices so not handled here.
* | | | | | | | | util.random: Throw different error for EOL conditionKim Alvefur2019-05-211-1/+5
| | | | | | | | |
* | | | | | | | | util.random: Coerce error to string (thanks waqas)Kim Alvefur2019-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In theory this could happen in an EOF condition, which should be impossible with a read from /dev/urandom.
* | | | | | | | | util.random: Handle unlikely read errors from /dev/urandom (see #1313)Kim Alvefur2019-05-181-1/+5
| |_|_|_|_|_|_|/ |/| | | | | | |
* | | | | | | | util.ip: Add missing netmask for 192.168/16 range (fixes #1343)Kim Alvefur2019-04-141-1/+1
| |_|_|_|_|_|/ |/| | | | | |
* | | | | | | util.pubsub: Validate node configuration on node creation (fixes #1328)Kim Alvefur2019-03-031-1/+10
| |_|_|_|_|/ |/| | | | |
* | | | | | util.pubsub: Add support for requesting multiple specific items (needed for ↵Kim Alvefur2019-01-281-8/+13
| |_|_|_|/ |/| | | | | | | | | | | | | | #1305)
* | | | | util.startup: Always reload logging after config (fixes #1284)Kim Alvefur2019-01-061-0/+3
| |_|_|/ |/| | | | | | | | | | | | | | | This chancged in 6e24a69b03af likely because of confusion about the `reopen-log-files` event which was fired but never hooked.
* | | | util.pubsub: Restore subscription index from stored data (fixes #1281)Kim Alvefur2018-12-291-0/+14
| |_|/ |/| |
* | | util.datetime: Make sure timezone difference is calculated correctly (fixes ↵Kim Alvefur2018-12-091-1/+2
| |/ |/| | | | | | | | | | | #1262) If the two os.date() calls happen at either side of a second ticking over there would be a one second error in the calculation.
* | util.stanza: Deserialize stanza without mutating input (fixes #711)Kim Alvefur2018-12-011-27/+17
|/
* util.stanza: Validate input to clone() (with brief tests)Kim Alvefur2018-11-171-2/+9
|
* util.sql: Switch from hacky multi-arg xpcall implementation to util.xpcallKim Alvefur2018-11-111-5/+4
|
* util.sslconfig: Recognise TLS 1.3 as a protocol versionKim Alvefur2018-10-281-1/+1
| | | | This enables it to understand protocol = "tlsv1_3+"
* util.serialization: Encode non-fatal error in way that can be restoredKim Alvefur2018-10-271-1/+1
| | | | It could previously encode to eg `{ [nil] = ... }` which doesn't get decoded
* util.serialization: Rename non-fatal fallback handler for clarityKim Alvefur2018-10-271-3/+3
|
* util.serialization: Disable use of unquoted table keys by defaultKim Alvefur2018-10-271-1/+3
| | | | For safety against future new keywords
* util.serialization: Add option for allowing multiple references to the same ↵Kim Alvefur2018-10-271-0/+10
| | | | table (but not cycles)
* util.serialization: Separate errors for multiple table references and max depthKim Alvefur2018-10-271-2/+5
|
* util.serialization: Make maximum table depth configurableKim Alvefur2018-10-271-1/+2
|
* Many things: switch from hacky multi-arg xpcall implementations to a ↵Matthew Wild2018-10-263-13/+12
| | | | standard util.xpcall
* util.xpcall, util.compat: Add non-hacky multi-argument xpcall() for Lua 5.1Matthew Wild2018-10-261-0/+9
|
* util.dependencies: Remove ztact compatability warningMatthew Wild2018-10-261-13/+0
|