Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | util.datamanager: Halve size of list index | Kim Alvefur | 2021-05-14 | 1 | -11/+15 |
| | | | | | Instead of storing (start, length) tuples, store the offset to the end of items and derive length using the previous entry. | ||||
* | util.datamanager: Add O(1) list indexing with on-disk index | Kim Alvefur | 2021-05-11 | 1 | -0/+191 |
| | | | | | | | | | | | | Index file contains offsets and lengths of each item() which allows seeking directly to each item and reading it without parsing the entire file. Also allows tricks like binary search, assuming items have some defined order. We take advantage of the 1-based indexing in tables to store a magic header in the 0 position, so that table index 1 ends up at file index 1. | ||||
* | util: Prefix module imports with prosody namespace | Kim Alvefur | 2023-03-17 | 1 | -4/+4 |
| | |||||
* | spelling: non-existing mistakes (thanks timeless)0.12.0 | Kim Alvefur | 2022-03-07 | 1 | -2/+2 |
| | |||||
* | Spelling: Fix various spelling mistakes (thanks timeless) | Kim Alvefur | 2022-03-07 | 1 | -2/+2 |
| | | | | | | Words, sometimes I wonder how they even work Maybe I missed something. | ||||
* | util.datamanager: Support iterating over any file extension | Kim Alvefur | 2021-02-07 | 1 | -4/+3 |
| | | | | | | | | The 'typ' argument to all other functions is the actual file extension, but not here for some reason. May need this for iterating over the .bin files created by mod_http_file_share in the future. | ||||
* | util.datamanager: Fix not passing variables as format string to logger ↵ | Kim Alvefur | 2021-01-16 | 1 | -1/+1 |
| | | | | | | | (thanks semgrep) Passing error messages as format string could lead to errors, although not a problem anymore since util.format sanitizes this. | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2020-02-24 | 1 | -1/+1 |
|\ | |||||
| * | util.datamanager: Fix iterating over "users" (thanks marc0s) | Kim Alvefur | 2020-02-24 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | The 'store' path componend used to be unescaped until 756a2a00e7e7 added escaping to address issues with characters like '/' used in PEP, but with a special case for '_' which was already in common use in 'store' path components. Missed adding this escaping here. | ||||
* | | util.datamanager: Ignore unused 'errno' variable [luacheck] | Kim Alvefur | 2019-12-23 | 1 | -1/+2 |
| | | |||||
* | | Fix various spelling mistakes [codespell] | Kim Alvefur | 2019-05-03 | 1 | -1/+1 |
|/ | |||||
* | vairious: Add annotation when an empty environment is set [luacheck] | Kim Alvefur | 2018-02-28 | 1 | -0/+1 |
| | |||||
* | util.datamanager: Encode the 'store' path component, preserving underscores | Kim Alvefur | 2017-10-08 | 1 | -1/+8 |
| | |||||
* | util.datamanager: Use already known index instead of measuring length each ↵ | Kim Alvefur | 2017-04-17 | 1 | -2/+2 |
| | | | | iteration | ||||
* | util.datamanager: Log where the error came from | Kim Alvefur | 2017-03-28 | 1 | -3/+4 |
| | |||||
* | util.datamanager: Rearrange locals | Kim Alvefur | 2017-03-28 | 1 | -3/+2 |
| | |||||
* | util.datamanager: Use pposix.atomic_append | Kim Alvefur | 2017-02-28 | 1 | -23/+17 |
| | |||||
* | util.datamanager: Remove check for file non-existence since ENOENT tells us ↵ | Kim Alvefur | 2017-03-22 | 1 | -18/+4 |
| | | | | that already | ||||
* | util.datamanager: Split long line [luacheck] | Kim Alvefur | 2017-03-22 | 1 | -1/+3 |
| | |||||
* | util.datamanager: Expose atomic_store as store_raw | Kim Alvefur | 2017-03-01 | 1 | -0/+1 |
| | |||||
* | util.datamanager: Use atomic store function when writing the first entry of ↵ | Kim Alvefur | 2017-03-01 | 1 | -4/+1 |
| | | | | a list | ||||
* | util.datamanager: Import value of ENOENT from util.pposix (if available) | Kim Alvefur | 2017-03-01 | 1 | -0/+1 |
| | |||||
* | util.datamanager: Ignore ENOENT (no such file) when loading data | Kim Alvefur | 2017-03-01 | 1 | -4/+13 |
| | |||||
* | util.datamanager: Shorter pattern | Kim Alvefur | 2016-11-20 | 1 | -1/+1 |
| | |||||
* | util.datamanager: Remove extraneous decoding of + to space, which we never ↵ | Kim Alvefur | 2016-11-20 | 1 | -1/+1 |
| | | | | never encode to | ||||
* | util.datamanager: Use the 'base' argument to tonumber() to indicate hexadecimal | Kim Alvefur | 2016-11-20 | 1 | -1/+1 |
| | |||||
* | util.datamanager: Add annotations to ignore name clashes [luacheck] | Kim Alvefur | 2016-09-24 | 1 | -5/+5 |
| | |||||
* | util.datamanager: Rename variables to avoid name clashes [luacheck] | Kim Alvefur | 2016-09-24 | 1 | -12/+12 |
| | |||||
* | util.datamanager: Import tostring and type (fix global access) | Kim Alvefur | 2016-05-22 | 1 | -0/+2 |
| | |||||
* | util.datamanager: Explicit handling of each error condition (see #632) | Kim Alvefur | 2016-02-27 | 1 | -14/+16 |
| | |||||
* | Merge 0.9->0.10 | Kim Alvefur | 2016-02-25 | 1 | -0/+1 |
|\ | |||||
| * | util.datamanager: Unreference file handle after closing it to prevent trying ↵ | Kim Alvefur | 2016-02-25 | 1 | -0/+1 |
| | | | | | | | | to close it again (fixes #632) | ||||
* | | util.datamanager: Add append to public api | Kim Alvefur | 2015-12-11 | 1 | -0/+1 |
| | | |||||
* | | util.datamanager: Return extra location info | Kim Alvefur | 2015-12-11 | 1 | -3/+3 |
| | | |||||
* | | util.datamanager: Make sure only strings are passed as data to append() | Kim Alvefur | 2015-12-11 | 1 | -0/+1 |
| | | |||||
* | | util.datamanager: Add some comments about the append function | Kim Alvefur | 2015-12-11 | 1 | -0/+3 |
| | | |||||
* | | util.datamanager: Handle potential error from :write() call | Kim Alvefur | 2015-12-11 | 1 | -3/+3 |
| | | |||||
* | | util.datamanager: Handle potential issues from fallocate | Kim Alvefur | 2015-12-11 | 1 | -1/+10 |
| | | |||||
* | | util.datamanager: No shadowing of variable [luacheck] | Kim Alvefur | 2015-12-11 | 1 | -1/+3 |
| | | |||||
* | | util.datamanager: Skip past second check if first attemtp to open file succeeds | Kim Alvefur | 2015-12-11 | 1 | -3/+3 |
| | | |||||
* | | util.datamanager: In append() collect status when closing file handle as it ↵ | Kim Alvefur | 2015-12-11 | 1 | -3/+9 |
| | | | | | | | | may fail (eg the implied flush) | ||||
* | | util.datamanager: Overwrite 'data' variable instead of shadownig it [luacheck] | Kim Alvefur | 2015-12-11 | 1 | -1/+1 |
| | | |||||
* | | util.datamanager: Factor out code for appending bytes to a file | Kim Alvefur | 2015-12-11 | 1 | -10/+18 |
| | | |||||
* | | util.*: Remove use of module() function, make all module functions local and ↵ | Kim Alvefur | 2015-02-21 | 1 | -16/+29 |
|/ | | | | return them in a table at the end | ||||
* | util.datamanager: Fix traceback from trying to purge when storage is empty ↵ | Kim Alvefur | 2015-05-13 | 1 | -1/+5 |
| | | | | or otherwise unaccessible (fixes #496) | ||||
* | util.datamanager: Fix traceback due to %s in log message | Kim Alvefur | 2015-04-03 | 1 | -1/+1 |
| | |||||
* | util.datamanager: Check that the global 'prosody' exists before using it ↵ | Kim Alvefur | 2015-02-20 | 1 | -1/+1 |
| | | | | (fixes nil indexing in use outside of prosody) | ||||
* | util.datamanager: Clear the cache of created directories on storage failure, ↵ | Matthew Wild | 2013-04-07 | 1 | -11/+19 |
| | | | | and retry | ||||
* | util.datamanager: expose path decode and encode functions. | Marco Cirillo | 2013-04-07 | 1 | -0/+2 |
| | |||||
* | util.datamanager: Don't escape the name of a store | Kim Alvefur | 2012-12-16 | 1 | -1/+1 |
| |