Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | util.serialization: Cache default serialization instance (fixes #1389) | Kim Alvefur | 2019-07-08 | 1 | -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 Alvefur | 2019-05-30 | 1 | -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 condition | Kim Alvefur | 2019-05-21 | 1 | -1/+5 |
| | |||||
* | util.random: Coerce error to string (thanks waqas) | Kim Alvefur | 2019-05-18 | 1 | -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 Alvefur | 2019-05-18 | 1 | -1/+5 |
| | |||||
* | util.ip: Add missing netmask for 192.168/16 range (fixes #1343) | Kim Alvefur | 2019-04-14 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Validate node configuration on node creation (fixes #1328) | Kim Alvefur | 2019-03-03 | 1 | -1/+10 |
| | |||||
* | util.pubsub: Add support for requesting multiple specific items (needed for ↵ | Kim Alvefur | 2019-01-28 | 1 | -8/+13 |
| | | | | #1305) | ||||
* | util.startup: Always reload logging after config (fixes #1284) | Kim Alvefur | 2019-01-06 | 1 | -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 Alvefur | 2018-12-29 | 1 | -0/+14 |
| | |||||
* | util.datetime: Make sure timezone difference is calculated correctly (fixes ↵ | Kim Alvefur | 2018-12-09 | 1 | -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 Alvefur | 2018-12-01 | 1 | -27/+17 |
| | |||||
* | util.stanza: Validate input to clone() (with brief tests) | Kim Alvefur | 2018-11-17 | 1 | -2/+9 |
| | |||||
* | util.sql: Switch from hacky multi-arg xpcall implementation to util.xpcall | Kim Alvefur | 2018-11-11 | 1 | -5/+4 |
| | |||||
* | util.sslconfig: Recognise TLS 1.3 as a protocol version | Kim Alvefur | 2018-10-28 | 1 | -1/+1 |
| | | | | This enables it to understand protocol = "tlsv1_3+" | ||||
* | util.serialization: Encode non-fatal error in way that can be restored | Kim Alvefur | 2018-10-27 | 1 | -1/+1 |
| | | | | It could previously encode to eg `{ [nil] = ... }` which doesn't get decoded | ||||
* | util.serialization: Rename non-fatal fallback handler for clarity | Kim Alvefur | 2018-10-27 | 1 | -3/+3 |
| | |||||
* | util.serialization: Disable use of unquoted table keys by default | Kim Alvefur | 2018-10-27 | 1 | -1/+3 |
| | | | | For safety against future new keywords | ||||
* | util.serialization: Add option for allowing multiple references to the same ↵ | Kim Alvefur | 2018-10-27 | 1 | -0/+10 |
| | | | | table (but not cycles) | ||||
* | util.serialization: Separate errors for multiple table references and max depth | Kim Alvefur | 2018-10-27 | 1 | -2/+5 |
| | |||||
* | util.serialization: Make maximum table depth configurable | Kim Alvefur | 2018-10-27 | 1 | -1/+2 |
| | |||||
* | Many things: switch from hacky multi-arg xpcall implementations to a ↵ | Matthew Wild | 2018-10-26 | 3 | -13/+12 |
| | | | | standard util.xpcall | ||||
* | util.xpcall, util.compat: Add non-hacky multi-argument xpcall() for Lua 5.1 | Matthew Wild | 2018-10-26 | 1 | -0/+9 |
| | |||||
* | util.dependencies: Remove ztact compatability warning | Matthew Wild | 2018-10-26 | 1 | -13/+0 |
| | |||||
* | util.promise: Switch from pcall to xpcall to get tracebacks on exceptions | Matthew Wild | 2018-10-26 | 1 | -1/+1 |
| | |||||
* | util.promise: Remove the non-standard ability to pass a promise to reject() | Matthew Wild | 2018-10-26 | 1 | -3/+1 |
| | |||||
* | util.promise: Fix missing parameters | Matthew Wild | 2018-10-25 | 1 | -2/+2 |
| | |||||
* | util.promise: Ensure chained promises always receive a value/rejection even ↵ | Matthew Wild | 2018-10-25 | 1 | -22/+23 |
| | | | | if an intermediate promise has no handlers | ||||
* | util.promise: Export is_promise() | Matthew Wild | 2018-10-25 | 1 | -0/+1 |
| | |||||
* | util.promise: Remove debug print and assert | Matthew Wild | 2018-10-25 | 1 | -1/+0 |
| | |||||
* | util.pubsub: Clarify comment about return value | Kim Alvefur | 2018-10-21 | 1 | -1/+1 |
| | |||||
* | util.array: Add __div for parity with util.set | Matthew Wild | 2018-10-21 | 1 | -0/+19 |
| | |||||
* | util.array: Break long line | Matthew Wild | 2018-10-19 | 1 | -1/+5 |
| | |||||
* | util.promise: Add promise.try() | Matthew Wild | 2018-10-18 | 1 | -0/+6 |
| | |||||
* | util.pubsub: Allow publishing with a config that should be used as defaults only | Matthew Wild | 2018-10-18 | 1 | -4/+7 |
| | |||||
* | util.promise: Add a string representation | Kim Alvefur | 2018-10-18 | 1 | -0/+4 |
| | |||||
* | util.promise: Add promise:finally() | Matthew Wild | 2018-10-18 | 1 | -0/+6 |
| | |||||
* | util.promise: Some code relocation | Matthew Wild | 2018-10-18 | 1 | -23/+23 |
| | |||||
* | util.promise: Also support automatic resolution by returning a promise from ↵ | Matthew Wild | 2018-10-18 | 1 | -1/+3 |
| | | | | | | | an on_reject handler Originally unimplemented because it wasn't clear to me what the correct behaviour was, but the A+ spec is clear that both onFulfilled and onRejected may return a promise. | ||||
* | util.promise: Fix promise.reject() to return a rejected promise, and fix ↵ | Matthew Wild | 2018-10-18 | 1 | -1/+1 |
| | | | | buggy test for it | ||||
* | mod_http: Move normalize_path to util.http | Kim Alvefur | 2018-10-14 | 1 | -0/+11 |
| | |||||
* | util.dependencies: Add compat code for normalization of socket constructors | Kim Alvefur | 2018-10-12 | 1 | -0/+4 |
| | | | | | | Old LuaSocket had only tcp() which was IPv4-only. LuaSocket ~3.0 adds a tcp6() that creates a IPv6 socket. Some version moves tcp() to tcp4() and adds an IP-version-agnostic tcp() constructor. | ||||
* | util.stanza: Set preserialize as freeze metamethod | Kim Alvefur | 2018-10-12 | 1 | -0/+2 |
| | |||||
* | util.set: Add freeze metamethod | Kim Alvefur | 2018-10-12 | 1 | -0/+8 |
| | |||||
* | util.array: Add freeze metamethod | Kim Alvefur | 2018-10-12 | 1 | -0/+2 |
| | |||||
* | util.serialization: Remove encoding of very large or very small numbers in ↵ | Kim Alvefur | 2018-10-12 | 1 | -12/+1 |
| | | | | | | | | scientific notation Also difficult to describe this option, easier to remove it. %.18g covers a very large range of numbers | ||||
* | util.serialization: Simpler metatable pre-processing | Kim Alvefur | 2018-10-12 | 1 | -14/+12 |
| | | | | It was too difficult to describe what it did. | ||||
* | util.serialization: Use '=' prefix for chunk source description | Kim Alvefur | 2018-10-11 | 1 | -1/+1 |
| | | | | Like in bd5e4485a245 | ||||
* | util.serialization: Make check of prefix for optional hex encoding stricter | Kim Alvefur | 2018-10-11 | 1 | -1/+1 |
| | |||||
* | util.serialization: Make errors fatal by default (like the previous ↵ | Kim Alvefur | 2018-10-11 | 1 | -1/+1 |
| | | | | implementation) |