Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | util.smqueue: Abstract queue with acknowledgements and overflow | Kim Alvefur | 2021-12-14 | 1 | -0/+61 |
| | | | | | | | | 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. | ||||
* | util.format: Optimize most common integer format | Kim Alvefur | 2021-12-13 | 1 | -0/+2 |
| | | | | | | A search for log formats in use points to %s being the most common, followed by %d, so worth having a fast path for that. %g works well with most numbers and is what Lua 5.1 and 5.2 used | ||||
* | util.format: Ensure metatable __tostring results are also sanitized | Kim Alvefur | 2021-12-13 | 1 | -1/+2 |
| | |||||
* | util.format: Fix some formats expecting positive numbers in Lua 5.2 | Kim Alvefur | 2021-12-11 | 1 | -0/+5 |
| | | | | Amazing how string.format behaves differently under each Lua version | ||||
* | util.format: Fix Lua 5.1 quirks thanks to ALL THE TESTS | Kim Alvefur | 2021-12-11 | 1 | -1/+6 |
| | |||||
* | util.format: Also handle the %p format added in Lua 5.4 | Kim Alvefur | 2021-12-11 | 1 | -3/+18 |
| | |||||
* | util.format: Ensure sanitation of strings passed to wrong format | Kim Alvefur | 2021-12-11 | 1 | -21/+37 |
| | | | | | | | | | Ie. log("debug", "%d", "\1\2\3") should not result in garbage. Also optimizing for the common case of ASCII string passed to %s and early returns everywhere. Returning nil from a gsub callback keeps the original substring. | ||||
* | util.format: Escape invalid UTF-8 by passing trough serialization | Kim Alvefur | 2021-12-10 | 1 | -1/+10 |
| | | | | | | Should prevent invalid UTF-8 from making it into the logs, which can cause trouble with terminals or log viewers or other tools, such as when grep determines that log files are binary. | ||||
* | util.sasl.scram: Store username property rather than cached local (#399) | Matthew Wild | 2021-12-07 | 1 | -1/+1 |
| | | | | | This should allow modules to override the username in a profile handler by assigning to self.username. | ||||
* | util.dependencies: Fix typo (thanks jonas’) | Kim Alvefur | 2021-11-30 | 1 | -1/+1 |
| | | | | | | | | | | vim> Change "sevral" to: 1 "several" 2 "sacral" 3 "spiral" 4 "feral" 5 "serial" jonas’> I choose 4. | ||||
* | util.startup: Initialize util.async at startup | Matthew Wild | 2021-11-29 | 1 | -0/+9 |
| | |||||
* | util.async: Add next-tick configuration | Matthew Wild | 2021-11-29 | 1 | -2/+8 |
| | | | | | | | | Running woken runners in the next iteration of the event loop prevents unexpected recursion, unexpected tracebacks, and is generally more predictable. The pattern is borrowed from util.promise, where we're now doing the same. | ||||
* | util.async: Add sleep() method with configurable scheduling backend | Matthew Wild | 2021-11-29 | 1 | -0/+15 |
| | | | | | | | | | No scheduler set by default, so it will error (we plan to initialize it in util.startup). We wanted to avoid a hard dependency on util.timer (which in turn depends on network backends, etc.), and we didn't add timer.sleep() because we didn't want to add a hard dependency on util.async for things that don't need it. | ||||
* | util.stanza: Adjust pretty printing for symmetry | Kim Alvefur | 2021-11-29 | 1 | -1/+1 |
| | | | | | Self-closing <tags/> and <?processing instructions?> had some asymmetries in applied colors. | ||||
* | util.dependencies: Discourage Lua 5.1 | Kim Alvefur | 2021-11-28 | 1 | -0/+2 |
| | | | | Search for 'Lua 5.1' for reasons. | ||||
* | util.dependencies: Consider Lua 5.4 Supported:tm: | Kim Alvefur | 2021-11-28 | 1 | -1/+1 |
| | | | | | I have been running my own server exclusively on Lua 5.4 for months and apart from packaging issues I remember on major issues. | ||||
* | util.prosodyctl.check: Support direct TLS connectivity checks | Kim Alvefur | 2021-11-28 | 1 | -0/+6 |
| | | | | | | Currently only supported with OJN Assumption: the direct_tls_ports are not empty when set. | ||||
* | util.startup: Integrate util.promise with net.server main loop | Kim Alvefur | 2019-01-05 | 1 | -0/+8 |
| | |||||
* | util.promise: Support delayed promise execution | Kim Alvefur | 2019-01-05 | 1 | -5/+12 |
| | |||||
* | util.prosodyctl.check: Add mod_http_openmetrics settings to known globals | Kim Alvefur | 2021-11-25 | 1 | -0/+2 |
| | |||||
* | mod_http_openmetrics: Imported from prosody-modules mod_prometheus @df2246b15075 | Matthew Wild | 2021-11-24 | 1 | -0/+79 |
| | | | | | | | | | This version has several changes from the earlier mod_prometheus: - Conversion of metrics into the text-based OpenMetrics format is moved to util.openmetrics - Support for IP-based access control - Compatibility with earlier Prosody versions removed | ||||
* | util.prosodyctl.check: Highlight inconsistency of AAAA records and ↵ | Kim Alvefur | 2021-11-20 | 1 | -0/+4 |
| | | | | use_ipv6=false | ||||
* | util.prosodyctl.check: Respect use_ipv4/v6 in proxy65 check | Kim Alvefur | 2021-11-20 | 1 | -4/+4 |
| | | | | | | | Previously it would complain about lack of an AAAA record for proxy65_target even in an IPv6-less environment. Thanks to libertas for unintentionally calling attention to this. | ||||
* | util.prosodyctl.check: Take IPv6 support in LuaSocket into account | Kim Alvefur | 2021-11-20 | 1 | -1/+1 |
| | | | | Shouldn't really matter these days, but portmanager checks this way. | ||||
* | util.prosodyctl.shell: Bring back banner set from config! | Kim Alvefur | 2021-11-12 | 1 | -0/+2 |
| | | | | I miss my custom ANSI-colored greeting! | ||||
* | util.human.io: Use UTF-8-aware length check in padding functions | Kim Alvefur | 2021-11-12 | 1 | -2/+2 |
| | |||||
* | util.human.io: Fix cutting of UTF-8 into pieces | Kim Alvefur | 2021-11-12 | 1 | -7/+21 |
| | | | | Down the rabbit hole we go... | ||||
* | util.human.io: Trim any broken UTF-8 from ellipsis | Kim Alvefur | 2021-11-12 | 1 | -1/+5 |
| | | | | | | | This should fix basic problems with multi-byte UTF-8 sequences getting cut in the middle. Down the rabbit hole we go... | ||||
* | util.human.io: Factor out ellipsis function | Kim Alvefur | 2021-11-12 | 1 | -1/+6 |
| | | | | Could be useful elsewhere | ||||
* | util.human.io: Support specifying column defaults in tables | Kim Alvefur | 2021-11-12 | 1 | -1/+1 |
| | |||||
* | util.human.io: Pass nil to cell mapper to signal missing value | Kim Alvefur | 2021-11-12 | 1 | -1/+9 |
| | | | | | Seems more like conventional Lua than passing an empty string to signal lack of value. | ||||
* | util.prosodyctl.shell: Allow setting custom prompt (admin_shell_prompt) | Matthew Wild | 2021-11-11 | 1 | -4/+6 |
| | |||||
* | util.dataforms: Encode size attributes as integers in XEP-0221 media element | Kim Alvefur | 2021-10-28 | 1 | -1/+1 |
| | | | | Otherwise very large fields would be serialized in e notation | ||||
* | util.dataforms: Ensure larger integers are serialized as such | Kim Alvefur | 2021-10-28 | 1 | -1/+3 |
| | | | | | | | Assumes that most number fields are integers, as most numeric types listed in XEP-0122 are, as are all such fields in Prosody as of this. Otherwise %g produces something like 1.1259e+15 | ||||
* | util.dataforms: Turn number values into timestamps for datetime fields | Kim Alvefur | 2021-10-26 | 1 | -1/+3 |
| | | | | Makes it symmetric with parsing. | ||||
* | util.dataforms: Coerce number values for boolean fields | Kim Alvefur | 2021-10-26 | 1 | -2/+5 |
| | | | | | Makes more sense than coercing to a string, which would always be truthy. | ||||
* | util.dataforms: Add support for datetime field types via XEP-0122 | Kim Alvefur | 2021-10-25 | 1 | -0/+8 |
| | |||||
* | util.startup: Understand -h, -? as --help in prosodyctl but ignore | Kim Alvefur | 2021-10-25 | 1 | -1/+1 |
| | | | | | prosodyctl -h showing an error was not very helpful, especially since prosodyctl shows its help for any unknown (or none) command. | ||||
* | util.startup: Show brief usage on `prosody -h|-?|--help` | Kim Alvefur | 2021-10-25 | 1 | -1/+8 |
| | | | | | Seems more suitable than asking if prosodyctl was meant to be used, or going ahead and starting. | ||||
* | util.startup: Skip config readability check in migrator (thanks eTaurus) | Kim Alvefur | 2021-10-23 | 1 | -1/+1 |
| | | | | | | This field is empty for reasons when invoked by prosody-migrator, which threw an error: > bad argument #1 to 'open' (string expected, got nil) | ||||
* | mod_pubsub,mod_pep: Implement 'send_last_published_item' option #1436 | Kim Alvefur | 2021-10-19 | 1 | -0/+1 |
| | | | | | | | | Default left as 'never' in mod_pubsub to preserve the previous behavior. Unclear if this is desirable, but can always be changed later. In mod_pep this allows turning off the automatic resending of most recent item. | ||||
* | mod_auth_cyrus: Remove (move to community modules) | Kim Alvefur | 2021-10-17 | 1 | -169/+0 |
| | | | | mod_auth_ldap provides LDAP support without being tied to Cyrus | ||||
* | util.startup: Only ask if 'prosodyctl' was meant instead of 'prosody' (fix ↵ | Kim Alvefur | 2021-10-12 | 1 | -1/+3 |
| | | | | #1692) | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2021-10-12 | 1 | -1/+1 |
|\ | |||||
| * | util.startup: Correctly point out unknown short param (fixes #1691) | Kim Alvefur | 2021-10-12 | 1 | -1/+1 |
| | | |||||
* | | util.prosodyctl.check: Add two known globals from mod_http | Kim Alvefur | 2021-10-03 | 1 | -0/+2 |
| | | |||||
* | | util.startup: Allow separate command line argument settings for prosody and ↵ | Kim Alvefur | 2021-09-30 | 1 | -6/+11 |
| | | | | | | | | | | | | | | prosodyctl Makes it clearer that prosody does not take -v atm, as well as how prosodyctl does not take the demonization flags. | ||||
* | | prosodyctl: Add support for -v/--verbose to enable debug logging | Kim Alvefur | 2021-09-30 | 1 | -2/+4 |
| | | | | | | | | More convenient than the environment variable. | ||||
* | | prosodyctl: Add alternate XMPP Blackbox Exporter connectivity check | Kim Alvefur | 2021-09-30 | 1 | -3/+71 |
| | | | | | | | | | | Reduces the reliance on observe.jabber.network and enables alternatives for those who wish to have that. | ||||
* | | prosodyctl: Use HTTP client in promise mode for connectivity check | Kim Alvefur | 2021-09-30 | 1 | -26/+14 |
| | | | | | | | | | | Feels a bit cleaner to hide away the async.waiter() and return value handling. Also line count reduction! |