-
Notifications
You must be signed in to change notification settings - Fork 110
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
Replacing a gx-lock vendored dep with a symlink causes gx install
to panic
#215
Comments
@travisperson could you look into this? |
Okay, so this in this case we have something like Are you saying we should just ignore it? After a Would doing this be to abrasive to current workflows? |
After reading the comment that references this issue it sounds like we do not want to correct these symlinks. This panic is in place for changes to the ref in the lock file. This is what the panic references when it says The issue we will face here is that we need to distinguish between previous runs of |
You're right, there are two ways to think about this:
Maybe there's some way to indicate this? That is, some kind of |
Having a During the install we would simply ignore any dependency with a ref listed.
|
That would be great! |
Just removing that panic isn't going to help at all to get that PR through without Linking is a lot more complicated than just trying to establish a link from vendor to the package in gopath. If a package (lib-c) being linked has a transitive dependency (lib-a, through lib-b, a dep of lib-c), which is also a direct dependency of the main project, we also have to link the middle package (lib-b) to make sure that we are using the same Here is an example GOPATH setup: QmWB541fYhBMVXDJAeeufAnMxPMMzybP3mMQ812hJNKQqk You can Inside there are three library packages ( prog1 has vendor links of (absolute here for clarity, they are relative in the object)
prog2
Both prog1 and prog2 print prog1 produces I'm worried that without properly handling this kind of issue we will run into all sorts of strange behavior. |
So, usually, lib-b will already be gxed (so we'll continue to use the gexed version). However, I guess there's the case where the dependency was just added. That is, you might have a case where:
So yeah, I think the only reasonable fix there is to make Does that sound reasonable? |
What's the status of this? |
Hey, sorry for the lack of updates. I've been working on something I think we will work, or at least get close. It basically does this:
I have a feeling though that this is missing something. I thought about trying to only link "base" packages, (eg: github.com/foo/bar), but that has a lot of issues itself. |
Specifically, here:
gx/gxutil/get.go
Line 74 in 89338e5
We should skip this as this is the replacement for
gx-go link
.The text was updated successfully, but these errors were encountered: