Weekly PullReq #24 last PR of heisei era
平成最後のPRはtekton/pipelineというkubernetes上でCI/CDを実施するツールのerrorメッセージをgithub.com/pkg/errorsを使ってWrapするようにする改修でした。まだxerrorを使った方がいいなど議論の余地があったり、unit testが0 failなのにfailed statusになっていたりと前途多難な感じですが、令和に持ち越しかな?
この問題の背景はfmt.Errorfなどで返したerrorは最終的に単純なerrorをfmtやlogでエラーとして返すのだが、デバッグ情報が付与されないため、そのエラーがどこ由来かをトレースしにくくなってしまう。詳細はこちら。
errorsを使うとオリジナルのエラーにメッセージを付与でき,内部的に行数やファイル名を記録されて、errors.Printなどでそれらを取り出すことが可能となる。