Go 1.11.4 以上で Go Modules を使って依存関係解決しようとしたら checksum mismatch

Dai Kurosawa
Feb 18, 2019 · 3 min read
https://blog.golang.org/go-brand

checksum mismatch で怒られる

go: downloading github.com/docker/docker v0.7.3-0.20180827131323-0c5f8d2b9b23
go: verifying github.com/docker/docker@v0.7.3-0.20180827131323-0c5f8d2b9b23: checksum mismatch
downloaded: h1:mJtkfC9RUrUWHMk0cFDNhVoc9U3k2FRAzEZ+5pqSIHo=
go.sum: h1:Zl/9mUfPbYbnv895OXx9WfxPjwqSZHohuZzVcjJ5QPQ=

原因

Go 1.11.4で入った bugfix で symlinks 含んだ時のチェックサムの計算方法が変わったっぽい、なにそれ辛い。

対処方法

  • 全員の Go のバージョンを 1.11.4 以上に上げる

結論、辛い。
ナチュラルにこういう変更を入れられると辛いなあというお気持ち
になった。

Go 1.11.2 の時にも似たようなことがあったらしい

Go のバージョン上げたけどまだチェックサムで怒られる

キャッシュを消すといいかもしれない。

$ go clean -modcache

Dai Kurosawa

Written by

SoftwareEngineer

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade