aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* tools: Add a tool for comparing DOAP to the latest XEP versionsKim Alvefur2023-12-031-0/+14
| | | | Needs wget, awk, sed and xml2
* migrator: Add an escape hatch to allow arbitrary config optionsKim Alvefur2023-11-271-0/+5
| | | | | | | | | | | | Previously only SQL settings and the 'path' for internal storage could be set, and only for SQL and internal storage. input { type = "whatever"; config = { whatever_foobar = "something" } }
* tools/build-env: Tools for building and testing in a containerKim Alvefur2023-11-123-0/+61
| | | | | | | | | ./tools/build-env/build.sh Creates a container image based on Debian or Ubuntu ./tools/build-env/here.sh Starts a container and mounts in the current working directory, from where one can ./configure; make; make test etc
* migrator: Add mod_http_file_share example to config templateKim Alvefur2023-11-011-0/+6
|
* migrator: Update default config template with new storesKim Alvefur2023-11-011-0/+4
| | | | | | * mod_authz_internal adds account_roles * mod_cron has its state * mod_smacks also has some non-critical state
* tools: Reflect bash-ness of mod2spec in shebangKim Alvefur2023-08-261-1/+1
| | | | Non-portable substitution syntax? Oh well.
* tools: Fix file ending of mod2spec.sh (thanks buildbot)Kim Alvefur2023-07-161-0/+0
| | | | Accidentally .lua ?
* tools: Add mod2spec.sh, turns util.example into spec/util_example_spec.luaKim Alvefur2023-07-161-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)
* tools: Update imports to use new prosody.* namespaceKim Alvefur2023-06-089-29/+59
|
* tools/tb2err: Trim trailing whitespaceKim Alvefur2023-04-081-1/+1
|
* tools/tb2err: Rewrite prosody-modules paths to ../modulesKim Alvefur2023-04-081-0/+2
| | | | This assumes you have community modules in ../modules as I do
* tools/tb2err: Add some example usage in a commentKim Alvefur2023-04-081-0/+2
|
* tools/tb2err: Drop use of lua-any since it should run fine on any LuaKim Alvefur2023-04-081-2/+1
| | | | Dependencies--; \o/
* tools/dnsregistry: Fix to ignore unassigned entriesKim Alvefur2023-01-201-1/+1
|
* tools: Add initial mutation testing scriptMatthew Wild2022-10-111-0/+217
|
* compat: Use table.pack (there since Lua 5.2) over our util.tableKim Alvefur2022-07-111-1/+1
| | | | | Added in d278a770eddc avoid having to deal with its absence in Lua 5.1. No longer needed when Lua 5.1 support is dropped.
* compat: Remove handling of Lua 5.1 location of 'unpack' functionKim Alvefur2022-07-111-1/+1
|
* Spelling: Fix various spelling mistakes (thanks timeless)Kim Alvefur2022-03-072-3/+3
| | | | | | Words, sometimes I wonder how they even work Maybe I missed something.
* tools: Allow processing instructions in some XML parsing toolsKim Alvefur2022-02-042-2/+2
| | | | IANA registry files have XSLT references, which are harmless to ignore.
* tools.dnsregistry: For converting IANA DNS registry data to Lua tableKim Alvefur2020-10-041-0/+43
|
* tools/xep227toprosody: Remove obsolete tool in favor of storage driverKim Alvefur2022-01-181-269/+0
| | | | | | | | | | This tool hasn't been updated for recent XEP-0227 changes, hasn't seen many changes at all since its introduction and I don't remember anyone mentioning ever using it. Using mod_storage_xmlarchive and the migrator or the 3rd party mod_migrate tool should work better these days and should be the way forward.
* migrator: Support pubsub and pep as a special-caseKim Alvefur2022-01-092-10/+25
| | | | | This sorta overloads the type suffix but PEP is used for enough stuff to justify this hack
* migrator: Enhance loggingKim Alvefur2022-01-091-4/+11
|
* migrator: Add option to keep going despite errorsKim Alvefur2022-01-091-0/+14
|
* migrator: Also migrate host/non-user archive dataKim Alvefur2022-01-091-3/+2
| | | | Needed for things like mod_http_file_share
* migrator: Refactor out individual item migrator for code deduplicationKim Alvefur2022-01-091-16/+18
|
* migrator: Include --options in usage infoKim Alvefur2022-01-091-1/+4
|
* migrator: Reuse earlier usage textKim Alvefur2022-01-091-3/+7
|
* migrator: Customise cli argument parsing (--help, --verbose)Kim Alvefur2022-01-091-1/+8
| | | | | Previously -v etc would do nothing and --config without argument would not have worked correctly.
* util.format: Ensure metatable __tostring results are also sanitizedKim Alvefur2021-12-131-1/+2
|
* tools/generate_format_spec: Apply lua-format to silence luacheckKim Alvefur2021-12-111-7/+9
|
* util.format: ALL THE TESTS!!!Kim Alvefur2021-12-111-0/+49
| | | | | | The more tests I made, the more Lua 5.1 quirks I discovered. Tests generated using a tool plus some touch-up.
* ejabberd2prosody.lua: fix MUC subject conversion with appropriate destructuringarcseconds2021-10-261-1/+2
|
* ejabberd2prosody: Don't import disabled or empty passwordsMatthew Wild2021-10-131-1/+3
|
* prosody2ejabberd: Check for iteration count at position 6Matthew Wild2021-10-071-1/+7
| | | | | In some data dumps, presumably from newer ejabberd versions, position 5 is the string "sha", and the iteration count follows it.
* ejabberd2prosody: Convert SCRAM iteration count to number (thanks arcseconds)Matthew Wild2021-10-071-1/+1
|
* migrator: Silence assert in core.moduleapiKim Alvefur2021-07-291-0/+4
| | | | | The assert triggers because we're not loading the stanza route, because we are unlikely to need it during migration.
* migrator: Use parsed command line flags already parsed by util.startupKim Alvefur2021-07-291-14/+1
|
* migrator: Trick net.server into thinking the config is loadedKim Alvefur2021-07-291-0/+1
| | | | Fixes "Loading outside Prosody or Prosody not yet initialized"
* migrator: Customise startup sequence to fix #1673 (Thanks acidsys)Kim Alvefur2021-07-291-2/+19
| | | | | | | | | | | | Diverge from util.startup.prosodyctl() in order to skip unneeded behavior, such as loading the *Prosody* config file, which we do not need here, based on the `--config` flag which should point at the migrator config file instead. Notably removed: * read_config() since this loads the Prosody config * check_unwriteable() which checks logfiles specified in the Prosody config, so not relevant * make_dummy_hosts() but the migrator sets up its own hosts during migration
* tools/jabberd14sql2prosody: Tweak wording in commentsKim Alvefur2021-07-131-2/+2
|
* tools/xep227toprosody: Tweak wording in commentsKim Alvefur2021-07-131-2/+2
|
* tools/cfgdump: Serialize individual (table) settings in stable order tooKim Alvefur2021-05-171-2/+9
|
* tools/cfgdump: Iterate in sort order to give stable outputKim Alvefur2021-05-171-5/+6
| | | | | Should allow using this tool for comparing configs without hash table order messing things up.
* tools.modtrace: Pass config to serialize()Matthew Wild2020-10-301-1/+8
|
* tools.modtrace: Library for tracing/debugging Lua module and method callsMatthew Wild2020-10-301-0/+152
|
* tools/form2table: Convert XEP-0004 dataform from XML to util.dataforms Lua ↵Kim Alvefur2020-10-281-0/+48
| | | | | | format Used this to generate code for a number of PubSub forms IIRC
* tools/linedebug: Print each line of source executedKim Alvefur2020-10-281-0/+18
| | | | | The extremely verbose debug output. Nice for getting some idea which code runs most often, or where it pauses for no reason etc.
* tools/cfgdump: Reads Prosody config file and pretty-prints it back outKim Alvefur2020-10-281-0/+120
| | | | | | | | | Useful for comparing what you think you have in your config with what Prosody sees, e.g. wrt (lack of) significance of indentation, order of options vs scope etc. (global options do not go at the end!) Could probably be turned into a prosodyctl command, especially if it learns to redact secrets and passwords.
* tools/tb2err: Formats Lua traceback in errors.err formatKim Alvefur2020-10-281-0/+21
| | | | | | | | | | | | Manually opening to the files and line numbers from a Lua traceback is tedious. This tool converts tracebacks into a format that many compilers and such tools use, which is also compatible with Vim (and possibly other editors). Thus if someone sends you a pastebin link with a traceback, a command like the following gets you right to the relevant lines: curl paste.example/abc123.txt | tb2err > errors.err; vim -q