<?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: util/format.lua history</title>
    <description>util/format.lua revision history</description>
    <item>
    <title>util.format: Restore &quot;freeze&quot; serialization behavior in logging</title>
    <link>http://hg.omfa.de/prosody-hg/log/f08125a8be34/util/format.lua</link>
    <description><![CDATA[util.format: Restore &quot;freeze&quot; serialization behavior in logging<br/>
<br/>
This was implied with the &quot;debug&quot; preset and does nice things like turn<br/>
util.set objects into &quot;set{a,b,c}&quot; instead of the quite verbose thing<br/>
you get 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>Sun, 26 Mar 2023 00:33:20 +0100</pubDate>
</item>
<item>
    <title>util.format: Tweak serialization of %q formatted entries</title>
    <link>http://hg.omfa.de/prosody-hg/log/4533c9b906b0/util/format.lua</link>
    <description><![CDATA[util.format: Tweak serialization of %q formatted entries<br/>
<br/>
Improves serialization of function references especially, the built-in<br/>
default handling of that in util.serialization is not the most<br/>
informative.  Now, along with the function metatable from util.startup,<br/>
the actual function can be found by filename and line number.]]></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, 26 Mar 2023 00:18:05 +0100</pubDate>
</item>
<item>
    <title>util: Prefix module imports with prosody namespace</title>
    <link>http://hg.omfa.de/prosody-hg/log/d10957394a3c/util/format.lua</link>
    <description><![CDATA[util: 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, 17 Mar 2023 16:23:16 +0100</pubDate>
</item>
<item>
    <title>util.startup: Provide a common Lua 5.3+ math.type() for Lua 5.2</title>
    <link>http://hg.omfa.de/prosody-hg/log/22066b02887f/util/format.lua</link>
    <description><![CDATA[util.startup: Provide a common Lua 5.3+ math.type() for Lua 5.2<br/>
<br/>
Code deduplication]]></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, 19 Oct 2022 16:25:05 +0200</pubDate>
</item>
<item>
    <title>compat: Use table.pack (there since Lua 5.2) over our util.table</title>
    <link>http://hg.omfa.de/prosody-hg/log/5eaf77114fdb/util/format.lua</link>
    <description><![CDATA[compat: Use table.pack (there since Lua 5.2) over our util.table<br/>
<br/>
Added in d278a770eddc avoid having to deal with its absence in Lua 5.1.<br/>
No longer needed when Lua 5.1 support is dropped.]]></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, 11 Jul 2022 19:15:24 +0200</pubDate>
</item>
<item>
    <title>compat: Remove handling of Lua 5.1 location of 'unpack' function</title>
    <link>http://hg.omfa.de/prosody-hg/log/39ae08180c81/util/format.lua</link>
    <description><![CDATA[compat: Remove handling of Lua 5.1 location of 'unpack' 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>Mon, 11 Jul 2022 19:07:38 +0200</pubDate>
</item>
<item>
    <title>util: Remove various Lua 5.1 compatibility hacks</title>
    <link>http://hg.omfa.de/prosody-hg/log/0f4feaf9ca64/util/format.lua</link>
    <description><![CDATA[util: Remove various Lua 5.1 compatibility hacks<br/>
<br/>
Part of #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>Sat, 02 Jul 2022 17:31:14 +0200</pubDate>
</item>
<item>
    <title>util.format: Fix typo in comment [codespell]</title>
    <link>http://hg.omfa.de/prosody-hg/log/f7946c8e502f/util/format.lua</link>
    <description><![CDATA[util.format: Fix typo in comment [codespell]]]></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, 04 Feb 2022 16:40:38 +0100</pubDate>
</item>
<item>
    <title>util.format: Expand explanation of purpose in comments</title>
    <link>http://hg.omfa.de/prosody-hg/log/056b7920b686/util/format.lua</link>
    <description><![CDATA[util.format: Expand explanation of purpose in comments]]></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 Jan 2022 21:40:13 +0100</pubDate>
</item>
<item>
    <title>util.format: Skip control code escaping when doing full serialization</title>
    <link>http://hg.omfa.de/prosody-hg/log/25b853e64d83/util/format.lua</link>
    <description><![CDATA[util.format: Skip control code escaping when doing full serialization<br/>
<br/>
Fixes that a multi-line string ended up &quot;like\<br/>
\9this&quot; instead of &quot;like\nthis&quot; as can be demonstrated by somehow<br/>
initiating a connection to a HTTP server.]]></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 Jan 2022 21:14:22 +0100</pubDate>
</item>
<item>
    <title>util.format: Optimize most common integer format</title>
    <link>http://hg.omfa.de/prosody-hg/log/337b489532b7/util/format.lua</link>
    <description><![CDATA[util.format: Optimize most common integer format<br/>
<br/>
A search for log formats in use points to %s being the most common,<br/>
followed by %d, so worth having a fast path for that. %g works well with<br/>
most numbers and is what Lua 5.1 and 5.2 used]]></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, 13 Dec 2021 16:38:33 +0100</pubDate>
</item>
<item>
    <title>util.format: Ensure metatable __tostring results are also sanitized</title>
    <link>http://hg.omfa.de/prosody-hg/log/e0a8c5b1ab4f/util/format.lua</link>
    <description><![CDATA[util.format: Ensure metatable __tostring results are also sanitized]]></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, 13 Dec 2021 16:34:55 +0100</pubDate>
</item>
<item>
    <title>util.format: Fix some formats expecting positive numbers in Lua 5.2</title>
    <link>http://hg.omfa.de/prosody-hg/log/2ce06f788093/util/format.lua</link>
    <description><![CDATA[util.format: Fix some formats expecting positive numbers in Lua 5.2<br/>
<br/>
Amazing how string.format behaves differently under each Lua version]]></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, 11 Dec 2021 20:54:37 +0100</pubDate>
</item>
<item>
    <title>util.format: Fix Lua 5.1 quirks thanks to ALL THE TESTS</title>
    <link>http://hg.omfa.de/prosody-hg/log/dc7ab05005e8/util/format.lua</link>
    <description><![CDATA[util.format: Fix Lua 5.1 quirks thanks to ALL THE TESTS]]></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, 11 Dec 2021 20:40:23 +0100</pubDate>
</item>
<item>
    <title>util.format: Also handle the %p format added in Lua 5.4</title>
    <link>http://hg.omfa.de/prosody-hg/log/161f8268c4b3/util/format.lua</link>
    <description><![CDATA[util.format: Also handle the %p format added in Lua 5.4]]></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, 11 Dec 2021 13:39:58 +0100</pubDate>
</item>
<item>
    <title>util.format: Ensure sanitation of strings passed to wrong format</title>
    <link>http://hg.omfa.de/prosody-hg/log/3db09eb4c43b/util/format.lua</link>
    <description><![CDATA[util.format: Ensure sanitation of strings passed to wrong format<br/>
<br/>
Ie. log(&quot;debug&quot;, &quot;%d&quot;, &quot;\1\2\3&quot;) should not result in garbage.<br/>
<br/>
Also optimizing for the common case of ASCII string passed to %s and<br/>
early returns everywhere.<br/>
<br/>
Returning nil from a gsub callback keeps the original substring.]]></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, 11 Dec 2021 13:30:34 +0100</pubDate>
</item>
<item>
    <title>util.format: Escape invalid UTF-8 by passing trough serialization</title>
    <link>http://hg.omfa.de/prosody-hg/log/87bc26f23d9b/util/format.lua</link>
    <description><![CDATA[util.format: Escape invalid UTF-8 by passing trough serialization<br/>
<br/>
Should prevent invalid UTF-8 from making it into the logs, which can<br/>
cause trouble with terminals or log viewers or other tools, such as when<br/>
grep determines that log files are binary.]]></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, 10 Dec 2021 22:48:45 +0100</pubDate>
</item>
<item>
    <title>util.format: Escape ASCII control characters also in extra arguments</title>
    <link>http://hg.omfa.de/prosody-hg/log/96d3cbeb9275/util/format.lua</link>
    <description><![CDATA[util.format: Escape ASCII control characters also in extra arguments]]></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 Jul 2021 04:35:29 +0200</pubDate>
</item>
<item>
    <title>util.format: Allow newlines but ensure following lines are indented</title>
    <link>http://hg.omfa.de/prosody-hg/log/0fe6a9a3676f/util/format.lua</link>
    <description><![CDATA[util.format: Allow newlines but ensure following lines are indented<br/>
<br/>
This should a) prevent injection of text that looks like legitimate log<br/>
lines and b) not mangle tracebacks.]]></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 Jul 2021 04:29:25 +0200</pubDate>
</item>
<item>
    <title>util.format: Fix missing backslash in pattern</title>
    <link>http://hg.omfa.de/prosody-hg/log/b6ea0148ad37/util/format.lua</link>
    <description><![CDATA[util.format: Fix missing backslash in pattern<br/>
<br/>
Made the pattern match a longer range than intended, but with no effect<br/>
since those characters are not present in the 'control_symbols' table.]]></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 Jul 2021 04:24:13 +0200</pubDate>
</item>
<item>
    <title>util.format: Change formatting of nil values to avoid looking like XML</title>
    <link>http://hg.omfa.de/prosody-hg/log/fc1b8fe94d04/util/format.lua</link>
    <description><![CDATA[util.format: Change formatting of nil values to avoid looking like XML]]></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, 29 Jun 2021 16:18:31 +0200</pubDate>
</item>
<item>
    <title>util.format: Escape ASCII control characters in output</title>
    <link>http://hg.omfa.de/prosody-hg/log/5f4a657136bc/util/format.lua</link>
    <description><![CDATA[util.format: Escape ASCII control characters in output<br/>
<br/>
This should offer some protection against doing evil things to<br/>
terminals. Doesn't protect against pure broken UTF-8 garbage however.<br/>
<br/>
See #734]]></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, 15 Jun 2021 23:24:23 +0200</pubDate>
</item>
<item>
    <title>util.format: Handle integer formats the same way on Lua versions without integer support</title>
    <link>http://hg.omfa.de/prosody-hg/log/386f085820e6/util/format.lua</link>
    <description><![CDATA[util.format: Handle integer formats the same way on Lua versions without integer support]]></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, 30 May 2019 13:54:11 +0200</pubDate>
</item>
<item>
    <title>util.format: Handle formats expecting an integer in Lua 5.3+ (fixes #1371)</title>
    <link>http://hg.omfa.de/prosody-hg/log/4fca92d60040/util/format.lua</link>
    <description><![CDATA[util.format: Handle formats expecting an integer in Lua 5.3+ (fixes #1371)]]></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, 30 May 2019 13:41:05 +0200</pubDate>
</item>
<item>
    <title>util.format: Serialize values for the %q format</title>
    <link>http://hg.omfa.de/prosody-hg/log/6ed0d6224d64/util/format.lua</link>
    <description><![CDATA[util.format: Serialize values for the %q format<br/>
<br/>
Improves eg debug logs]]></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, 12 Oct 2018 01:29:34 +0200</pubDate>
</item>
<item>
    <title>util.format: Use pack from util.table</title>
    <link>http://hg.omfa.de/prosody-hg/log/8c92ef4270c9/util/format.lua</link>
    <description><![CDATA[util.format: Use pack from util.table]]></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, 08 Dec 2018 16:35:39 +0100</pubDate>
</item>
<item>
    <title>util.format: Tweak how nil values are handled</title>
    <link>http://hg.omfa.de/prosody-hg/log/3da6cc927ee6/util/format.lua</link>
    <description><![CDATA[util.format: Tweak how nil values are handled<br/>
<br/>
Because [&lt;nil&gt;] seems exsessive]]></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, 28 Nov 2018 20:36:53 +0100</pubDate>
</item>
<item>
    <title>util.format: Import unpack from table lib in Lua 5.2+</title>
    <link>http://hg.omfa.de/prosody-hg/log/e88db5668cfb/util/format.lua</link>
    <description><![CDATA[util.format: Import unpack from table lib in Lua 5.2+]]></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 Nov 2017 20:55:21 +0100</pubDate>
</item>
<item>
    <title>util.format: Move tests to spec/</title>
    <link>http://hg.omfa.de/prosody-hg/log/d967d6f2ad00/util/format.lua</link>
    <description><![CDATA[util.format: Move tests to spec/]]></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, 10 Nov 2017 05:46:39 +0100</pubDate>
</item>
<item>
    <title>util: Various minor changes to please [luacheck]</title>
    <link>http://hg.omfa.de/prosody-hg/log/e5d00bf4a4d5/util/format.lua</link>
    <description><![CDATA[util: Various minor changes to please [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>Fri, 10 Nov 2017 05:42:32 +0100</pubDate>
</item>
<item>
    <title>util.format: A string.format wrapper that gracefully handles invalid arguments</title>
    <link>http://hg.omfa.de/prosody-hg/log/70cb72f46a3b/util/format.lua</link>
    <description><![CDATA[util.format: A string.format wrapper that gracefully handles invalid arguments]]></description>
    <author>&#87;&#97;&#113;&#97;&#115;&#32;&#72;&#117;&#115;&#115;&#97;&#105;&#110;&#32;&#60;&#119;&#97;&#113;&#97;&#115;&#50;&#48;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Sun, 10 Sep 2017 12:42:05 -0400</pubDate>
</item>

  </channel>
</rss>
