Changeset

12983:4533c9b906b0

util.format: Tweak serialization of %q formatted entries Improves serialization of function references especially, the built-in default handling of that in util.serialization is not the most informative. Now, along with the function metatable from util.startup, the actual function can be found by filename and line number.
author Kim Alvefur <zash@zash.se>
date Sun, 26 Mar 2023 00:18:05 +0100
parents 12982:fc0109c59807
children 12984:f08125a8be34
files util/format.lua
diffstat 1 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/util/format.lua	Sun Mar 26 00:11:42 2023 +0100
+++ b/util/format.lua	Sun Mar 26 00:18:05 2023 +0100
@@ -10,7 +10,14 @@
 local pack = table.pack;
 local valid_utf8 = require "prosody.util.encodings".utf8.valid;
 local type = type;
-local dump = require "prosody.util.serialization".new("debug");
+local dump = require"prosody.util.serialization".new({
+	preset = "compact";
+	fallback = function(v, why)
+		return "_[[" .. (why or tostring(v)) .. "]] ";
+	end;
+	fatal = false;
+	maxdepth = 5;
+});
 local num_type = math.type;
 
 -- In Lua 5.3+ these formats throw an error if given a float