commit | 30119bcca997d154e4ab200b01afa7007b088994 | [log] [tgz] |
---|---|---|
author | Bryan C. Mills <bcmills@google.com> | Fri Oct 16 21:57:46 2020 -0400 |
committer | Daniel Martà <mvdan@mvdan.cc> | Sat Oct 17 19:22:49 2020 +0000 |
tree | 590e2718b15f3130444a196ef393dd3697b46cf0 | |
parent | c8f6135d4fd0be14bfc63c2bbb911cc9647e00a6 [diff] |
cmd/go/internal/modload: fix sort condition in (*replacementRepo).Versions In CL 258220 I added replacement versions to the repo versions used in the modload.Query functions. The versions are computed from a map in the modfile index, which has a nondeterministic iteration order. I added a short-circuit condition to skip sorting in the (vastly common) case where no replacement versions are added. However, while cleaning up the change I accidentally deleted the line of code that sets that condition. As a result, the test of that functionality (mod_get_replaced) has been failing nondeterministically. This change fixes the condition by comparing the slices before and after adding versions, rather than by setting a separate variable. The test now passes reliably (tested with -count=200). Updates #41577 Updates #41416 Updates #37438 Updates #26241 Change-Id: I49a66a3a5510da00ef42b47f20a168de66100db6 Reviewed-on: https://go-review.googlesource.com/c/go/+/263266 Trust: Bryan C. Mills <bcmills@google.com> Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Daniel Martà <mvdan@mvdan.cc>
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
Gopher image by Renee French, licensed under Creative Commons 3.0 Attributions license.
Our canonical Git repository is located at https://go.googlesource.com/go. There is a mirror of the repository at https://github.com/golang/go.
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.
Official binary distributions are available at https://golang.org/dl/.
After downloading a binary release, visit https://golang.org/doc/install or load doc/install.html in your web browser for installation instructions.
If a binary distribution is not available for your combination of operating system and architecture, visit https://golang.org/doc/install/source or load doc/install-source.html in your web browser for source installation instructions.
Go is the work of thousands of contributors. We appreciate your help!
To contribute, please read the contribution guidelines: https://golang.org/doc/contribute.html
Note that the Go project uses the issue tracker for bug reports and proposals only. See https://golang.org/wiki/Questions for a list of places to ask questions about the Go language.