aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* net.server: Swich method for connecting sockets with remotesKim Alvefur2018-10-123-3/+3
| | | | | | | LuaSocket TCP sockets have have both :connect and :setpeername, which are the exact same function, however UDP sockets only have :setpeername. Switching to :setpeername allows most of this code to be generic wrt TCP/UDP.
* net.server_epoll: Check return conditions of early socket setupKim Alvefur2018-10-121-2/+4
|
* net.server_epoll: Add support for the conn_type argument to addclientKim Alvefur2018-10-121-8/+16
|
* net.resolvers.basic: Suffix IPv4 TCP socket types with '4' to match eg 'tcp6'Kim Alvefur2018-10-121-2/+2
|
* net.server: Remove socket constructor fallbackKim Alvefur2018-10-122-2/+2
| | | | Should no longer be needed
* util.dependencies: Add compat code for normalization of socket constructorsKim Alvefur2018-10-121-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.
* mod_storage_sql: Change prosodyarchive_index to be non-unique (fixes #1087)Matthew Wild2018-10-111-8/+25
| | | | | | MySQL requires that the first 20 bytes are unique, even if they differ after the first 20 bytes. This breaks e.g. pubsub/PEP nodes longer than 20 characters that have common prefixes.
* mod_storage_sql: Have :users() throw an error on failure instead of ↵Matthew Wild2018-10-111-1/+1
| | | | returning non-iterator values
* storagemanager tests: Also cover memory driverKim Alvefur2018-10-121-0/+3
|
* mod_c2s: Fix fallback for missing session loggerKim Alvefur2018-10-121-1/+1
|
* util.stanza: Set preserialize as freeze metamethodKim Alvefur2018-10-121-0/+2
|
* util.set: Add freeze metamethodKim Alvefur2018-10-121-0/+8
|
* util.array: Add freeze metamethodKim Alvefur2018-10-121-0/+2
|
* util.serialization: Remove encoding of very large or very small numbers in ↵Kim Alvefur2018-10-121-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-processingKim Alvefur2018-10-122-14/+20
| | | | It was too difficult to describe what it did.
* util.serialization: Use '=' prefix for chunk source descriptionKim Alvefur2018-10-111-1/+1
| | | | Like in bd5e4485a245
* util.serialization: Make check of prefix for optional hex encoding stricterKim Alvefur2018-10-111-1/+1
|
* util.serialization: Test table keys that are Lua keywordsKim Alvefur2018-10-111-0/+1
|
* util.serialization: Test that it rejects tables wit cyclesKim Alvefur2018-10-111-0/+7
|
* util.serialization: Make errors fatal by default (like the previous ↵Kim Alvefur2018-10-112-2/+12
| | | | implementation)
* mod_storage_sql: Workaround MySQL not supporting LIMIT subquery in archive ↵Matthew Wild2018-10-111-3/+9
| | | | truncate operations, fixes #1200
* util.poll: Fix inverted logicKim Alvefur2018-10-111-1/+1
|
* net.server_epoll: Assert successful creation of util.poll handleKim Alvefur2018-10-111-1/+1
|
* util.poll: Handle failed epoll FD creationKim Alvefur2018-10-111-1/+12
|
* util.poll: Early return from __gc in case of no valid epoll FDKim Alvefur2018-10-111-0/+4
| | | | | This could happen if the epoll FD has already been closed or the epoll_create call failed
* net.server_epoll: Update copyright yearKim Alvefur2018-10-111-1/+1
|
* net.server: Require IP address as argument to addclient (no DNS names)Kim Alvefur2018-10-113-19/+34
| | | | The net.connect API should be used to resolve DNS names first
* storagemanager tests: Remove debug print()Matthew Wild2018-10-111-1/+0
|
* storagemanager tests: Add many more archive tests, including (failing) cases ↵Matthew Wild2018-10-111-0/+105
| | | | for #1200 and #1073
* storagemanager tests: Add additional archive query testsMatthew Wild2018-10-111-18/+103
|
* .luacov: Add config for luacov, exclude spec/Matthew Wild2018-10-111-0/+3
|
* mod_storage_memory: Switch from '@' prefix to '=' for chunks, '@' is used to ↵Matthew Wild2018-10-111-3/+3
| | | | indicate a source file name only
* storagemanager tests: Add some additional checksMatthew Wild2018-10-101-0/+12
|
* storagemanager tests: Add initial basic tests for archive storesMatthew Wild2018-10-101-18/+59
|
* mod_net_multiplex: Silence luacheck warningsKim Alvefur2018-10-101-6/+6
|
* mod_net_multiplex: Remove exception from luacheckKim Alvefur2018-10-101-1/+0
|
* mod_http_files: Rename variable to avoid name clash [luacheck]Kim Alvefur2018-10-101-3/+3
|
* mod_http_files: Silence luacheck warnings related to config variablesKim Alvefur2018-10-101-0/+1
|
* mod_http_files: Remove exception from luacheckKim Alvefur2018-10-101-1/+0
|
* mod_privacy: Remove exception from luacheckKim Alvefur2018-10-101-1/+0
| | | | | Plugin has been removed and replaced by a tombstone, no point in excluding it from linting
* mod_storage_sql: Remove unused function argument [luacheck]Kim Alvefur2018-10-101-1/+1
| | | | What was the intent of this argument anyways?
* mod_storage_sql: Remove exception from luacheckKim Alvefur2018-10-101-1/+0
|
* util.promise tests: Fix luacheck warningsMatthew Wild2018-10-101-7/+6
|
* util.promise: ES6-like API for promisesMatthew Wild2018-10-102-0/+395
|
* MUC: Check that a room password is set before verifying password supplied by ↵Michel Le Bihan2018-10-091-0/+1
| | | | user
* mod_admin_telnet: Allow viewing HTTP event listeners via debug:events('http')Matthew Wild2018-10-091-2/+5
|
* mod_register_ibr: Include password in user-registering event, to allow e.g. ↵Matthew Wild2018-10-091-1/+1
| | | | password policy enforcement
* Fix storage tests so they run, but not by defaultMatthew Wild2018-10-012-7/+17
|
* util.pubsub tests: Ensure necessary tests run in the defined orderMatthew Wild2018-10-011-0/+8
|
* util.poll: Increase max epoll events per callKim Alvefur2018-10-081-1/+1
| | | | | | | | | | This makes the struct roughly the same size in both epoll and select mode (64bit). There doesn’t seem to be much guidance on an appropriate size, it does not seem to matter too much since if there are more events they will simply show up in the next epoll_wait call. The number of exactly concurrent events should be fairly low most of the time anyways.