-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
vendor, cmd/vendor: not clean on master #36851
Comments
If there are other |
I noticed today that |
/cc @bcmills Do you think we should block Go 1.14 RC 1 on this? This is one of the potential blockers we are reviewing in the release meeting. |
I think it is important to at least decide how we will address this issue before we release RC1. There appear to have been a large number of changes in The options that I see are:
I don't particularly like option (1). Option (2) seems cleanest from a process perspective, but option (3) seems less risky. I think only option (2) would need to gate an RC. |
Thanks @bcmills. If we release Go 1.14 with non-clean We'll either need to resolve this issue soon after releasing Go 1.14 (before Go 1.14.1, etc.), or bear that cost for the rest of the time that Go 1.14 release is supported (at least 1 year). If we're going to have to fix it anyway, it seems better and easier to do so before releasing Go 1.14. As a result, I believe we should not go with option 1. |
Thinking about future backports, we will probably want a (It's unfortunate to cut the release branch from such old base commits, but it seems a bit late to correct that particular mistake now.) |
I agree that this close to the RC the best option is (2) with a new release branch. That's what x/ repo release branches are for anyway, IMHO. See #36882. |
Change https://golang.org/cl/217103 mentions this issue: |
Just to see what would happen I tried updating x/sys in the main vendor directory. I'm also fine with creating special purpose branches in x/sys and friends. |
From what I can tell, updating The |
Are the |
|
Change https://golang.org/cl/217060 mentions this issue: |
I folded the cmd update into my CL. There are quite a few changes. They are probably fine, but I guess I would also be more comfortable with the branch approach. Does someone want to work on that? I'm not too sure how to do it myself. |
I sent CL 217060 to do the minimal update to get |
I can do the branching, cherry-picking and vendoring, once we resolve how to get std and cmd in sync. |
Change https://golang.org/cl/217118 mentions this issue: |
go get golang.org/x/[email protected] go mod vendor git checkout -- vendor/golang.org/x/sys/unix/asm_linux_riscv64.s \ vendor/golang.org/x/tools/go/analysis/passes/asmdecl/asmdecl.go Updates #36851 Change-Id: I95c0584ede599f600da927a04f135fe64a85037e Reviewed-on: https://go-review.googlesource.com/c/go/+/217118 Run-TryBot: Filippo Valsorda <[email protected]> Reviewed-by: Bryan C. Mills <[email protected]> TryBot-Result: Gobot Gobot <[email protected]>
(1) obviously has more implications/fallout than planned, (2) was avoided since it potentially creates churn/breakage close to release, (3) makes sense - if someone can create the branches and/or provide names for these (we need x/sys for cpu/cpu_riscv64.go and unix/asm_linux_riscv64.s, and x/tools for go/analysis/passes/asmdecl), I can readily handle the code changes (or I can review them). |
It's also worth noting that x/sys is not in sync across vendor and cmd/vendor:
Hopefully we can update cmd/vendor to 5219a1e to avoid having to have multiple branches here... |
Change https://golang.org/cl/217218 mentions this issue: |
This is the current state of the
I created the following branches:
Next I made the cherry-picks that had been applied manually:
Once those are merged I will update the |
Thanks @FiloSottile ! |
Change https://golang.org/cl/217305 mentions this issue: |
Change https://golang.org/cl/217306 mentions this issue: |
We cherry-picked this file to this branch which doesn't have CL 206859. Rather than cherry-picking that CL too, add the doinit() function to match what's currently in the vendor tree. See also this comment on the go tree CL. https://go-review.googlesource.com/c/go/+/216261/3#message-97b8f6687e7cfebc0403a35af8930a4e8948dff0 Updates golang/go#36851 Change-Id: Iddc40e989e56ea934e0aae203108373d5f90e92c Reviewed-on: https://go-review.googlesource.com/c/sys/+/217306 Run-TryBot: Filippo Valsorda <[email protected]> Reviewed-by: Ian Lance Taylor <[email protected]>
…es in GOROOT Updates #36851 Fixes #36907 Change-Id: I29627729d916e3b8132d46cf458ba856ffb0beeb Reviewed-on: https://go-review.googlesource.com/c/go/+/217218 Run-TryBot: Bryan C. Mills <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Jay Conrod <[email protected]>
Change https://golang.org/cl/236600 mentions this issue: |
Previously, if there was a non-directory file with the name vendor or testdata in the Go source tree, it was possible for some directories to be skipped by filepath.Walk performed in findGorootModules. As unusual and unlikely as such non-directory files are, it's better to ensure all directories are visited, and all modules in the GOROOT source tree are found. This increases confidence that tests relying on findGorootModule will not have unexpected false negatives. For #36851. For #36907. Change-Id: I468e80d8f57119e2c72d546b3fd1e23c31fd6e6c Reviewed-on: https://go-review.googlesource.com/c/go/+/236600 Run-TryBot: Dmitri Shuralyov <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Bryan C. Mills <[email protected]>
On latest
master
branch right now, thesrc/vendor
directory is not clean. Its contents do not correspond 1:1 to the versions specified by thesrc/go.mod
file.Following the steps in
src/README.vendor
results in a non-zero diff:This is due to recent commits such as CL 216260, CL 216261, CL 216262 that are related to
riscv64
.This makes it difficult and error prone to make changes to versions in
src/go.mod
, because the end result includes unexpected changes. See discussion in CL 216680.If it's reasonable to resolve this, I don't think we should release Go 1.14 with a vendor directory that isn't clean, so tentatively marking this as release-blocker, but open to discussion.
/cc @4a6f656c @FiloSottile @golang/osp-team
The text was updated successfully, but these errors were encountered: