-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update genproto and fake-gcs-server #202
Comments
Well, looking at the current Master, things are a lot more complicated, as both dependencies mentioned have the required versions or later. However, new dependencies have been introduced, which again transitively depend on the wrong import path of lint. Urgh. |
I did a quick dig trough the current master state. So, these need to be updated:
However, even then things don't work, as |
This has been fixed. For whichever you depend on, please use:
|
The specific issue where the suite of google dependencies depended on the wrong version of golint is fixed here: ddc7246 $ go get -u
...
go: sourcegraph.com/sourcegraph/[email protected]: parsing go.mod: unexpected module path "github.com/sourcegraph/go-diff"
...
go get: error loading module requirements
$ |
Yeah, that's the third time I've heard of sourcegraph failing. I imagine there is the same problem somewhere else in your build graph with a different set of modules including sourcegraph. I'll be releasing an article later about the problem and how to go about fixing it. Unfortunately it likely requires a fix on the sourcegraph side. |
I think that the problems with the current version (v4.3.0) now only depends on Command to force the current version of fake-gcs-server:
|
For whom it may concern, I've written about this problem, why it occurs, and how to resolve it: https://github.com/golang/go/wiki/Resolving-Problems-From-Modified-Module-Path |
Should be fixed in v4.3.1. Note, you probably shouldn't run |
Quick note: due to how MVS works, pinning is not something you or your users can do in Go (without vendor and replace rule shenanigans). The consequence for library authors is to strongly favour v1+ dependencies. v0 dependencies are allowed to break without major version bumps. This means that a stable library (such as this one) depending on an unstable library (such as, for example, github.com/kr/[email protected]) has the potential to break unexpectedly. |
Thanks for the clarification @jadekler ! Also note, if you're using |
Describe the Bug
Migrate contains old versions of both genproto and fake-gcs-server. These old versions transitively depend on a wrong import path of go lint, which breaks running
go get -u
in any project using migrate. This should be easy to fix by updating (at least) these two dependencies. However, as I have no deep knowledge how they are used in migrate, I can't estimate if something might break by updating, and needs fixing.Steps to Reproduce
go mod init ...
go get github.com/golang-migrate/migrate/[email protected]
go get -u
Migrate Version
v4.2.5 with go modules - probably older versions, too
Additional context
I found the affected dependencies via
go mod graph
.Import path trough fake-gcs-server:
Import path trough genproto:
Fixed version for fake-gcs-server: 1.3.1 (Dec
Fixed version for genproto: 4f5b463f9597cbe0dd13a6a2cd4f85e788d27508 (Feb 27)
It basically boils down to getting all dependencies to use at least gRPC 1.17.0.
The text was updated successfully, but these errors were encountered: