<?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_pubsub/mod_pubsub.lua history</title>
    <description>plugins/mod_pubsub/mod_pubsub.lua revision history</description>
    <item>
    <title>mod_pubsub, util.pubsub: Support for 'authorize' access model</title>
    <link>http://hg.omfa.de/prosody-hg/log/221f3378e7f4/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub, util.pubsub: Support for 'authorize' access model]]></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 14:18:06 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Provide iteminfo method to enable retract-own-items functionality</title>
    <link>http://hg.omfa.de/prosody-hg/log/354427afb638/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Provide iteminfo method to enable retract-own-items functionality]]></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 14:15:00 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Error if loaded outside of a component</title>
    <link>http://hg.omfa.de/prosody-hg/log/cc916272c30f/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Error if loaded outside of a component<br/>
<br/>
This may change in the future, if we decide to support pubsub on hosts, but we<br/>
would need to resolve e.g. #1808 first.]]></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, 12 Jan 2026 17:13:06 +0000</pubDate>
</item>
<item>
    <title>mod_pubsub: Remove unused loop variable [luacheck]</title>
    <link>http://hg.omfa.de/prosody-hg/log/df32fff0963d/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Remove unused loop variable [luacheck]]]></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:54:52 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Quiet down check for service admin</title>
    <link>http://hg.omfa.de/prosody-hg/log/5033029130f5/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Quiet down check for service admin<br/>
<br/>
This produced a *lot* of noise, especially listing items.]]></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, 07 Jan 2025 23:37:41 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Limit node listing based on new ACL-aware metadata method</title>
    <link>http://hg.omfa.de/prosody-hg/log/0338a5569178/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Limit node listing based on new ACL-aware metadata method<br/>
<br/>
Ensures that nodes that one does not have metadata access to are hidden<br/>
from view.<br/>
<br/>
This follows from the new ACL-aware method added in 3b357ab6b6eb.]]></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, 07 Jan 2025 22:57:39 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Expand shell commands to include node/item management</title>
    <link>http://hg.omfa.de/prosody-hg/log/8091c1b8023e/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Expand shell commands to include node/item management]]></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 14:27:18 +0000</pubDate>
</item>
<item>
    <title>mod_pubsub: Use new metadata method</title>
    <link>http://hg.omfa.de/prosody-hg/log/eae0272b87e3/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Use new metadata method<br/>
<br/>
No longer bypasses access control to retrieve this config subset, which<br/>
is also explicitly named in the service config now.]]></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, 08 Nov 2024 02:12:45 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Check new role framework for node creation privileges</title>
    <link>http://hg.omfa.de/prosody-hg/log/cfc42ed3892c/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Check new role framework for node creation privileges<br/>
<br/>
This enables granting regular users permission to create nodes via the<br/>
new roles framework. Previously this required either making everyone an<br/>
admin or writing a custom mod_pubsub variant with different permission<br/>
details.<br/>
<br/>
Previous default behavior of only allowing creation by admin is kept as<br/>
to not give out unexpected permissions on upgrade, but could be<br/>
reevaluated at a later time.<br/>
<br/>
Fixes #1324]]></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, 13 Oct 2024 13:03:08 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Ignore shadowed variable [luacheck]</title>
    <link>http://hg.omfa.de/prosody-hg/log/3347ed1014b8/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Ignore shadowed variable [luacheck]]]></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, 06 Mar 2024 19:12:11 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Add shell commands to create and list nodes</title>
    <link>http://hg.omfa.de/prosody-hg/log/e9ab660b9c5f/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add shell commands to create and list nodes]]></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, 06 Mar 2024 17:38:21 +0000</pubDate>
</item>
<item>
    <title>mod_pubsub: Provide some node properties in summary template #1809</title>
    <link>http://hg.omfa.de/prosody-hg/log/c94989c557cd/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Provide some node properties in summary template #1809<br/>
