| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| | |
Fixes "Could not delete messages for room 'x': (nil)"
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This method would previously never delete the first (and only) item
since it works out which item should become the first item after the
trim operation, which doesn't make sense when all should be removed.
This also works as an optimization for when all the last item should be
trimmed, thus items should be removed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Behavior change: It becomes up to the authorization module whether to
allow requests. The default, mod_authz_internal, will allow users on the
*parent* host only, breaking use by some components.
Remaining question is whether to deprecate the `http_file_share_access`
setting or leave as a way to complement/bypass access control?
|
| |
| |
| |
| |
| |
| | |
Thought it was a case mismatch at first, fixed that, but it changed
nothing because the error was in the leaf part of the errors, not the
chain part.
|
| |
| |
| |
| |
| |
| | |
This removes the need to configure e.g. http_external_url or similar
settings in order to get correct URLs out of prosodyctl, as the API
depends on portmanager to know the actual ports that are used.
|
| |
| |
| |
| |
| |
| | |
This appears to have been a copy-paste of the grant revocation function,
or maybe the other way around. Either way, it deleted the whole grant
instead of the individual token as might be expected.
|
| |
| |
| |
| |
| | |
Using util.dependencies appeared to cause problems with running tests in
Busted, so this also removes that and uses pcall directly.
|
| |
| |
| |
| |
| | |
Probably a workaround for the lack of argument passing when using xpcall
in Lua 5.1, no longer relevant.
|
| |
| |
| |
| |
| |
| | |
This communicates the accepted values in case the config diverges from
them. Note that older documentation used an "admin" value behaving like
an alias to true, but this is no longer handled. Should it?
|
| |
| |
| |
| |
| | |
Passing something from module:get_option() to ipairs() suggests that the
option is a list of some sort.
|
| | |
|
| |
| |
| |
| | |
Because it makes sense and improves feedback via logging
|
| |
| |
| |
| | |
Missed this one in previous sweep
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Missed this one, was probably only looking for get_option_number
|
| | |
|
| |
| |
| |
| | |
Since it doesn't actually do strict typing :)
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Many of these fall into a few categories:
- util.cache size, must be >= 1
- byte or item counts that logically can't be negative
- port numbers that should be in 1..0xffff
|
| |
| |
| |
| | |
Improves readability ("1 day" vs 86400) and centralizes validation.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Using the new shift function in datamanager, either the oldest items are
removed or all the later items are moved into a new file that replaces
the old.
Hidden behind a feature flag for now.
|
|\| |
|
| |
| |
| |
| | |
Fixes use in PEP where the JID does not equal the bare domain.
|
| |
| |
| |
| |
| |
| | |
Removed in 536055476912 because it was not used anywhere else in the
file, but per the documentation it is meant to inform external upload
services of the expiry time of the upload itself.
|
| |
| |
| |
| |
| |
| |
| | |
This gives us more granular control over different types of user account.
Accounts registered by IBR get assigned prosody:registered by default, while
accounts provisioned by an admin (e.g. via prosodyctl shell) will receive
prosody:member by default.
|
| |
| |
| |
| |
| |
| | |
Overrides the util.jwt default of 1h with the intended TTL of 10
minutes. Because util.jwt now has its own expiry checks, so the 'expiry'
field is no longer used and can thus be removed.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This makes it so that --admin and --role are no longer mutually
exclusive, they the former is simply treated as another --role.
This was likely a leftover from when only a single role was possible.
It does however become unclear which should be the primary, since the
order is not preserved by argparse.
Bonus: Loading of modules is avoided with only the --help is shown.
|
| |
| |
| |
| | |
Forgot to change the column name in 9a7523ea45cb
|
| | |
|
| |
| |
| |
| | |
Avoids an error if the upgrade is performed twice..
|
| |
| |
| |
| |
| | |
Prevents false positives in the odd case where something other than an
index with this name might exist.
|
| |
| |
| |
| | |
The "pg_indexes" view is much simpler to inspect than "pg_class"
|
| |
| |
| |
| | |
Tested. Works.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
No point in doing this expensive O(n) query if the result is not used
for anything.
Will still cache the total item count if an explicit query for this is
performed, then try to keep it updated with new items added. Will likely
forget eventually tho.
|
| |
| |
| |
| |
| | |
Notably the default journal_mode of DELETE is somewhat slow, some users
might want to catch up to the amazing performance of internal storage.
|
| |
| |
| |
| |
| | |
Knowing what features are available could be useful for future
experiments. For example, with the JSON module or full text search.
|
| |
| |
| |
| |
| |
| |
| | |
Removes the need for the shim in storagemanager.
The methods only really access the 'store' property of the first (self)
argument, so this is safe.
|
| |
| |
| |
| |
| |
| |
| | |
Currently limited to SQLite3 for lack of testing on other databases.
Adds a migration to replace the non-UNIQUE prosody_index, renaming it
prosody_unique_index since ALTER INDEX does not seem to be portable.
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Because it changes the type of the 'opt_origins' variable from util.set
to the internal _items table so next time an http app is added an error
"attempt to call a nil value (method 'empty')" is triggered. The value
is not used anywhere else.
Noticed when reviewing uses of the '_items' set property.
Not reported by any users, implying this setting is rarely used.
|
| |
| |
| |
| |
| | |
Avoids the _items semi-private value, that is used everywhere for some
reason.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Iterating over an entire archive to find a few items in the far end from
where iteration started is expensive, and probably more expensive with
the lazy-loading of items added in the previous commit.
Since we can now efficiently read items in random order, we can now use
a binary search to find a better starting point for iteration.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Very large list files previously ran into limits of the Lua parser, or
just caused Prosody to freeze while parsing.
Using the new index we can parse individual items one at a time. This
probably won't reduce overall CPU usage, probably the opposite, but it
will reduce the number of items in memory at once and allow collection
of items after we iterated past them.
|