Go Modules and unstable v0 dependencies

I’m wondering how to manage dependencies that are pre-v1. I’ve encountered a problem with a pre-v1 package which made incompatible changes (which by semver specification, is perfectly okay).

So with a dependency chain of
root -> modA -> github.com/apache/thrift@v0.0.0-20161221203622-b2a4d4ae21c7
root -> modB -> github.com/apache/thrift@v0.12.0

Seems like a valid dependency chain based on semver, but there’s no way for me to resolve this?

Hi and welcome emman27,

Can you explain how you try to retrieve your dependencies ? Can you get them with a go get with version ?

Hi Ivan,

I’m using go modules. I can go get them with version, but it’s the nested dependency that’s causing me problems. So my workflow was

go get modA
go get modB

thrift is added implicitly by these modules as a recursive dependency and that’s the one with the breaking change.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.