-
Notifications
You must be signed in to change notification settings - Fork 540
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
glide get foo
does not get dependencies of foo
#690
Comments
glide get foo
skips transitive dependencies of foo
glide get foo
does not get dependencies of foo
@sdboyer: any thoughts on this one? |
I suspect the issue here is basically what's laid out in sdboyer/gps#42, which I've punted on so far - when running I'm not sure how easy the fix is in the current version of glide. It seems like we might be able to add a parameter to |
I understand that glide considers imports (of which I indeed have none as it was an empty dir) as roots from which to construct the transitive closure, but surely it also should consider any explicit deps in |
Nope, it does not consider them additional roots. This is part of what that essay I linked you to a few days ago was grappling with. At minimum, the issue there is that the expectation is (or will be soon) that a project root is what's listed in I'm gonna have a PR you can try in a minute here...lessee if it addresses the problem. |
Hmm, so I'm probably missing something here. fwiw, here's my understanding, with the hope you can point to where I've misunderstood something: I'm assuming the intent is that if I To be able to build and depend on
Thus |
I don't think you've really misunderstood anything, so much as bumped up against a rough edge that we haven't sanded down yet.
The committee has spent quite some time discussing this very question. It's why there is no What it does do for now, at least, is add a constraint to the manifest for you, and IMO should at least put the named project into
Is vendoring I'm not saying these are unanswerable questions. I'm saying that designing a tool with consistent, orthogonal commands and avoids state duplication requires us to step back and think about how this sort of thing should work. Beyond that, I'm not sure what else to say without repeating what I've already said, so I'll refer you again to the essay I wrote; that more fully illustrates the tradeoffs at hand. |
@sdboyer Should this be closed wontfix? Seems like the behavior defined as extracting roots from imports, not the manifest, and that seems unlikely to change with new development focused on `dep. If someone wants to force a root, a workaround like cockroachdb/cockroach#12166 seems to work. |
Yep, closing wontfix - thanks for the bump. |
In an empty directory, I ran
However, after that,
go build ./vendor/github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway
fails becauseprotoc-gen-grpc-gateway
importsgithub.com/golang/glog
, butglog
isn't vendored.my
glide.yaml
looks as expected:but my glide.lock doesn't have any transitive dependencies in it:
The text was updated successfully, but these errors were encountered: