Software /
code /
prosody
File
tools/tb2err @ 13745:994ea8d54b72 13.0
core.configmanager: Pass name and line number in context
Delays the string interpolation until the warning is logged, which may
slightly lower memory usage.
Allows retrieving the filename and line number easily.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 22 Feb 2025 00:04:51 +0100 |
parent | 13066:4aa4a51a7a77 |
line wrap: on
line source
#!/usr/bin/env lua -- traceback to errors.err for vim -q -- e.g. curl https://prosody.im/paste/xxx | tb2err > errors.err && vim -q local path_sep = package.config:sub(1,1); for line in io.lines() do local src, err = line:match("%s*(%S+)(:%d+: .*)") if src then src = src:gsub("\\", path_sep); local cut = src:match("/()core/") or src:match("/()net/") or src:match("/()util/") or src:match("/()modules/") or src:match("/()prosody%-modules/") or src:match("/()plugins/") or src:match("/()prosody[ctl]*$") if cut then src = src:sub(cut); end src = src:gsub("prosody%-modules/", "../modules/") src = src:gsub("^modules/", "plugins/") io.write(src, err, "\n"); end end