<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://hg.omfa.de/prosody-hg/</link>
    <language>en-us</language>

    <title>prosody-hg: plugins/mod_admin_shell.lua history</title>
    <description>plugins/mod_admin_shell.lua revision history</description>
    <item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/4f4c346e4f39/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 19 May 2026 19:27:43 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Don't echo password back to the client</title>
    <link>http://hg.omfa.de/prosody-hg/log/2a050069f37b/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Don't echo password back to the client<br/>
<br/>
Unintentional debugging introduced in 0e9e3efa381f]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 19 May 2026 19:24:53 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/c1469296190d/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 17 Apr 2026 14:35:32 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Show help listing when specifying only a section name</title>
    <link>http://hg.omfa.de/prosody-hg/log/d666e7cd8609/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Show help listing when specifying only a section name<br/>
<br/>
This is significantly better than showing 'table:0x.....'.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Apr 2026 18:16:05 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/7008869fcce2/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 02 Apr 2026 20:54:46 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fail user creation/modification if new password fails saslprep</title>
    <link>http://hg.omfa.de/prosody-hg/log/0e9e3efa381f/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fail user creation/modification if new password fails saslprep<br/>
<br/>
This saves us from setting an invalid password and preventing the new account<br/>
from authenticating.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 02 Apr 2026 20:53:04 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/44a8c8d4146a/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 31 Mar 2026 12:25:20 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Improve per-host command cleanup</title>
    <link>http://hg.omfa.de/prosody-hg/log/b9688ac25255/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Improve per-host command cleanup<br/>
<br/>
In some cases, host command handlers were not being cleaned up after the<br/>
source module was unloaded, for example. This is because mod_admin_shell saw<br/>
that the handler being removed did not match the installed handler. But this<br/>
is expected for the new per-host commands, because the installed handler is a<br/>
wrapper function which routes between the hosts.<br/>
<br/>
The wrapper function itself also held a reference via upvalue to the first<br/>
command object which added it, just so it could read the argument names and<br/>
such. This could cause command objects, and anything referenced by the<br/>
handler, to stay around in memory longer than expected, even after a module<br/>
has been unloaded or a host deactivated.<br/>
<br/>
The new logic breaks out the handler function to eliminate any unexpected<br/>
upvalues. It improves the cleanup logic when a command is removed. Finally,<br/>
it also cleans up commands when mod_admin_shell itself is unloaded.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 27 Mar 2026 12:43:10 +0000</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/f20bb1c53652/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 21 Feb 2026 17:08:11 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Make cert index search path relative to config file</title>
    <link>http://hg.omfa.de/prosody-hg/log/2aeb5dcb36bf/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Make cert index search path relative to config file<br/>
<br/>
Otherwise it defaults to something relative to the working directory,<br/>
wherever that is? Data directory maybe?]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 21 Feb 2026 17:05:48 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Include timestamps with logs in debug:ping()</title>
    <link>http://hg.omfa.de/prosody-hg/log/0dd917830523/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Include timestamps with logs in debug:ping()<br/>
<br/>
Makes it easier to see get a feel for if it pauses on something and how<br/>
long things like DNS lookups and connection attempts take.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 06 Jan 2026 19:14:47 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/071779f7645c/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 05 Dec 2025 17:53:52 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Ensure JIDs are normalized in xmpp:ping()</title>
    <link>http://hg.omfa.de/prosody-hg/log/5ad86978ae78/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Ensure JIDs are normalized in xmpp:ping()]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 05 Dec 2025 17:53:10 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Also relax JID requirements in debug:ping()</title>
    <link>http://hg.omfa.de/prosody-hg/log/d539016e6b21/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Also relax JID requirements in debug:ping()]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 05 Dec 2025 17:51:21 +0100</pubDate>
</item>
<item>
    <title>Merge 13.0-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/015c8c75f8cf/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 13.0-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 05 Dec 2025 17:29:53 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Allow pinging any JID with xmpp:ping()</title>
    <link>http://hg.omfa.de/prosody-hg/log/8d90a83603d6/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Allow pinging any JID with xmpp:ping()<br/>
<br/>
Feature requested by MattJ.<br/>
<br/>
Argument that users don't expect s2s-only pings.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 01 Dec 2025 16:35:11 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add config:dump() command to display the in-memory configuration</title>
    <link>http://hg.omfa.de/prosody-hg/log/d520cee2bbdb/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add config:dump() command to display the in-memory configuration]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Oct 2025 12:15:19 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add debug:ping() which prints debug logs until pong</title>
    <link>http://hg.omfa.de/prosody-hg/log/a2d4c71f5066/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add debug:ping() which prints debug logs until pong<br/>
