I was reading [this new article](https://blog.golang.org/versioning-proposal) about the proposal for package management in Go, and started wondering about a particular aspect that is mentioned: partial code upgrades.
> It is of course possible to build systems that use semantic versioning > without semantic import versioning, but only by giving up either partial code > upgrades or import uniqueness. Cargo allows partial code upgrades by giving > up import uniqueness: a given import path can have different meanings in > different parts of a large build. Dep ensures import uniqueness by giving up > partial code upgrades: all packages involved in a large build must find a > single agreed-upon version of a given dependency, raising the possibility > that large programs will be unbuildable. Nimble (and Nim itself for that matter) don't support a dependency on two different versions of the same package. Is this a problem that will bite us in the future? I'm curious what everyone's thoughts are.
