Khan/genqlient

Redo error-formatting utilities to be a bit more idiomatic

Open

#118 opened on Sep 28, 2021

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Go (141 forks)github user discovery
good first issuehelp wantedinternal

Repository metrics

Stars
 (1,310 stars)
PR merge metrics
 (PR metrics pending)

Description

We have our own errorf (in generate/errors.go) so that we can do structured errors with positions. But our errorf is a bit un-idiomatic (which caused confusion in #117) -- it just wraps the first error argument it finds rather than using %w -- and it also doesn't actually format wrapped errors in a very good way (e.g. here). We could probably do better, either having our wrapper do an ordinary fmt.Errorf (by formatting the position at call-time), or by making it a bit more idiomatic and using its extra structure to hoist the position to the outermost error.

Contributor guide