<br/>
Essentially a verbose version of xmpp:ping(), but more useful for<br/>
debugging s2s issues without having to watch (and have enabled) debug<br/>
logs at the same time and try to pick out where the start and end are.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 05 Oct 2025 11:08:27 +0200</pubDate>
</item>
<item>
    <title>prosodyctl shell: Output TSV when output is not a TTY</title>
    <link>http://hg.omfa.de/prosody-hg/log/b1e7d3f571b1/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[prosodyctl shell: Output TSV when output is not a TTY<br/>
<br/>
This is meant to make it easier to use in scripts.<br/>
<br/>
CSV would have been nice but requires escaping of fields containing &quot;,&quot;,<br/>
but this implementation simply ignores this and assumes fields will not<br/>
contain tabs.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 31 Aug 2025 00:47:25 +0200</pubDate>
</item>
<item>
    <title>mod_admin_shell: Skip adding margin for tables in non-repl use</title>
    <link>http://hg.omfa.de/prosody-hg/log/88f5ea4c28ce/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Skip adding margin for tables in non-repl use<br/>
<br/>
Since it is there to account for the '| ' prefix added by the shell in<br/>
interactive mode it is not needed when in non-interactive mode.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 31 Aug 2025 00:41:59 +0200</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix matching logic in s2s:close (Thanks Menel)</title>
    <link>http://hg.omfa.de/prosody-hg/log/f44f2a8a8c37/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix matching logic in s2s:close (Thanks Menel)<br/>
<br/>
It was matching 'from' on the wrong field and the boolean logic was<br/>
wrong.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 28 Apr 2025 19:41:19 +0200</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add role:list() and role:show() commands</title>
    <link>http://hg.omfa.de/prosody-hg/log/a071b20ccc0f/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add role:list() and role:show() commands]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 04 Apr 2025 16:50:25 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Visual tweaks to the output of debug:cert_index()</title>
    <link>http://hg.omfa.de/prosody-hg/log/e78e79f1b5f5/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Visual tweaks to the output of debug:cert_index()]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 03 Apr 2025 19:58:57 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add debug:cert_index() command</title>
    <link>http://hg.omfa.de/prosody-hg/log/3ee95eb17045/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add debug:cert_index() command]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 03 Apr 2025 16:54:02 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell, prosodyctl shell: Report command failure when no password entered (fixes #1907)</title>
    <link>http://hg.omfa.de/prosody-hg/log/c8e534b4f2e2/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell, prosodyctl shell: Report command failure when no password entered (fixes #1907)]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 31 Mar 2025 17:30:50 +0100</pubDate>
</item>
<item>
    <title>prosodyctl shell: More reliable detection of REPL/interactive mode (fixes #1895)</title>
    <link>http://hg.omfa.de/prosody-hg/log/a28349b8a387/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[prosodyctl shell: More reliable detection of REPL/interactive mode (fixes #1895)]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Mar 2025 11:37:11 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove outdated help text (fixes #1898)</title>
    <link>http://hg.omfa.de/prosody-hg/log/5cc4a3e0335c/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove outdated help text (fixes #1898)<br/>
<br/>
The ! commands have been broken for some time, and we're not going to<br/>
implement them right now. If we want fancier editing, we can now do that on<br/>
the client side (with readline and stuff).<br/>
<br/>
Also removes mention of telnet!]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Mar 2025 11:35:39 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Improve help listing in non-REPL mode</title>
    <link>http://hg.omfa.de/prosody-hg/log/46e7cc4de5e6/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Improve help listing in non-REPL mode]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 17 Feb 2025 19:10:48 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix simple command execution (e.g. help)</title>
    <link>http://hg.omfa.de/prosody-hg/log/42367f7e6e94/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix simple command execution (e.g. help)]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 17 Feb 2025 19:10:26 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Set flag on session when in REPL mode</title>
    <link>http://hg.omfa.de/prosody-hg/log/5e8a707f1dbf/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Set flag on session when in REPL mode]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 17 Feb 2025 19:09:11 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Improved error handling for shell-invoked commands</title>
    <link>http://hg.omfa.de/prosody-hg/log/c133635d0bc6/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Improved error handling for shell-invoked commands]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 17 Feb 2025 18:25:52 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell, util.prosodyctl.shell: Process command-line args on server-side, with argparse support</title>
    <link>http://hg.omfa.de/prosody-hg/log/1465b1e305df/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell, util.prosodyctl.shell: Process command-line args on server-side, with argparse support<br/>
