Skip to content
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

cmd/go: compile net/http when GO15VENDOREXPERIMENT=0 #13961

Closed
cespare opened this issue Jan 15, 2016 · 7 comments
Closed

cmd/go: compile net/http when GO15VENDOREXPERIMENT=0 #13961

cespare opened this issue Jan 15, 2016 · 7 comments
Milestone

Comments

@cespare
Copy link
Contributor

cespare commented Jan 15, 2016

In the Go 1.6 cycle, users should be able to disable vendoring (in case they use directories named vendor) using GO15VENDOREXPERIMENT=0. This mostly works, but if the user imports net/http, it will not compile because net/http uses the new vendoring mechanism for http2.

See https://groups.google.com/d/msg/golang-dev/DJNCzxcLvgE/UW15IK6rEwAJ.

@bradfitz suggests that the fix is for the go tool to force-enable vendoring for the standard library even when GO15VENDOREXPERIMENT=0.

@bradfitz bradfitz added this to the Go1.6 milestone Jan 15, 2016
@bradfitz
Copy link
Contributor

/cc @rsc for opinions and/or ownership

@cespare cespare changed the title cmd/go: compile net/http even when GO15VENDOREXPERIMENT=0 cmd/go: compile net/http when GO15VENDOREXPERIMENT=0 Jan 15, 2016
@rsc
Copy link
Contributor

rsc commented Jan 15, 2016

Is the standard library defined as code in $GOROOT? Sometimes people put other code there, but I guess we can force them into it too.

@rsc
Copy link
Contributor

rsc commented Jan 15, 2016

Actually, it's just one package. Can we have the bundle process just rewrite "golang.org/..." to "internal/golang.org/..." and mv vendor internal for one cycle?

@bradfitz
Copy link
Contributor

Is the standard library defined as code in $GOROOT?

I'd say yes.

Sometimes people put other code there, but I guess we can force them into it too.

Indeed. If they're putting code in there, I'd say they're promised nothing, environment-wise.

@bradfitz
Copy link
Contributor

Actually, it's just one package. Can we have the bundle process just
rewrite "golang.org/..." to "internal/golang.org/..." and mv vendor internal for one cycle?

I already fear Go 1.6.x branch maintenance once tip opens. This would be just one more headache to maintain that difference (in either cmd/bundle or my wrapper scripts around it).

I could if that's easiest, but it's only short-term easy. I'd prefer we fix this in cmd/go for this cycle.

@rsc
Copy link
Contributor

rsc commented Jan 15, 2016 via email

@gopherbot
Copy link

CL https://golang.org/cl/18728 mentions this issue.

@golang golang locked and limited conversation to collaborators Jan 23, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants