I agree with the general thrust of the point being made but until Go (or more
accurately he Go community) agrees on a sane dependency management model I can't
see how we can move away from godeps. Even if we attempt to use versioned import
URLs (which make me very sad due to the pointless code churn and overhead they
introduce), it is utter madness to depend on tip of the branch. Builds should be
deterministic, repeatable and stable. That is impossible if we just pull in tip
each time. Thinking that the import URL not changing means that there will be no
subtle breakages in API behaviour is dangerous. It's just a whole world of
unnecessary hurt not depending on a known revision. So in my view godeps needs
to be with us for a while longer.

On 03/06/14 09:13, Nate Finch wrote:
> Right now, we change tip on our repos outside of Juju-core with breaking
> API changes.  This is not the way to make packages that others can use and
> depend on.  Since we are in the process of moving many/most/all of these
> dependencies to github, I think it would be an opportune time to start
> being better about how we maintain these projects.
> 
> The main way to do this in Go is to use versioned URLs, the way
> labix.org/v2/mgo and gopkg.in use them.  I suggest we set up a facility to
> do this so that if other people are using our code, we won't break them
> every time we need to change the API of one of our packages.
> 
> It also would mean reduced reliance on godeps (in theory we could get to
> the point of not needing it at all), which would be a good thing.
> 
> Thoughts?
> 
> 
> 

-- 
Juju-dev mailing list
Juju-dev@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju-dev

Reply via email to