<br/>
This allow a shell-command to provide a 'flags' field, which will automatically<br/>
cause the parameters to be fed through argparse.<br/>
<br/>
The rationale is to make it easier for more complex commands to be invoked<br/>
from the command line (`prosodyctl shell foo bar ...`). Until now they were<br/>
limited to accepting a list of strings, and any complex argument processing<br/>
was non-standard and awkward to implement.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 17 Feb 2025 17:02:35 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove duplicated line</title>
    <link>http://hg.omfa.de/prosody-hg/log/a00d0e2dc33a/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove duplicated line]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Feb 2025 17:05:36 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Rename user:setrole to user:set_roles</title>
    <link>http://hg.omfa.de/prosody-hg/log/b9fce1651699/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Rename user:setrole to user:set_roles<br/>
<br/>
This is more readable and accessible, and it will only be harder to change<br/>
after release.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Feb 2025 16:20:42 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Hide secondary role commands, focus on primary roles</title>
    <link>http://hg.omfa.de/prosody-hg/log/026a75a443de/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Hide secondary role commands, focus on primary roles<br/>
<br/>
Secondary roles are an advanced feature without any strong use cases<br/>
currently. Having multiple ways to manage roles is confusing.<br/>
<br/>
Now the 'user:role' command will just show the primary role if that is all<br/>
there is, but will list secondary roles too if there are any (which in 99.9%<br/>
of cases there won't be).]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Feb 2025 16:18:59 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Support for hiding certain commands from default help listing</title>
    <link>http://hg.omfa.de/prosody-hg/log/4c1f26b4883b/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Support for hiding certain commands from default help listing<br/>
<br/>
Useful for e.g. deprecated commands.]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Feb 2025 16:16:19 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix result handling of user addrole/delrole commands</title>
    <link>http://hg.omfa.de/prosody-hg/log/8f43b954bdac/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix result handling of user addrole/delrole commands]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 13 Feb 2025 15:54:39 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix column alignment in 'help roles'</title>
    <link>http://hg.omfa.de/prosody-hg/log/d980c3e03637/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix column alignment in 'help roles']]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 02 Feb 2025 14:12:52 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix help forgetting arguments</title>
    <link>http://hg.omfa.de/prosody-hg/log/c749a751b4a5/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix help forgetting arguments<br/>
<br/>
The array:pluck() method mutates the args, replacing the table items<br/>
with the resulting strings. On later runs I assume it tries to index the<br/>
string, which returns nil, emptying the array.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 02 Feb 2025 13:33:17 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove log statement intended for development only</title>
    <link>http://hg.omfa.de/prosody-hg/log/ff13dd315e68/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove log statement intended for development only]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 16 Jan 2025 11:35:19 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove redundant 'mod_' prefix from debug message</title>
    <link>http://hg.omfa.de/prosody-hg/log/74a8006ee7f6/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove redundant 'mod_' prefix from debug message]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 08 Jan 2025 08:41:15 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix reporting origin module for commands</title>
    <link>http://hg.omfa.de/prosody-hg/log/6e5124f72e9a/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix reporting origin module for commands<br/>
<br/>
The field `_provided_by` comes from module:provides(), but these items<br/>
comes from moduel:add_item(), which include the originating module as a<br/>
'source' field of the event. However, this is absent when items are<br/>
retrieved at a later time than the initial event.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 08 Jan 2025 08:11:02 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: user:password(): Support prompting for password if none given</title>
    <link>http://hg.omfa.de/prosody-hg/log/2cd43975a15c/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: user:password(): Support prompting for password if none given]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 19:25:12 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: user:create(): Reject promise with error message on failure</title>
    <link>http://hg.omfa.de/prosody-hg/log/62aca6adcfd3/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: user:create(): Reject promise with error message on failure]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 19:24:05 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Mark event as handled when requested input is submitted</title>
    <link>http://hg.omfa.de/prosody-hg/log/85e8cc6870ae/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Mark event as handled when requested input is submitted]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 19:23:23 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: user:create(): request password via prompt if none given</title>
    <link>http://hg.omfa.de/prosody-hg/log/abbdcef552fb/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: user:create(): request password via prompt if none given]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 18:17:57 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add session method to request (password) input from shell client</title>
    <link>http://hg.omfa.de/prosody-hg/log/f57872788424/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add session method to request (password) input from shell client]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 18:17:30 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Don't pause async thread while waiting for promise result</title>
    <link>http://hg.omfa.de/prosody-hg/log/382d1a92006f/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Don't pause async thread while waiting for promise result<br/>
