json.Unmarshal([]byte{}, &m)
returns a bare io.ErrUnexpectedEOF
, not a jsontext.SyntacticError
.
This results in the v1 wrapper not converting the ErrUnexpectedEOF
into the old-style error "unexpected end of JSON input", but I think the problem is in the v2 Unmarshal
not returning the right error type here; it should consistently return a SyntacticError
or SemanticError
.
Comment From: neild
/cc @dsnet
Comment From: gabyhelp
Related Issues
(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)
Comment From: gopherbot
Change https://go.dev/cl/687115 mentions this issue: encoding/json/v2: report wrapped io.ErrUnexpectedEOF