Richard Bucker

Golang vendoring to the rescue

Posted at — Aug 8, 2015

Vendoring is turning out to be a pain in the ass and it is getting worse as there are all sorts of forking both in code and mindshare. Let’s review:makefiles (this is a nice model; mine are usually very manual)Dockerfile (my new favorite because I get CI and a dev environment; problem is I’m using the one container for multiple projects which defeats the purpose)batch filesidiomatic GOPATHgodeps (there are many similar projects)my golo project (forked several times)and now gbAnd then there is nice list here.Of all of these I wish I could get gb and docker to cooperate. My experience has been painful so far. The biggest challenge is integrating many 3rd party packages with their different approaches to vendoring on top of my vendoring strategy simply breaks everything. The lowest common denominator is the idiomatic GOPATH method which I combine with docker (note my comment above)All this vendoring could seriously undermine the language. I hope someone gets this right soon!