<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>https://soft.trung.fun/code/prosody/</link>
    <language>en-us</language>

    <title>prosody: CHANGES history</title>
    <description>CHANGES revision history</description>
    <item>
    <title>CHANGES: 13.0.0 release date</title>
    <link>https://soft.trung.fun/code/prosody/log/a8ad0741632d/CHANGES</link>
    <description><![CDATA[CHANGES: 13.0.0 release date]]></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 13:11:05 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Fix 13.0.0 version number</title>
    <link>https://soft.trung.fun/code/prosody/log/df5d454859b3/CHANGES</link>
    <description><![CDATA[CHANGES: Fix 13.0.0 version number]]></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 13:10:22 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Add list of new modules</title>
    <link>https://soft.trung.fun/code/prosody/log/11b51779d546/CHANGES</link>
    <description><![CDATA[CHANGES: Add list of new modules]]></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, 11 Mar 2025 18:27:54 +0000</pubDate>
</item>
<item>
    <title>util.x509: Per RFC 9525, remove obsolete Common Name check</title>
    <link>https://soft.trung.fun/code/prosody/log/b50eadfddd57/CHANGES</link>
    <description><![CDATA[util.x509: Per RFC 9525, remove obsolete Common Name check]]></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, 11 Feb 2024 13:34:13 +0100</pubDate>
</item>
<item>
    <title>moduleapi: Allow soft dependencies via module:depends(mod, true)</title>
    <link>https://soft.trung.fun/code/prosody/log/4309c934e813/CHANGES</link>
    <description><![CDATA[moduleapi: Allow soft dependencies via module:depends(mod, true)]]></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>Sun, 16 Feb 2025 13:29:07 +0000</pubDate>
</item>
<item>
    <title>mod_http_altconnect: Imported from prosody-modules 6d5a19bdd718 w/changes</title>
    <link>https://soft.trung.fun/code/prosody/log/569fae28a2f3/CHANGES</link>
    <description><![CDATA[mod_http_altconnect: Imported from prosody-modules 6d5a19bdd718 w/changes<br/>
<br/>
Changes from community version:<br/>
<br/>
  - Add options to allow explicit control over whether BOSH/WS is advertised<br/>
  - Always serve XML at /host-meta (no guessing based on Accept), least surprising]]></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>Sun, 16 Feb 2025 13:19:05 +0000</pubDate>
</item>
<item>
    <title>CHANGES: add 'prosodyctl check features'</title>
    <link>https://soft.trung.fun/code/prosody/log/12e0b61830c8/CHANGES</link>
    <description><![CDATA[CHANGES: add 'prosodyctl check features']]></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, 15 Feb 2025 16:48:27 +0000</pubDate>
</item>
<item>
    <title>CHANGES: List mod_cloud_notify</title>
    <link>https://soft.trung.fun/code/prosody/log/5f8fe6722c13/CHANGES</link>
    <description><![CDATA[CHANGES: List mod_cloud_notify]]></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, 14 Feb 2025 14:44:47 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Update with some more 13.0 features</title>
    <link>https://soft.trung.fun/code/prosody/log/4ac30e46a4fb/CHANGES</link>
    <description><![CDATA[CHANGES: Update with some more 13.0 features]]></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, 12 Feb 2025 17:15:49 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Update for 13.0.x</title>
    <link>https://soft.trung.fun/code/prosody/log/5528bc5ab019/CHANGES</link>
    <description><![CDATA[CHANGES: Update for 13.0.x]]></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, 11 Feb 2025 14:57:18 +0000</pubDate>
</item>
<item>
    <title>util.sql: SQLCipher support</title>
    <link>https://soft.trung.fun/code/prosody/log/844e7bf7b48a/CHANGES</link>
    <description><![CDATA[util.sql: SQLCipher support<br/>
<br/>
This enables use of encrypted databases if LuaDBI or LuaSQLite3 has been<br/>
linked against SQLCipher. Using `LD_PRELOAD` may work as well.<br/>
<br/>
Requires SQLCipher &gt;= 4.0.0 due to the use of UPSERT]]></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, 23 Jan 2025 16:38:56 +0100</pubDate>
</item>
<item>
    <title>core.configmanager: Add function for getting secrets from separate files</title>
    <link>https://soft.trung.fun/code/prosody/log/2db7b3b65363/CHANGES</link>
    <description><![CDATA[core.configmanager: Add function for getting secrets from separate files<br/>
<br/>
Idea is to enable easily retrieving of secret values from files outside<br/>
of the config, e.g. via the method used by systemd credentials.<br/>
<br/>
CREDENTIALS_DIRECTORY is expected to be set by the process manager<br/>
invoking Prosody, so being unset and unavailable from prosodyctl is<br/>
going to be normal and a warning is reported in that case. Care will<br/>
have to be taken to make it clear that prosodyctl check will not work<br/>
with such values. An error is thrown if the directory is unavailable<br/>
when running under Prosody.]]></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 Jan 2025 15:21:34 +0100</pubDate>
</item>
<item>
    <title>core.configmanager: Add ways to read config values from files</title>
    <link>https://soft.trung.fun/code/prosody/log/ac60c21015c7/CHANGES</link>
    <description><![CDATA[core.configmanager: Add ways to read config values from files<br/>
<br/>
Inspired by something MattJ said<br/>
<br/>
Allows retrieving config values from files which are expected to be<br/>
relative to the config directory, extending on the ENV_ method of<br/>
retrieving config values from outside the config file.<br/>
<br/>
- FileLine retrieves the first line, stripping any trailing newline<br/>
- FileContents reads the whole file<br/>
- FileLines reads lines into an 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>Thu, 16 Jan 2025 15:05:00 +0100</pubDate>
</item>
<item>
    <title>mod_invites_adhoc: Add password reset command</title>
    <link>https://soft.trung.fun/code/prosody/log/dba43269db5e/CHANGES</link>
    <description><![CDATA[mod_invites_adhoc: Add password reset command<br/>
<br/>
To support cases where the admin does not have easy access to the<br/>
command line to generate a password reset invite for someone who forgot<br/>
their password.]]></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, 20 Oct 2024 12:11:21 +0200</pubDate>
</item>
<item>
    <title>Add Info about mod_announce in the CHANGES file of trunk</title>
    <link>https://soft.trung.fun/code/prosody/log/3abed2ec7ab6/CHANGES</link>
    <description><![CDATA[Add Info about mod_announce in the CHANGES file of trunk]]></description>
    <author>&#77;&#101;&#110;&#101;&#108;&#32;&#60;&#109;&#101;&#110;&#101;&#108;&#64;&#109;&#97;&#105;&#108;&#98;&#111;&#120;&#46;&#100;&#101;&#62;</author>
    <pubDate>Mon, 21 Oct 2024 17:15:06 +0200</pubDate>
</item>
<item>
    <title>MUC: Don't default component admins to being room owners</title>
    <link>https://soft.trung.fun/code/prosody/log/3e6d5738ea09/CHANGES</link>
    <description><![CDATA[MUC: Don't default component admins to being room owners<br/>
<br/>
This change has various technical and social benefits. If ownership of a MUC<br/>
is really needed, it can be gained using the 'Set affiliation' ad-hoc command<br/>
or prosodyctl shell.<br/>
<br/>
Example client incompatibility with the old behaviour:<br/>
<br/>
  - https://github.com/monal-im/Monal/issues/1085]]></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, 18 Jun 2024 15:08:30 +0100</pubDate>
</item>
<item>
    <title>net.server_epoll: Add support for systemd socket activation</title>
    <link>https://soft.trung.fun/code/prosody/log/6f840763fc73/CHANGES</link>
    <description><![CDATA[net.server_epoll: Add support for systemd socket activation<br/>
<br/>
Allows creating listening sockets and accepting client connections<br/>
before Prosody starts.<br/>
This is unlike normal Prosody dynamic resource management, where ports<br/>
may added and removed at any time, and the ports defined by the config.<br/>
<br/>
Weird things happen if these are closed (e.g. due to reload) so here we<br/>
prevent closing and ensure sockets are reused when opened again.]]></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, 14 May 2024 17:07:47 +0200</pubDate>
</item>
<item>
    <title>mod_pep: Implement 'roster' (group) access_model</title>
    <link>https://soft.trung.fun/code/prosody/log/fdd1438d9ef7/CHANGES</link>
    <description><![CDATA[mod_pep: Implement 'roster' (group) access_model<br/>
<br/>
Allows e.g. restricting your vcard4 to only family or similar.<br/>
<br/>
Notes: This does not include roster groups in the configuration form,<br/>
so the client will have to get them from the actual roster.]]></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, 03 Dec 2023 23:19:27 +0100</pubDate>
</item>
<item>
    <title>util.startup: Support systemd Type=notify service type</title>
    <link>https://soft.trung.fun/code/prosody/log/afad3b2725bf/CHANGES</link>
    <description><![CDATA[util.startup: Support systemd Type=notify service type<br/>
<br/>
This lets Prosody report its lifecycle status to systemd, so it knows<br/>
when Prosody has completed its startup, when it's reloading and shutting<br/>
down.<br/>
<br/>
Both Type=notify and Type=notify-reload is supported<br/>
<br/>
Example systemd .service configuration snippet:<br/>
<br/>
[Service]<br/>
Type=notify]]></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, 04 Apr 2024 19:00:27 +0200</pubDate>
</item>
<item>
    <title>util.rfc6724: Remove, unused since introduction of Happy Eyeballs</title>
    <link>https://soft.trung.fun/code/prosody/log/581899aef96f/CHANGES</link>
    <description><![CDATA[util.rfc6724: Remove, unused since introduction of Happy Eyeballs<br/>
<br/>
It was mainly used to determine whether to try IPv6 or IPv4 first,<br/>
following the rules for this in the RFC.<br/>
<br/>
Now we always try IPv6 and IPv4 at roughly the same time, thus there no<br/>
need to carry these rules.]]></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, 22 Feb 2024 19:46:52 +0100</pubDate>
</item>
<item>
    <title>MUC: Record reason for affiliation changes and return in list (fixes #1227)</title>
    <link>https://soft.trung.fun/code/prosody/log/f34b33cb1383/CHANGES</link>
    <description><![CDATA[MUC: Record reason for affiliation changes and return in list (fixes #1227)]]></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, 08 Aug 2021 18:07:17 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Mention new prosodyctl shell method behavior</title>
    <link>https://soft.trung.fun/code/prosody/log/517a335269ef/CHANGES</link>
    <description><![CDATA[CHANGES: Mention new prosodyctl shell method behavior]]></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, 09 Dec 2023 16:41:37 +0100</pubDate>
</item>
<item>
    <title>CHANGES: Document some of the recent changes and features in trunk</title>
    <link>https://soft.trung.fun/code/prosody/log/e8f8a4394187/CHANGES</link>
    <description><![CDATA[CHANGES: Document some of the recent changes and features in 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, 08 Dec 2023 15:46:32 +0000</pubDate>
</item>
<item>
    <title>mod_s2s: Close connection on smacks timeout</title>
    <link>https://soft.trung.fun/code/prosody/log/f70311588c77/CHANGES</link>
    <description><![CDATA[mod_s2s: Close connection on smacks timeout<br/>
<br/>
This merges the mod_s2s_smacks_timeout behavior from prosody-modules<br/>
<br/>
This event is fired by mod_smacks when the connection has not responded<br/>
to an ack-request for a period of time defaulting to 30 seconds,<br/>
indicating that the connection has become stuck or non-responsive.<br/>
Closing it prevents routing further messages via this connection and<br/>
frees resources. A stuck connection may otherwise remain until for a<br/>
time determined by the OS TCP subsystem, which can be quite long.]]></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, 02 Dec 2023 20:20:05 +0100</pubDate>
</item>
<item>
    <title>mod_s2s_auth_dane_in: DANE support for s2sin</title>
    <link>https://soft.trung.fun/code/prosody/log/7264c4d16072/CHANGES</link>
    <description><![CDATA[mod_s2s_auth_dane_in: DANE support for s2sin<br/>
<br/>
Complements the DANE support for outgoing connections included in<br/>
net.connect]]></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, 01 Nov 2023 22:49:56 +0100</pubDate>
</item>
<item>
    <title>mod_cron: Make task frequencies configurable in overly generic manner</title>
    <link>https://soft.trung.fun/code/prosody/log/ffd3dadf6247/CHANGES</link>
    <description><![CDATA[mod_cron: Make task frequencies configurable in overly generic manner<br/>
<br/>
Requested feature for many modules, notably MAM and file sharing.]]></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, 22 Oct 2023 18:58:02 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Mention 'tls-server-end-point'</title>
    <link>https://soft.trung.fun/code/prosody/log/2a65fc6da156/CHANGES</link>
    <description><![CDATA[CHANGES: Mention 'tls-server-end-point']]></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, 22 Oct 2023 19:00:24 +0200</pubDate>
</item>
<item>
    <title>mod_http_file_share: Switch to the new authz API (BC)</title>
    <link>https://soft.trung.fun/code/prosody/log/9097149923ae/CHANGES</link>
    <description><![CDATA[mod_http_file_share: Switch to the new authz API (BC)<br/>
<br/>
Behavior change: It becomes up to the authorization module whether to<br/>
allow requests. The default, mod_authz_internal, will allow users on the<br/>
*parent* host only, breaking use by some components.<br/>
<br/>
Remaining question is whether to deprecate the `http_file_share_access`<br/>
setting or leave as a way to complement/bypass access control?]]></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 Sep 2023 14:23:08 +0200</pubDate>
</item>
<item>
    <title>moduleapi: Add :get_option_integer()</title>
    <link>https://soft.trung.fun/code/prosody/log/4d4f9e42bcf8/CHANGES</link>
    <description><![CDATA[moduleapi: Add :get_option_integer()<br/>
<br/>
Many options in Prosody that are treated as numbers don't make sense as<br/>
floats, e.g. sizes and limits measured in bytes.<br/>
<br/>
Simplified implementation based on an earlier attempt dating back to 2020]]></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 00:09:41 +0200</pubDate>
</item>
<item>
    <title>core.moduleapi: Add :get_option_period for parsing time intervals</title>
    <link>https://soft.trung.fun/code/prosody/log/c9ef35fab0b1/CHANGES</link>
    <description><![CDATA[core.moduleapi: Add :get_option_period for parsing time intervals<br/>
<br/>
E.g. for use in mod_mam and others that take an amount of time before<br/>
some (usually cleanup) action is taken.]]></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, 16 Jul 2023 19:49:12 +0200</pubDate>
</item>
<item>
    <title>core.moduleapi: Allow specifying an acceptable range for number options</title>
    <link>https://soft.trung.fun/code/prosody/log/aa6c2692a4be/CHANGES</link>
    <description><![CDATA[core.moduleapi: Allow specifying an acceptable range for number options]]></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, 05 Oct 2021 15:36:38 +0200</pubDate>
</item>
<item>
    <title>moduleapi: Add enum config option method</title>
    <link>https://soft.trung.fun/code/prosody/log/65fb0d7a2312/CHANGES</link>
    <description><![CDATA[moduleapi: Add enum config option method<br/>
<br/>
For when a setting has a few fixed values it can 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>Sat, 16 Jan 2021 20:40:14 +0100</pubDate>
</item>
<item>
    <title>CHANGES: Move line about LuaSQLite3 to Storage section</title>
    <link>https://soft.trung.fun/code/prosody/log/36b7bdafc993/CHANGES</link>
    <description><![CDATA[CHANGES: Move line about LuaSQLite3 to Storage section]]></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, 12 Jul 2023 22:50:24 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Mention performance improvements for internal archives</title>
    <link>https://soft.trung.fun/code/prosody/log/96df571b5941/CHANGES</link>
    <description><![CDATA[CHANGES: Mention performance improvements for internal archives<br/>
<br/>
Specifically the index and more efficient delete.<br/>
<br/>
These are however still in need of testing.]]></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, 12 Jul 2023 22:48:10 +0200</pubDate>
</item>
<item>
    <title>mod_http: Make RFC 7239 Forwarded opt-in for now to be safe</title>
    <link>https://soft.trung.fun/code/prosody/log/f45a29b32f7a/CHANGES</link>
    <description><![CDATA[mod_http: Make RFC 7239 Forwarded opt-in for now to be safe<br/>
<br/>
Supporting both methods at the same time may open to spoofing attacks,<br/>
whereby a client sends a Forwarded header that is not stripped by a<br/>
reverse proxy, leading Prosody to use that instead of the X-Forwarded-*<br/>
headers actually sent by the proxy.<br/>
<br/>
By only supporting one at a time, it can be configured to match what the<br/>
proxy uses.<br/>
<br/>
Disabled by default since implementations are sparse and X-Forwarded-*<br/>
are everywhere.]]></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, 03 Jun 2023 21:53:20 +0200</pubDate>
</item>
<item>
    <title>mod_http: Use RFC 7239 Forwarded header to find original client IP</title>
    <link>https://soft.trung.fun/code/prosody/log/d043834f15d2/CHANGES</link>
    <description><![CDATA[mod_http: Use RFC 7239 Forwarded header to find original client IP<br/>
<br/>
Prefer over X-Forwarded-* since it has an actual specification.<br/>
<br/>
Main practical difference is that Forwarded may carry more properties<br/>
than only the IP address since it is a structured header.<br/>
<br/>
Since we parse it into an array, it is easier to do the logical thing<br/>
and iterate backwards trough proxies until an untrusted one is<br/>
encountered. Compare the handling of X-Forwarded-For.<br/>
<br/>
The 'secure' field now accounts for the full chain of proxies, which<br/>
must be secure all the way to be considered secure.]]></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, 03 Jun 2023 17:10:04 +0200</pubDate>
</item>
<item>
    <title>CHANGES: The Great Rename-ning completed! #1223</title>
    <link>https://soft.trung.fun/code/prosody/log/088d278c75b5/CHANGES</link>
    <description><![CDATA[CHANGES: The Great Rename-ning completed! #1223]]></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, 17 Mar 2023 19:38:39 +0100</pubDate>
</item>
<item>
    <title>CHANGES: Add keyval+</title>
    <link>https://soft.trung.fun/code/prosody/log/640476114eb6/CHANGES</link>
    <description><![CDATA[CHANGES: Add keyval+]]></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, 21 Mar 2023 18:59:19 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Mention new ability to disable and enable user accounts</title>
    <link>https://soft.trung.fun/code/prosody/log/ce508097b2c8/CHANGES</link>
    <description><![CDATA[CHANGES: Mention new ability to disable and enable user accounts]]></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, 23 Feb 2023 18:11:15 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add muc:affiliations(room) command to list memberships</title>
    <link>https://soft.trung.fun/code/prosody/log/54aea2622459/CHANGES</link>
    <description><![CDATA[mod_admin_shell: Add muc:affiliations(room) command to list memberships<br/>
<br/>
Easier than going trough muc:room():each_affiliation() since you have to<br/>
do fiddly things to reach the print() function.]]></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, 29 Jan 2023 17:53:21 +0100</pubDate>
</item>
<item>
    <title>mod_admin_shell: Add muc:occupants(room) command to list occupants</title>
    <link>https://soft.trung.fun/code/prosody/log/e6324117f124/CHANGES</link>
    <description><![CDATA[mod_admin_shell: Add muc:occupants(room) command to list occupants<br/>
<br/>
Easier than going trough muc:room():each_occupant() since you have to do<br/>
fiddly things to reach the print() function.]]></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, 29 Jan 2023 17:41:08 +0100</pubDate>
</item>
<item>
    <title>mod_storage_sql: Support SQLite3 without LuaDBI</title>
    <link>https://soft.trung.fun/code/prosody/log/1638991caed2/CHANGES</link>
    <description><![CDATA[mod_storage_sql: Support SQLite3 without LuaDBI]]></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, 19 Jan 2023 16:56:12 +0100</pubDate>
</item>
<item>
    <title>mod_blocklist: Add option 'migrate_legacy_blocking' to disable migration from mod_privacy</title>
    <link>https://soft.trung.fun/code/prosody/log/1dd468c63a3d/CHANGES</link>
    <description><![CDATA[mod_blocklist: Add option 'migrate_legacy_blocking' to disable migration from mod_privacy<br/>
<br/>
Tiny performance improvement for new users by skipping this check. Most<br/>
servers should have gone trough the migration for all active users long<br/>
ago.<br/>
<br/>
As a suitable first step of phasing out this code, we make it possible<br/>
to disable it first. Later it can be disabled by default, before finally<br/>
the code is deleted.]]></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 Oct 2022 15:20:06 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Update with MUC permission changes</title>
    <link>https://soft.trung.fun/code/prosody/log/447aef5e942c/CHANGES</link>
    <description><![CDATA[CHANGES: Update with MUC permission changes]]></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, 29 Sep 2022 12:57:05 +0100</pubDate>
</item>
<item>
    <title>CHANGES: Add role auth</title>
    <link>https://soft.trung.fun/code/prosody/log/2d330edf8bf2/CHANGES</link>
    <description><![CDATA[CHANGES: Add role auth]]></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, 22 Aug 2022 13:03:10 +0100</pubDate>
</item>
<item>
    <title>mod_time: Remove obsolete XEP-0090 support</title>
    <link>https://soft.trung.fun/code/prosody/log/f928cb5c5d04/CHANGES</link>
    <description><![CDATA[mod_time: Remove obsolete XEP-0090 support<br/>
<br/>
Deprecated even before Prosody even started, obsolete for over a decade.]]></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, 15 Aug 2022 16:35:14 +0200</pubDate>
</item>
<item>
    <title>util.datetime: Add support for sub-second precision timestamps</title>
    <link>https://soft.trung.fun/code/prosody/log/4c1d3f817063/CHANGES</link>
    <description><![CDATA[util.datetime: Add support for sub-second precision timestamps<br/>
<br/>
Lua since 5.3 raises a fuss when time functions are handed a number with<br/>
a fractional part and the underlying C functions are all based on<br/>
integer seconds without support for more precision.]]></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, 14 Aug 2022 16:57:31 +0200</pubDate>
</item>
<item>
    <title>mod_saslauth: Implement RFC 9266 'tls-exporter' channel binding (#1760)</title>
    <link>https://soft.trung.fun/code/prosody/log/29685403be32/CHANGES</link>
    <description><![CDATA[mod_saslauth: Implement RFC 9266 'tls-exporter' channel binding (#1760)<br/>
<br/>
Brings back SCRAM-SHA-*-PLUS from its hiatus brought on by the earlier<br/>
channel binding method being undefined for TLS 1.3, and the increasing<br/>
deployment of TLS 1.3.<br/>
<br/>
See 1bfd238e05ad and #1542<br/>
<br/>
Requires future version of LuaSec, once support for this key material<br/>
export method is merged.<br/>
<br/>
See https://github.com/brunoos/luasec/pull/187]]></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, 01 Jun 2022 15:06:59 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Lua 5.1 support removed (closes #1600)</title>
    <link>https://soft.trung.fun/code/prosody/log/f888c84b2284/CHANGES</link>
    <description><![CDATA[CHANGES: Lua 5.1 support removed (closes #1600)]]></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, 05 Jul 2022 14:59:47 +0200</pubDate>
</item>
<item>
    <title>mod_saslauth: Advertise channel bindings via XEP-0440</title>
    <link>https://soft.trung.fun/code/prosody/log/97af41d580f7/CHANGES</link>
    <description><![CDATA[mod_saslauth: Advertise channel bindings via XEP-0440<br/>
<br/>
This is useful when there's more than one channel binding in<br/>
circulation, since perhaps there will be varying support for them.]]></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, 06 Dec 2020 22:04:43 +0100</pubDate>
</item>
<item>
    <title>net.server_epoll: Add option to defer accept() until data available</title>
    <link>https://soft.trung.fun/code/prosody/log/76c1725f4467/CHANGES</link>
    <description><![CDATA[net.server_epoll: Add option to defer accept() until data available<br/>
<br/>
This is a Linux(?) socket option that delays the accept signal until<br/>
there is data available to read. E.g. with HTTP this might mean that a<br/>
whole request can be handled without going back trough another turn of<br/>
the main loop, and an initial client &lt;stream&gt; can be responded to.<br/>
<br/>
This may have effects on latency and resource use, as the server does<br/>
not need to allocate resources until really needed.]]></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, 15 May 2022 22:41:17 +0200</pubDate>
</item>
<item>
    <title>net.server_epoll: Add support for TCP Fast Open</title>
    <link>https://soft.trung.fun/code/prosody/log/b7f07585ec4c/CHANGES</link>
    <description><![CDATA[net.server_epoll: Add support for TCP Fast Open<br/>
<br/>
Requires a patch to LuaSocket adding this socket option,<br/>
https://github.com/lunarmodules/luasocket/pull/378<br/>
<br/>
sysctl tweaks<br/>
net.ipv4.tcp_fastopen=3<br/>
net.ipv4.tcp_fastopen_blackhole_timeout_sec = 0<br/>
net.ipv4.tcp_fastopen_key=$(&lt;/proc/sys/kernel/random/uuid)<br/>
<br/>
Disabled by default since it an advanced performance tweak unlikely to<br/>
be needed by most servers.]]></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, 08 Jul 2021 12:29:50 +0200</pubDate>
</item>
<item>
    <title>CHANGES: Update to add new changes in trunk</title>
    <link>https://soft.trung.fun/code/prosody/log/8e4a5cb2d199/CHANGES</link>
    <description><![CDATA[CHANGES: Update to add new changes in 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>Sat, 19 Mar 2022 11:47:52 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Update to reflect 0.12.0 release</title>
    <link>https://soft.trung.fun/code/prosody/log/b78b8689173a/CHANGES</link>
    <description><![CDATA[CHANGES: Update to reflect 0.12.0 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>Sat, 19 Mar 2022 11:41:05 +0000</pubDate>
</item>
<item>
    <title>CHANGES: Mention STUN/TURN support in 'prosodyctl check'</title>
    <link>https://soft.trung.fun/code/prosody/log/61d221efe186/CHANGES</link>
    <description><![CDATA[CHANGES: Mention STUN/TURN support in 'prosodyctl check']]></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, 05 Mar 2022 14:46:57 +0000</pubDate>
</item>
<item>
    <title>Merge config-updates+check-turn from timber</title>
    <link>https://soft.trung.fun/code/prosody/log/0fd58f54d653/CHANGES</link>
    <description><![CDATA[Merge config-updates+check-turn from timber]]></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 Mar 2022 16:33:41 +0000</pubDate>
</item>
<item>
    <title>usermanager, mod_saslauth: Default to internal_hashed if no auth module specified</title>
    <link>https://soft.trung.fun/code/prosody/log/ed8a4f8dfd27/CHANGES</link>
    <description><![CDATA[usermanager, mod_saslauth: Default to internal_hashed if no auth module specified<br/>
<br/>
The default config was updated in this way long ago, but if no option was<br/>
present in the config, Prosody would load internal_plain.<br/>
<br/>
This change can result in changes (for the better) for people using very old<br/>
configuration files lacking an 'authentication' setting.]]></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, 10 Feb 2022 19:54:14 +0000</pubDate>
</item>
<item>
    <title>various: Require encryption by default for real</title>
    <link>https://soft.trung.fun/code/prosody/log/38b5b05407be/CHANGES</link>
    <description><![CDATA[various: Require encryption by default for real<br/>
<br/>
These options have been specified (and enabled) in the default config file for<br/>
a long time. However if unspecified in the config, they were not enabled. Now<br/>
they are.<br/>
<br/>
This may result in a change of behaviour for people using very old config<br/>
files that lack the require_encryption options. But that's what we want.]]></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, 25 Dec 2021 16:23:40 +0100</pubDate>
</item>
<item>
    <title>util.poll: Add support for the poll() API</title>
    <link>https://soft.trung.fun/code/prosody/log/6bb2f660f689/CHANGES</link>
    <description><![CDATA[util.poll: Add support for the poll() API<br/>
<br/>
Might be better than select(), more portable than epoll.]]></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, 23 Feb 2022 20:31:03 +0100</pubDate>
</item>
<item>
    <title>CHANGES: Mention graceful shutdown</title>
    <link>https://soft.trung.fun/code/prosody/log/fa79db7e0a4d/CHANGES</link>
    <description><![CDATA[CHANGES: Mention graceful shutdown]]></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, 18 Feb 2022 23:20:24 +0100</pubDate>
</item>

  </channel>
</rss>