<br/>
This allows us to continue sending/receiving on the session, for example if<br/>
the promise will be resolved by other data that the client is going to send.<br/>
<br/>
Specifically, this allows the repl-request-input to work without a deadlock.<br/>
<br/>
It does open the door to interleaved commands/results, which may not be a good<br/>
thing overall, but can be restricted separately if necessary (e.g. a flag on<br/>
the session).]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 07 Jan 2025 18:15:50 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: stats:show(): Friendlier error message when statistics disabled</title>
    <link>http://hg.omfa.de/prosody-hg/log/67c9fc643873/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: stats:show(): Friendlier error message when statistics disabled]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Sat, 28 Dec 2024 18:35:24 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Report when a module is already loaded</title>
    <link>http://hg.omfa.de/prosody-hg/log/f77c247258cc/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Report when a module is already loaded<br/>
<br/>
Hopefully less confusing than &quot;Module loaded onto 0 hosts&quot;]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 15 Nov 2024 15:52:37 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Refactor end of module:load</title>
    <link>http://hg.omfa.de/prosody-hg/log/d8f7a8a26965/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Refactor end of module:load<br/>
<br/>
Meant to improve clarity and make improving easier]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 15 Nov 2024 15:48:07 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Reject attempt to add or remove roles for unrelated hosts</title>
    <link>http://hg.omfa.de/prosody-hg/log/67288253d9a2/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Reject attempt to add or remove roles for unrelated hosts<br/>
<br/>
The three-argument version seems to be a left-over from 0.12]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 01 Nov 2024 13:10:45 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Allow assigning roles to arbitrary JIDs when supported</title>
    <link>http://hg.omfa.de/prosody-hg/log/cc67109ce502/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Allow assigning roles to arbitrary JIDs when supported<br/>
<br/>
mod_authz_internal does not support this]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 01 Nov 2024 13:07:25 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Prevent traceback due to type error</title>
    <link>http://hg.omfa.de/prosody-hg/log/4bf889e94831/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Prevent traceback due to type error<br/>
<br/>
Here too]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 26 Aug 2024 22:26:59 +0200</pubDate>
</item>
<item>
    <title>Merge 0.12-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/ae65f199f408/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[Merge 0.12-&gt;trunk]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 27 Apr 2024 15:59:46 +0200</pubDate>
</item>
<item>
    <title>mod_admin_shell: Allow matching on host or bare JID in c2s:show</title>
    <link>http://hg.omfa.de/prosody-hg/log/b2b090181270/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Allow matching on host or bare JID in c2s:show<br/>
<br/>
Only supporting exact match on full JID isn't helpful if you want to<br/>
list sessions per host or user.<br/>
<br/>
Backport of 430333198e4c<br/>
<br/>
Fixes #1857]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 31 Mar 2023 22:01:27 +0200</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add connection created time</title>
    <link>http://hg.omfa.de/prosody-hg/log/9eb081616842/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Add connection created time<br/>
<br/>
This adds an output format option to show the time that the connection was created.<br/>
<br/>
Ref #1852]]></description>
    <author>&#97;&#105;&#100;&#97;&#110;&#64;&#106;&#109;&#97;&#100;&#46;&#111;&#114;&#103;</author>
    <pubDate>Wed, 03 Apr 2024 21:56:03 -0700</pubDate>
</item>
<item>
    <title>mod_admin_shell: Fix linter issues</title>
    <link>http://hg.omfa.de/prosody-hg/log/83f3076965f6/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Fix linter issues]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 29 Nov 2023 17:49:20 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove verbose logging</title>
    <link>http://hg.omfa.de/prosody-hg/log/b1f5a5531564/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove verbose logging]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 29 Nov 2023 17:33:56 +0000</pubDate>
</item>
<item>
    <title>mod_admin_shell: Remove timer:info() (it's been debug:timers() for some time)</title>
    <link>http://hg.omfa.de/prosody-hg/log/e8429d2faea4/plugins/mod_admin_shell.lua</link>
    <description><![CDATA[mod_admin_shell: Remove timer:info() (it's been debug:timers() for some time)]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 29 Nov 2023 17:22:18 +0000</pubDate>
</item>

  </channel>
</rss>