<br/>
Gives some access to node details which are otherwise hard to determine<br/>
if you only see the plain text summary, since it is shared based on the<br/>
pubsub#type setting (or payload xmlns).]]></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, 22 Nov 2023 22:35:44 +0100</pubDate>
</item>
<item>
    <title>plugins: Use integer config API with interval specification where sensible</title>
    <link>http://hg.omfa.de/prosody-hg/log/50324f66ca2a/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[plugins: Use integer config API with interval specification where sensible<br/>
<br/>
Many of these fall into a few categories:<br/>
- util.cache size, must be &gt;= 1<br/>
- byte or item counts that logically can't be negative<br/>
- port numbers that should be in 1..0xffff]]></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, 17 Jul 2023 01:38:54 +0200</pubDate>
</item>
<item>
    <title>plugins: Use get_option_enum where appropriate</title>
    <link>http://hg.omfa.de/prosody-hg/log/173038306750/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[plugins: Use get_option_enum where appropriate]]></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, 16 Jan 2021 21:04:58 +0100</pubDate>
</item>
<item>
    <title>plugins: Prefix module imports with prosody namespace</title>
    <link>http://hg.omfa.de/prosody-hg/log/74b9e05af71e/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[plugins: Prefix module imports with prosody namespace]]></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, 24 Mar 2023 13:15:28 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub, mod_pep: Support per-node configurable inclusion of publisher</title>
    <link>http://hg.omfa.de/prosody-hg/log/31b22cc221b5/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub, mod_pep: Support per-node configurable inclusion of publisher<br/>
<br/>
This matches ejabberd's behaviour, using the 'pubsub#itemreply' config option.<br/>
<br/>
Although the current definition of this option in the specification is not<br/>
as clear as it could be, I think matching what existing deployments do is the<br/>
best option to resolve the ambiguity and reduce fragmentation.<br/>
<br/>
We should update the spec to be clearer about how to use and interpret this<br/>
option.<br/>
<br/>
The 'expose_publisher' option for mod_pubsub is now an override (always expose<br/>
or never expose). If unset, it will use the per-node config (which defaults to<br/>
not exposing).<br/>
<br/>
Thanks to Link Mauve, edhelas and goffi for sparking this feature.]]></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, 22 Mar 2023 11:39:19 +0000</pubDate>
</item>
<item>
    <title>Switch to a new role-based authorization framework, removing is_admin()</title>
    <link>http://hg.omfa.de/prosody-hg/log/9061f9621330/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[Switch to a new role-based authorization framework, removing is_admin()<br/>
<br/>
We began moving away from simple &quot;is this user an admin?&quot; permission checks<br/>
before 0.12, with the introduction of mod_authz_internal and the ability to<br/>
dynamically change the roles of individual users.<br/>
<br/>
The approach in 0.12 still had various limitations however, and apart from<br/>
the introduction of roles other than &quot;admin&quot; and the ability to pull that info<br/>
from storage, not much actually changed.<br/>
<br/>
This new framework shakes things up a lot, though aims to maintain the same<br/>
functionality and behaviour on the surface for a default Prosody<br/>
configuration. That is, if you don't take advantage of any of the new<br/>
features, you shouldn't notice any change.<br/>
<br/>
The biggest change visible to developers is that usermanager.is_admin() (and<br/>
the auth provider is_admin() method) have been removed. Gone. Completely.<br/>
<br/>
Permission checks should now be performed using a new module API method:<br/>
<br/>
  module:may(action_name, context)<br/>
<br/>
This method accepts an action name, followed by either a JID (string) or<br/>
(preferably) a table containing 'origin'/'session' and 'stanza' fields (e.g.<br/>
the standard object passed to most events). It will return true if the action<br/>
should be permitted, or false/nil otherwise.<br/>
<br/>
Modules should no longer perform permission checks based on the role name.<br/>
E.g. a lot of code previously checked if the user's role was prosody:admin<br/>
before permitting some action. Since many roles might now exist with similar<br/>
permissions, and the permissions of prosody:admin may be redefined<br/>
dynamically, it is no longer suitable to use this method for permission<br/>
checks. Use module:may().<br/>
<br/>
If you start an action name with ':' (recommended) then the current module's<br/>
name will automatically be used as a prefix.<br/>
<br/>
To define a new permission, use the new module API:<br/>
<br/>
  module:default_permission(role_name, action_name)<br/>
  module:default_permissions(role_name, { action_name[, action_name...] })<br/>
<br/>
This grants the specified role permission to execute the named action(s) by<br/>
default. This may be overridden via other mechanisms external to your module.<br/>
<br/>
The built-in roles that developers should use are:<br/>
<br/>
 - prosody:user (normal user)<br/>
 - prosody:admin (host admin)<br/>
 - prosody:operator (global admin)<br/>
<br/>
The new prosody:operator role is intended for server-wide actions (such as<br/>
shutting down Prosody).<br/>
<br/>
Finally, all usage of is_admin() in modules has been fixed by this commit.<br/>
Some of these changes were trickier than others, but no change is expected to<br/>
break existing deployments.<br/>
<br/>
EXCEPT: mod_auth_ldap no longer supports the ldap_admin_filter option. It's<br/>
very possible nobody is using this, but if someone is then we can later update<br/>
it to pull roles from LDAP somehow.]]></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, 15 Jun 2022 12:15:01 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Don't attempt to use server actor as publisher (fixes #1723)</title>
    <link>http://hg.omfa.de/prosody-hg/log/018ac691ee22/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Don't attempt to use server actor as publisher (fixes #1723)]]></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, 21 Mar 2022 12:36:20 +0000</pubDate>
</item>
<item>
    <title>mod_pubsub: Allow configuring summary templates</title>
    <link>http://hg.omfa.de/prosody-hg/log/33a93d0a9a45/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Allow configuring summary templates<br/>
<br/>
Enables generation of summaries for more than Atom without additional<br/>
modules.]]></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, 24 Jan 2022 23:06:45 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Use the util.xtemplate to render Atom summary</title>
    <link>http://hg.omfa.de/prosody-hg/log/82cf9d3ffeee/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Use the util.xtemplate to render Atom summary]]></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, 24 Jan 2022 23:04:38 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Use the 'pubsub#type' setting to pick summary generator</title>
    <link>http://hg.omfa.de/prosody-hg/log/bc6fc1cb04ae/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Use the 'pubsub#type' setting to pick summary generator<br/>
<br/>
Allows using different ones even if multiple semantically different<br/>
formats share the same root element xmlns, e.g. generic Atom and<br/>
XEP-0277 entries.]]></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, 24 Jan 2022 23:05:26 +0100</pubDate>
</item>
<item>
    <title>util.pubsub: Fix item store resize to &quot;max&quot;</title>
    <link>http://hg.omfa.de/prosody-hg/log/26af75c20163/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[util.pubsub: Fix item store resize to &quot;max&quot;<br/>
<br/>
Previously this would end up passing the &quot;max&quot; directly to the<br/>
underlying storage.]]></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>Thu, 06 Jan 2022 01:18:35 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Allow specifying the JID of the pubsub service</title>
    <link>http://hg.omfa.de/prosody-hg/log/376522fb3f52/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Allow specifying the JID of the pubsub service<br/>
<br/>
This allows overriding it in cases where it is not equal to module.host,<br/>
like say, in mod_pep]]></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, 07 Dec 2021 13:03:55 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub,mod_pep: Advertise maximum number of items via XEP-0122</title>
    <link>http://hg.omfa.de/prosody-hg/log/14a679588b7b/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub,mod_pep: Advertise maximum number of items via XEP-0122<br/>
<br/>
Clients would generally be using the &quot;max&quot; symbol instead of discovering<br/>
this, but this also gets us validation and earlier rejection of out of<br/>
bounds values.]]></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, 20 Oct 2021 17:32:34 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Update callbacks on reload to more completely refresh config</title>
    <link>http://hg.omfa.de/prosody-hg/log/5735f931f5c4/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Update callbacks on reload to more completely refresh config<br/>
<br/>
This would also release any resources held via references from these<br/>
callbacks.<br/>
<br/>
I'm not sure why we don't just re-new() the whole thing.<br/>
<br/>
Related to #1382]]></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>Thu, 29 Jul 2021 17:37:27 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Update configuration on reload (fixes #1382)</title>
    <link>http://hg.omfa.de/prosody-hg/log/76156c675456/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Update configuration on reload (fixes #1382)<br/>
<br/>
Because of the way the previous pubsub service is carried access module<br/>
reloads, it would retain the configuration options with their previous<br/>
values from when the service was first created.]]></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, 25 Jul 2021 18:58:25 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Silence warning about 'service' as argument [luacheck]</title>
    <link>http://hg.omfa.de/prosody-hg/log/789da12cf232/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Silence warning about 'service' as argument [luacheck]<br/>
<br/>
Maybe the 'service' in the outer scope should be moved down to minimize<br/>
overlap with other functions that receive the same service as argument?]]></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, 25 Jul 2021 16:33:19 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Explicitly enable persistence by default to preserve behavior</title>
    <link>http://hg.omfa.de/prosody-hg/log/72512c0858b3/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Explicitly enable persistence by default to preserve behavior<br/>
<br/>
Since nodes were always persistent according to the XEP-0060 definition.<br/>
Whether data is stored in memory or on disk was not what this setting<br/>
was meant for.]]></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, 21 Jul 2021 23:35:08 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Remove publisher field when not exposing publisher</title>
    <link>http://hg.omfa.de/prosody-hg/log/d79f5431f31b/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Remove publisher field when not exposing publisher<br/>
<br/>
The publisher is already there on the item when the broadcaster gets it,<br/>
so it needs to do the opposite thing.]]></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, 25 Jul 2021 14:23:35 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Normalize 'publisher' JID</title>
    <link>http://hg.omfa.de/prosody-hg/log/605484fc1c62/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Normalize 'publisher' JID<br/>
<br/>
All the XEP-0060 examples have the publisher attribute set to a bare<br/>
JID, but the text does allow it to be the full JID.<br/>
<br/>
Since mod_pubsub is more likely used for open nodes that anyone can<br/>
subscribe to it makes sense to not leak the full JIDs. This is also<br/>
disabled by defaults.<br/>
<br/>
In mod_pep on the other hand it might make sense to have the full JID<br/>
since that data is more likely to be broadcast to contacts which are<br/>
already somewhat trusted.]]></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, 25 Jul 2021 14:01:45 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Respect 'expose publisher' setting in item retrieval</title>
    <link>http://hg.omfa.de/prosody-hg/log/ddd6e21e58bf/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Respect 'expose publisher' setting in item retrieval]]></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, 25 Jul 2021 13:52:27 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub,mod_pep: Support &quot;max&quot; as 'pubsub#max_items'</title>
    <link>http://hg.omfa.de/prosody-hg/log/6641ca266d94/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub,mod_pep: Support &quot;max&quot; as 'pubsub#max_items'<br/>
