Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | tests: Add hack to test only a single storage driver | Kim Alvefur | 2023-07-22 | 1 | -0/+5 |
| | | | | | Fixes that LuaDBI being unavailable makes these produce nothing but endless stack overflows in luarocks. | ||||
* | tests: Update storagemanager tests for prosody.* namespace change | Kim Alvefur | 2023-07-22 | 1 | -8/+6 |
| | | | | | Part of an attempt to make these tests work again. Previously they would just explode in a million luarocks stack overflows | ||||
* | mod_storage_sql: Spell out missing dependencies | Kim Alvefur | 2023-07-22 | 1 | -3/+16 |
| | | | | | Using util.dependencies appeared to cause problems with running tests in Busted, so this also removes that and uses pcall directly. | ||||
* | mod_storage_sql: Pass variables as arguments instead of upvalues | Kim Alvefur | 2023-07-22 | 1 | -10/+5 |
| | | | | | Probably a workaround for the lack of argument passing when using xpcall in Lua 5.1, no longer relevant. | ||||
* | util.sql: Remove unused String() and Integer() functions | Kim Alvefur | 2023-07-22 | 1 | -4/+0 |
| | | | | According to MattJ, leftovers from an earlier vision for util.sql | ||||
* | util.sqlite3: Clean up unused variables | Kim Alvefur | 2023-07-22 | 1 | -42/+6 |
| | | | | | Many leftovers from the earlier version of util.sql this was based on and cleanup applied there since then. | ||||
* | util.datamanager: Always reset index after list shift | Kim Alvefur | 2023-07-22 | 1 | -39/+4 |
| | | | | | | Shifting the index does not work reliably yet, better to rebuild it from scratch. Since there is minimal parsing involved in that, it should be more efficient anyway. | ||||
* | core.moduleapi: Parse period min/max arguments | Kim Alvefur | 2023-07-22 | 1 | -0/+6 |
| | | | | | Allows specifying them the same way as the default and in the config, for consistency | ||||
* | util.datamanager: Add way to close indexed list store | Kim Alvefur | 2023-07-21 | 1 | -1/+9 |
| | |||||
* | util.datamanager: Close file handle when done using it | Kim Alvefur | 2023-07-21 | 1 | -0/+1 |
| | | | | | It gets closed eventually but at high load they could potentially lead to reaching FD limits faster. | ||||
* | util.datamanager: Disable blockwise removal | Kim Alvefur | 2023-07-21 | 1 | -1/+4 |
| | | | | In desperate need of tests | ||||
* | mod_muc: Use enum config API for 'restrict_room_creation' | Kim Alvefur | 2023-07-21 | 1 | -1/+1 |
| | | | | | | 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? | ||||
* | plugins: Use get_option_array for some list shaped options | Kim Alvefur | 2023-07-21 | 2 | -2/+2 |
| | | | | | Passing something from module:get_option() to ipairs() suggests that the option is a list of some sort. | ||||
* | util.datamanager: Disable block alignment | Kim Alvefur | 2023-07-21 | 1 | -0/+2 |
| | | | | | Until we have more test coverage. Somehow the index becomes incorrect after inserting padding, unclear why. | ||||
* | plugins: Handle how get_option_period returns "never" | Kim Alvefur | 2023-07-21 | 3 | -4/+4 |
| | |||||
* | plugins: Use boolean config method in some places | Kim Alvefur | 2023-07-18 | 3 | -9/+7 |
| | | | | Because it makes sense and improves feedback via logging | ||||
* | mod_storage_internal: Use integer option method for cache size | Kim Alvefur | 2023-07-18 | 1 | -1/+1 |
| | | | | Missed this one in previous sweep | ||||
* | mod_muc_mam: Use period option method | Kim Alvefur | 2023-07-18 | 1 | -13/+3 |
| | |||||
* | mod_muc: Use enum option method for 'muc_room_default_presence_broadcast' | Kim Alvefur | 2023-07-18 | 1 | -1/+2 |
| | |||||
* | mod_storage_xep0227: Use enum option method | Kim Alvefur | 2023-07-18 | 1 | -1/+1 |
| | |||||
* | mod_auth_ldap: Use enum option method | Kim Alvefur | 2023-07-18 | 1 | -2/+2 |
| | |||||
* | mod_storage_sql: Use integer config option for cache size | Kim Alvefur | 2023-07-18 | 1 | -1/+1 |
| | | | | Missed this one, was probably only looking for get_option_number | ||||
* | mod_storage_sql: Use config enum for 'sqlite_tune' | Kim Alvefur | 2023-07-18 | 1 | -1/+1 |
| | |||||
* | mod_storage_sql: Allow higher precision timestamps in SQLite3 | Kim Alvefur | 2023-07-17 | 1 | -1/+5 |
| | | | | Since it doesn't actually do strict typing :) | ||||
* | Merge 0.12->trunk | Kim Alvefur | 2023-07-17 | 1 | -0/+5 |
|\ | |||||
| * | util.prosodyctl.check: Hint about the 'external_addresses' config option | Kim Alvefur | 2023-07-17 | 1 | -0/+5 |
| | | |||||
* | | Merge 0.12->trunk | Kim Alvefur | 2023-07-17 | 1 | -41/+82 |
|\| | |||||
| * | util.prosodyctl.check: Validate format of module list options | Kim Alvefur | 2023-07-17 | 1 | -0/+28 |
| | | | | | | | | Should detect things like misplaced settings inside modules_enabled | ||||
| * | util.prosodyctl.check: Get some config options via minimal moduleapi #896 | Kim Alvefur | 2023-07-17 | 1 | -41/+54 |
| | | | | | | | | | | | | The module API has certain coercion features that are useful. Fixes traceback reported in #1812 and other duplicates | ||||
* | | core.moduleapi: Fix min/maxinteger fallback for Lua 5.2 | Kim Alvefur | 2023-07-17 | 1 | -1/+1 |
| | | | | | | | | Maybe these should live in util.mathcompat? | ||||
* | | mod_http: Fix passing minimum limits in wrong argument position | Kim Alvefur | 2023-07-17 | 1 | -2/+2 |
| | | |||||
* | | plugins: Use integer config API with interval specification where sensible | Kim Alvefur | 2023-07-17 | 26 | -47/+48 |
| | | | | | | | | | | | | | | 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 | ||||
* | | core.moduleapi: Add min/max range support to :get_option_period | Kim Alvefur | 2023-07-17 | 1 | -11/+27 |
| | | | | | | | | | | | | To match :get_option_number etc, specifying the allowed interval. Default is essentially (0, inf]. | ||||
* | | moduleapi: Add :get_option_integer() | Kim Alvefur | 2023-07-17 | 4 | -0/+17 |
| | | | | | | | | | | | | | | Many options in Prosody that are treated as numbers don't make sense as floats, e.g. sizes and limits measured in bytes. Simplified implementation based on an earlier attempt dating back to 2020 | ||||
* | | util.human.io: Fix stray 'stty' error by only querying width of real ttys | Kim Alvefur | 2023-07-16 | 1 | -0/+4 |
| | | | | | | | | | | This adds a dependency on a binary and *nix-specific module but then stty is probably *nix-specific anyway so maybe that's fine. | ||||
* | | plugins: Switch to :get_option_period() for time range options | Kim Alvefur | 2023-07-16 | 18 | -38/+24 |
| | | | | | | | | Improves readability ("1 day" vs 86400) and centralizes validation. | ||||
* | | core.moduleapi: Accept boolean false to disable period setting | Kim Alvefur | 2023-07-16 | 1 | -1/+1 |
| | | |||||
* | | core.moduleapi: Log error for unexpected types (booleans?) set as periods | Kim Alvefur | 2023-07-16 | 1 | -0/+2 |
| | | |||||
* | | core.moduleapi: Turn negative periods or "never" into infinity | Kim Alvefur | 2023-07-16 | 1 | -0/+7 |
| | | | | | | | | | | As a way to signal that the periodic thing should be disabled, matching existing mod_mam usage | ||||
* | | core.moduleapi: Improve handling of different types in :get_option_period | Kim Alvefur | 2023-07-16 | 1 | -8/+8 |
| | | | | | | | | | | Pass positive numbers trough unharmed, parse strings as periods, discard anything else. | ||||
* | | core.moduleapi: Add :get_option_period for parsing time intervals | Kim Alvefur | 2023-07-16 | 4 | -0/+18 |
| | | | | | | | | | | E.g. for use in mod_mam and others that take an amount of time before some (usually cleanup) action is taken. | ||||
* | | core.moduleapi: Allow specifying an acceptable range for number options | Kim Alvefur | 2021-10-05 | 3 | -2/+16 |
| | | |||||
* | | plugins: Use get_option_enum where appropriate | Kim Alvefur | 2021-01-16 | 5 | -8/+11 |
| | | |||||
* | | moduleapi: Add enum config option method | Kim Alvefur | 2021-01-16 | 4 | -0/+17 |
| | | | | | | | | For when a setting has a few fixed values it can take | ||||
* | | tools: Fix file ending of mod2spec.sh (thanks buildbot) | Kim Alvefur | 2023-07-16 | 1 | -0/+0 |
| | | | | | | | | Accidentally .lua ? | ||||
* | | util.human.io: Fix pattern in parse_duration() to cover all used letters | Kim Alvefur | 2023-07-16 | 1 | -2/+2 |
| | | | | | | | | | | Notably 'h' was missing. Awkwardly, 'hour' would result in 'ho' which was missing from table. | ||||
* | | util.human.io: Add tests for parse_duration() (some failing) | Kim Alvefur | 2023-07-16 | 1 | -0/+9 |
| | | |||||
* | | util.human.io: Include relevant arguments in test messages | Kim Alvefur | 2023-07-16 | 1 | -1/+1 |
| | | | | | | | | This way the relevant arguments are shown in case a test case fails | ||||
* | | util.human.io: Use tail call in test to get correct line numbers | Kim Alvefur | 2023-07-16 | 1 | -1/+1 |
| | | | | | | | | | | | | This is probably not guaranteed to work and might vary with Lua version, but it's good enough for me to get accurate line numbers out of Busted that don't all point to the test() function. | ||||
* | | tools: Add mod2spec.sh, turns util.example into spec/util_example_spec.lua | Kim Alvefur | 2023-07-16 | 1 | -0/+4 |
| | | | | | | | | | | | | | | Useful for opening a module and its tests at the same, can be awkward to auto-complete sometimes. sensible-editor util/example.lua $(./tools/mod2spec.sh util.example) |