<div dir="ltr"><div><br></div><div>"go" is the default build tool, and the vast majority of go projects work out of the box with go get. If we cannot make it work, that's fine, but looking at other projects that cannot get it to work is no excuse. If you guys can make it work, even if we continue to support godep(s), by all means do it. Not only it's a better welcome for Go developers, but it also means these pieces can more easily be used in other projects too, without having to import the whole build system.</div>
<div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 6, 2014 at 6:11 PM, Kapil Thangavelu <span dir="ltr"><<a href="mailto:kapil.thangavelu@canonical.com" target="_blank">kapil.thangavelu@canonical.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">just as it fails for many other projects.. etcd, docker, serf, consul, etc... most larger projects are going to run afoul of trying to do cowboy dependency management and adopt one of the extant tools for managing deps and have a non standard install explained to users in its readme, else its vendoring its deps.<div>
<br></div><div>-k</div><div><br><div><br><div><br></div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div class="h5">On Fri, Jun 6, 2014 at 5:05 PM, Nate Finch <span dir="ltr"><<a href="mailto:nate.finch@canonical.com" target="_blank">nate.finch@canonical.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><div>(Resending since the list didn't like my screenshots)</div><div>
<br></div><div><a href="https://twitter.com/beyang/statuses/474979306112704512" style="font-family:arial,sans-serif" target="_blank">https://twitter.com/beyang/statuses/474979306112704512</a><br>
</div><div><br></div><a href="https://github.com/juju/juju/issues/43" style="font-family:arial,sans-serif;font-size:12.800000190734863px" target="_blank">https://github.com/juju/juju/issues/43</a><br style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<div style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">Any tooling that exists for go projects is going to default to doing "go get". Developers at all familiar with go, are going to use go get.<br>
</div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">People are going to do <br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">go get <a href="http://github.com/juju/juju" target="_blank">github.com/juju/juju</a> </div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">and it's going to fail to build, and that's a terrible first impression.</div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">Yes, we can update the README to tell people to run godeps after running go get, and many people are not going to read it until after they get the error building.</div>
<div style="font-family:arial,sans-serif;font-size:12.800000190734863px"><br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">Here's my suggestion:</div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">We make go get work on trunk and still use godeps (or whatever) for repeatable builds of release branches. </div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">There should never be a time when tip of trunk and all dependent repos don't build. This is exceedingly easy to avoid.</div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">
<br></div><div style="font-family:arial,sans-serif;font-size:12.800000190734863px">Go crypto (which I believe is what is failing above) is one of the few repos we rely on that isn't directly controlled by us. We should fork it so we can control when it updates (since the people maintaining it seem to not care about making breaking API changes).</div>
<div style="font-family:arial,sans-serif;font-size:12.800000190734863px"><div><img src="https://mail.google.com/mail/u/1/images/cleardot.gif"></div><span><font color="#888888"><div>
-Nate</div></font></span></div></div>
<br></div></div><span class="HOEnZb"><font color="#888888">--<br>
Juju-dev mailing list<br>
<a href="mailto:Juju-dev@lists.ubuntu.com" target="_blank">Juju-dev@lists.ubuntu.com</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
<br></font></span></blockquote></div><br></div>
<br>--<br>
Juju-dev mailing list<br>
<a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><br>gustavo @ <a href="http://niemeyer.net" target="_blank">http://niemeyer.net</a>
</div>