<br/>
Fixes #1643<br/>
<br/>
API change: The argument to archive_itemstore() changes type to integer]]></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, 09 Jun 2021 15:58:49 +0200</pubDate>
</item>
<item>
    <title>Merge 0.11-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/58492b4b85ea/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[Merge 0.11-&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, 06 Nov 2020 16:52:38 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Fix notification stanza type setting (fixes #1605)</title>
    <link>http://hg.omfa.de/prosody-hg/log/4ae1d485a9c6/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Fix notification stanza type setting (fixes #1605)]]></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, 06 Nov 2020 13:49:40 +0100</pubDate>
</item>
<item>
    <title>Merge 0.11-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/bf8f2da84007/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[Merge 0.11-&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>Thu, 05 Nov 2020 22:31:25 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Lower priority of default &lt;body&gt; generator</title>
    <link>http://hg.omfa.de/prosody-hg/log/6c7c50a4de32/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Lower priority of default &lt;body&gt; generator<br/>
<br/>
in order to avoid conflict with a handler at the default (0) priority,<br/>
making it easier to write your own formatting in plugins.<br/>
<br/>
this follows the common pattern of default modules having lower priority]]></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>Thu, 05 Nov 2020 22:27:17 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Comment on itemstore type</title>
    <link>http://hg.omfa.de/prosody-hg/log/8a29e7206917/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Comment on itemstore type]]></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, 25 Oct 2020 15:23:36 +0100</pubDate>
</item>
<item>
    <title>Merge 0.11-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/1a23a58ac84e/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[Merge 0.11-&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>Thu, 27 Feb 2020 20:05:47 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub, mod_pep: Ensure correct number of children of &lt;item/&gt; (fixes #1496)</title>
    <link>http://hg.omfa.de/prosody-hg/log/657e61531b33/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub, mod_pep: Ensure correct number of children of &lt;item/&gt; (fixes #1496)]]></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>Thu, 27 Feb 2020 20:01:54 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Move a comment to where it makes sense</title>
    <link>http://hg.omfa.de/prosody-hg/log/d7cae7187943/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Move a comment to where it makes sense<br/>
<br/>
This code has moved but the comment did not follow it.]]></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, 10 Jul 2019 19:12:19 +0200</pubDate>
</item>
<item>
    <title>Merge 0.11-&gt;trunk</title>
    <link>http://hg.omfa.de/prosody-hg/log/fdc42f685557/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[Merge 0.11-&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, 22 Feb 2019 07:40:30 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Simplify configuration for node data (see #1302)</title>
    <link>http://hg.omfa.de/prosody-hg/log/8e68136cde08/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Simplify configuration for node data (see #1302)]]></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, 22 Feb 2019 07:33:23 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Split line in config check to improve readability</title>
    <link>http://hg.omfa.de/prosody-hg/log/8ad689b6d26f/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Split line in config check to improve readability<br/>
<br/>
Also makes it easier to compare with mod_pep]]></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, 23 Dec 2018 03:06:35 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Change order of luacheck directives to match arguments they apply to</title>
    <link>http://hg.omfa.de/prosody-hg/log/8e6a0e1c1876/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Change order of luacheck directives to match arguments they apply to]]></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, 23 Dec 2018 03:05:58 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Add semicolon (code style)</title>
    <link>http://hg.omfa.de/prosody-hg/log/e7ddf70ae417/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add semicolon (code style)]]></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, 23 Dec 2018 02:50:22 +0100</pubDate>
</item>
<item>
    <title>pubsub: Set pubsub#title as name attribute in disco#items (fixes #1226)</title>
    <link>http://hg.omfa.de/prosody-hg/log/17d43543f9b6/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[pubsub: Set pubsub#title as name attribute in disco#items (fixes #1226)]]></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, 30 Oct 2018 18:20:54 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Fix summary generation for Atom entries to use the correct field</title>
    <link>http://hg.omfa.de/prosody-hg/log/d00e8ec7ece2/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Fix summary generation for Atom entries to use the correct field]]></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 Aug 2018 21:57:04 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Add support for thin notifications (without the full payload)</title>
    <link>http://hg.omfa.de/prosody-hg/log/ef2616ade453/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add support for thin notifications (without the full payload)]]></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>Thu, 16 Aug 2018 15:20:29 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Only attach publisher on normal &quot;item&quot; broadcasts</title>
    <link>http://hg.omfa.de/prosody-hg/log/bd452e4f5a13/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Only attach publisher on normal &quot;item&quot; broadcasts<br/>
