Why does std.zon.parse.Diagnostics.fmt add a trailing newline?

Currently using diag.fmt("bad.zon") will produce a string that always has a trailing newline, bubbling out to diag.log("bad.zon") having an extra newline.

error: bad.zon:1:3: error: expected expression, found 'EOF'

This comes from here.

Plausible there’s a good reason for this, but it seems pretty odd. Does anyone know if this should be considered a bug worth reporting?

This is a bug, feel free to file an issue. I’ll assign myself and fix it when I get a chance.

The problem is that multiple errors may be reported, a newline needs to separate them but the final newline should be elided.

(Edited)