Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | util.termcolours: Add Teal interface description | Kim Alvefur | 2022-07-24 | 1 | -0/+7 | |
| | ||||||
* | util.queue: Add Teal interface description | Kim Alvefur | 2022-07-24 | 1 | -0/+21 | |
| | ||||||
* | util.logger: Add Teal interface description | Kim Alvefur | 2022-07-24 | 1 | -0/+18 | |
| | ||||||
* | util.bitcompat: Add Teal type specification | Kim Alvefur | 2022-06-30 | 1 | -0/+8 | |
| | ||||||
* | util.struct: Add Teal interface description file | Kim Alvefur | 2022-06-15 | 1 | -0/+6 | |
| | ||||||
* | util.table: Add move() to Teal interface description file | Kim Alvefur | 2022-06-15 | 1 | -0/+1 | |
| | ||||||
* | util.set: Add teal type declaration file | Kim Alvefur | 2022-02-16 | 1 | -0/+21 | |
| | ||||||
* | util.serialization: Add Teal type specification | Kim Alvefur | 2021-12-01 | 1 | -0/+33 | |
| | ||||||
* | util.dataforms: Add missing :data() to Teal definition | Kim Alvefur | 2021-11-15 | 1 | -0/+1 | |
| | ||||||
* | util.dataforms: Restructure Teal definition file | Kim Alvefur | 2021-11-15 | 1 | -45/+46 | |
| | | | | | The PR has been merged and there's no reason not to have nested records and other definitions. | |||||
* | util.human.io: Add Teal interface definition | Kim Alvefur | 2021-11-10 | 1 | -0/+28 | |
| | ||||||
* | util.promise: Add Teal interface specification file | Kim Alvefur | 2022-07-24 | 2 | -3/+23 | |
| | ||||||
* | teal: add stub util.array teal defs | Kim Alvefur | 2022-07-24 | 1 | -0/+9 | |
| | ||||||
* | net.server: Add teal description file | Kim Alvefur | 2022-07-24 | 1 | -0/+65 | |
| | ||||||
* | net.http: Add teal description files | Kim Alvefur | 2022-07-24 | 6 | -0/+190 | |
| | ||||||
* | util.human.units: Specify enum argument to format() | Kim Alvefur | 2021-07-05 | 1 | -1/+4 | |
| | ||||||
* | core.storagemanager: Convert old Typed Lua description file into Teal | Kim Alvefur | 2021-03-24 | 1 | -0/+74 | |
| | | | | | | | | Still only a type definition. Typed Lua is no longer maintained. Teal is currently an active project. | |||||
* | util.hex: Update Teal spec for function rename in a0ff5c438e9d | Kim Alvefur | 2022-08-10 | 1 | -0/+2 | |
| | ||||||
* | Merge 0.12->trunk | Kim Alvefur | 2022-07-08 | 2 | -159/+183 | |
|\ | ||||||
| * | util.datamapper: Improve handling of schemas with non-obvious "type" | Kim Alvefur | 2022-07-08 | 1 | -12/+31 | |
| | | | | | | | | | | | | | | | | | | | | | | | | The JSON Schema specification says that schemas are objects or booleans, and that the 'type' property is optional and can be an array. This module previously allowed bare type names as schemas and did not really handle booleans. It now handles missing 'type' properties and boolean 'true' as a schema. Objects and arrays are guessed based on the presence of 'properties' or 'items' field. | |||||
| * | util.jsonschema: Fix validation to not assume presence of "type" field | Kim Alvefur | 2022-07-08 | 1 | -147/+152 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MattJ reported a curious issue where validation did not work as expected. Primarily that the "type" field was expected to be mandatory, and thus leaving it out would result in no checks being performed. This was likely caused by misreading during initial development. Spent some time testing against https://github.com/json-schema-org/JSON-Schema-Test-Suite.git and discovered a multitude of issues, far too many to bother splitting into separate commits. More than half of them fail. Many because of features not implemented, which have been marked NYI. For example, some require deep comparisons e.g. when objects or arrays are present in enums fields. Some because of quirks with how Lua differs from JavaScript, e.g. no distinct array or object types. Tests involving fractional floating point numbers. We're definitely not going to follow references to remote resources. Or deal with UTF-16 sillyness. One test asserted that 1.0 is an integer, where Lua 5.3+ will disagree. | |||||
* | | util.hashes: Add SHA3 bindings | Kim Alvefur | 2020-09-10 | 1 | -0/+4 | |
| | | ||||||
* | | util.hashes: Bind BLAKE2 algoritms supported by OpenSSL | Kim Alvefur | 2020-09-10 | 1 | -0/+2 | |
| | | ||||||
* | | util.hashes: Expose sha224 and sha384 HMAC functions | Kim Alvefur | 2020-11-29 | 1 | -0/+2 | |
| | | | | | | | | For completeness and consistency with set of plain hash functions | |||||
* | | util.stanza: Document top level attributes in Teal definition | Kim Alvefur | 2022-05-17 | 1 | -3/+48 | |
| | | | | | | | | Tells you if you make a typo like "gropchat" or so | |||||
* | | util.stanza: Document error conditions in Teal definition | Kim Alvefur | 2022-05-17 | 1 | -2/+35 | |
| | | | | | | | | Gets you nice error messages if you make a typo in with error_reply() | |||||
* | | mod_cron: Remove difference between teal version | Kim Alvefur | 2022-05-15 | 1 | -1/+1 | |
| | | | | | | | | | | This previously was considered an error because the module API Teal spec did not document a return value from module:add_timer() | |||||
* | | teal/moduleapi: Describe timer wrapper | Kim Alvefur | 2022-05-15 | 1 | -1/+6 | |
| | | | | | | | | Since it's used in mod_cron | |||||
* | | util.async: Add Teal description file | Kim Alvefur | 2022-05-08 | 2 | -1/+43 | |
|/ | ||||||
* | util.jsonpointer: Fix off-by-one in array resolution | Kim Alvefur | 2022-05-08 | 1 | -1/+1 | |
| | | | | | | Fixes #1753 Not known to be used anywhere | |||||
* | mod_cron: Fix recording last task run time #1751 | Kim Alvefur | 2022-05-05 | 1 | -0/+1 | |
| | | | | | | | The type checks, they do nothing! Observed: Tasks that were supposed to run weekly or daily were running each hour. | |||||
* | Spelling: Fix various spelling mistakes (thanks timeless) | Kim Alvefur | 2022-03-07 | 1 | -1/+1 | |
| | | | | | | Words, sometimes I wonder how they even work Maybe I missed something. | |||||
* | util.poll: Add support for the poll() API | Kim Alvefur | 2022-02-23 | 1 | -1/+3 | |
| | | | | Might be better than select(), more portable than epoll. | |||||
* | util.poll: Expose API (epoll or select) used | Kim Alvefur | 2022-02-27 | 1 | -0/+5 | |
| | | | | Could he handy to know for debugging or decisions | |||||
* | util.xtemplate: Yet another string template library | Kim Alvefur | 2022-01-24 | 1 | -0/+101 | |
| | | | | | | This one takes a stanza as input Roughly based on util.interpolation | |||||
* | mod_cron: Allow for a small amount of timer drift | Kim Alvefur | 2022-01-15 | 1 | -1/+1 | |
| | | | | | | | | | If the timer activates a bit early then a task might be just a few seconds short of being allowed to run. This would run such a task rather than wait another hour. The value 0.5% chosen so that a weekly task does not run an entire hour earlier than last time. | |||||
* | util.datamapper: Add support for $ref pointers | Kim Alvefur | 2021-12-29 | 1 | -21/+39 | |
| | | | | Allows reuse of repetitive definitions in schemas. | |||||
* | util.jsonschema: Add support for $ref pointers | Kim Alvefur | 2021-12-29 | 1 | -23/+37 | |
| | ||||||
* | util.jsonpointer: Resolve JSON Pointers per RFC 6901 | Kim Alvefur | 2021-12-29 | 1 | -0/+46 | |
| | ||||||
* | util.smqueue: Simplify compat table, fix dependent modules (thanks Martin) | Kim Alvefur | 2021-12-16 | 1 | -15/+6 | |
| | | | | | | There was an off-by-one in the modulo calculation. Switching to a plain old array-table makes the apparent size of the queue wrong, but since some of the queue may not be available this is likely for the best. | |||||
* | util.smqueue: Add missing method to Teal record spec | Kim Alvefur | 2021-12-16 | 1 | -1/+2 | |
| | ||||||
* | util.smqueue: Abstract queue with acknowledgements and overflow | Kim Alvefur | 2021-12-14 | 1 | -0/+107 | |
| | | | | | | | | Meant to be used in mod_smacks for XEP-0198 Meant to have a larger virtual size than actual number of items stored, on the theory that in most cases, the excess will be acked before needed for a resumption event. | |||||
* | mod_cron: Add a 'weekly' job frequency | Kim Alvefur | 2021-12-03 | 1 | -1/+2 | |
| | ||||||
* | mod_cron: Initialize timestamp of new tasks to start of period | Kim Alvefur | 2021-12-03 | 1 | -3/+3 | |
| | | | | | Makes it more generic so new periods (e.g. weekly etc) can be added easily. | |||||
* | mod_cron: Follow convention of imports at the top | Kim Alvefur | 2021-12-03 | 1 | -1/+2 | |
| | ||||||
* | mod_cron: Initialize daily tasks so they run around midnight UTC | Kim Alvefur | 2021-12-03 | 1 | -0/+5 | |
| | | | | | | Eventually the goal is to have daily tasks run while there is little activity, but that will vary with the server and the usage patterns of its users. This is a start anyway. | |||||
* | mod_cron: Initial commit of periodic task runner | Kim Alvefur | 2021-11-21 | 1 | -0/+98 | |
| | | | | | | A number of modules now have periodic tasks that need to run, e.g. for cleaning out old messages or files. This has highlighted a need for coordinating and optimizing scheduling of such tasks. | |||||
* | teal: Describe the module API interface | Kim Alvefur | 2021-03-24 | 1 | -0/+145 | |
| | | | | Helps when writing modules in Teal | |||||
* | util.pposix: Bind isatty(3) | Kim Alvefur | 2021-07-04 | 1 | -0/+2 | |
| | | | | | Useful for disabling certain behavior, ANSI colors etc when not connected to a terminal. | |||||
* | util.stanza: Export pretty printing function | Kim Alvefur | 2021-06-29 | 1 | -0/+1 | |
| |