<br/>
The 'publisher' is only on &lt;item&gt; in the schema.]]></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>Thu, 16 Aug 2018 15:18:29 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Prepare to support turning notifications off for each kind of broadcast</title>
    <link>http://hg.omfa.de/prosody-hg/log/79cf1f74738f/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Prepare to support turning notifications off for each kind of broadcast]]></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>Thu, 16 Aug 2018 14:47:30 +0200</pubDate>
</item>
<item>
    <title>util.pubsub: Pass &quot;retract&quot; as the type of such broadcasts</title>
    <link>http://hg.omfa.de/prosody-hg/log/82fad995a149/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[util.pubsub: Pass &quot;retract&quot; as the type of such broadcasts<br/>
<br/>
This moves some XEP-0060 awkwardness out of util.pubsub and into mod_pubsub<br/>
<br/>
A retraction is broadcast in an &lt;items&gt; container, whereas most other<br/>
kinds of broadcasts are in a container with a name matching the 'kind'<br/>
attribute.]]></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>Thu, 16 Aug 2018 14:32:21 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub, mod_pep, util.pubsub: Move capability definitions into util.pubsub to avoid duplication</title>
    <link>http://hg.omfa.de/prosody-hg/log/37e814a680ab/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub, mod_pep, util.pubsub: Move capability definitions into util.pubsub to avoid duplication]]></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, 08 Aug 2018 20:48:02 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub, mod_pep: The &quot;restricted&quot; affiliation should be allowed to be unsubscribed but nothing else</title>
    <link>http://hg.omfa.de/prosody-hg/log/24a1e7a9d463/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub, mod_pep: The &quot;restricted&quot; affiliation should be allowed to be unsubscribed but nothing else<br/>
<br/>
Can't revoke their subscriptions on change of access model otherwise]]></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, 06 Aug 2018 18:33:33 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Add 'get_configuration' capability to relevant affiliations</title>
    <link>http://hg.omfa.de/prosody-hg/log/5444d4a8ad90/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add 'get_configuration' capability to relevant affiliations<br/>
<br/>
Like ca5228a7d907 did for mod_pep<br/>
<br/>
Thanks pep.]]></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 Aug 2018 19:12:29 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Add a public method for retrieving the service object</title>
    <link>http://hg.omfa.de/prosody-hg/log/70f34c663fb3/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add a public method for retrieving the service object<br/>
<br/>
There is already a set_service()]]></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 Aug 2018 18:28:31 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Add comment to document nodestore/itemstore methods</title>
    <link>http://hg.omfa.de/prosody-hg/log/86f31a2174b3/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add comment to document nodestore/itemstore methods]]></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, 04 Aug 2018 21:33:17 +0100</pubDate>
</item>
<item>
    <title>mod_pubsub: Restrict access model to 'whitelist' and 'open'</title>
    <link>http://hg.omfa.de/prosody-hg/log/1ff694534e98/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Restrict access model to 'whitelist' and 'open'<br/>
<br/>
'presence' and 'roster' makes more sense for PEP<br/>
'auithorize' needs additional code for authorization flow]]></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, 04 Aug 2018 03:31:21 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Add configurable maximum on number of items</title>
    <link>http://hg.omfa.de/prosody-hg/log/e01c7d0cbbf4/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Add configurable maximum on number of items<br/>
<br/>
Like aefb96a52f5f]]></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, 04 Aug 2018 03:13:55 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Make generation of notification body into an event to allow extensibility</title>
    <link>http://hg.omfa.de/prosody-hg/log/4336a2b97aba/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Make generation of notification body into an event to allow extensibility]]></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, 14 Jul 2018 21:34:22 +0200</pubDate>
</item>
<item>
    <title>mod_pubsub: Skip checks for adding body if no body generated</title>
    <link>http://hg.omfa.de/prosody-hg/log/18cd5102253c/plugins/mod_pubsub/mod_pubsub.lua</link>
    <description><![CDATA[mod_pubsub: Skip checks for adding body if no body generated]]></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, 14 Jul 2018 21:26:59 +0200</pubDate>
</item>

  </channel>
</rss>
