]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: use strings.Builder
authorcuiweixie <cuiweixie@gmail.com>
Sun, 4 Sep 2022 12:36:49 +0000 (20:36 +0800)
committerGopher Robot <gobot@golang.org>
Thu, 15 Sep 2022 21:04:34 +0000 (21:04 +0000)
Change-Id: I0db93b7bdcd622ce9e23df183de4737744e6d6ea
Reviewed-on: https://go-review.googlesource.com/c/go/+/428294
Reviewed-by: Jenny Rakoczy <jenny@golang.org>
Auto-Submit: Jenny Rakoczy <jenny@golang.org>
Run-TryBot: xie cui <523516579@qq.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
Run-TryBot: Jenny Rakoczy <jenny@golang.org>

src/cmd/go/go_test.go
src/cmd/go/internal/bug/bug.go
src/cmd/go/internal/help/help.go
src/cmd/go/internal/modload/load.go
src/cmd/go/internal/work/build_test.go
src/cmd/go/internal/work/buildid.go
src/cmd/go/internal/work/exec.go

index c3e248a49f6a7561175553d30c7103fcbc698481..bcf2349d3bf6857583206360c5acda99d441bd66 100644 (file)
@@ -1421,7 +1421,7 @@ func TestLdFlagsLongArgumentsIssue42295(t *testing.T) {
                        print(extern)
                }`)
        testStr := "test test test test test \n\\ "
-       var buf bytes.Buffer
+       var buf strings.Builder
        for buf.Len() < sys.ExecArgLengthLimit+1 {
                buf.WriteString(testStr)
        }
index f1c6b413286bdbd79b011acf32f293991cc160ea..772b6d5dc74dce18ba80096b2fcd3375947cce44 100644 (file)
@@ -45,7 +45,7 @@ func runBug(ctx context.Context, cmd *base.Command, args []string) {
        }
        work.BuildInit()
 
-       var buf bytes.Buffer
+       var buf strings.Builder
        buf.WriteString(bugHeader)
        printGoVersion(&buf)
        buf.WriteString("### Does this issue reproduce with the latest release?\n\n\n")
index f73097af8455aaed024543c20ee19445458331c6..804c910dacc2ee23f3ecfd5af5c06ae08001f936 100644 (file)
@@ -7,7 +7,6 @@ package help
 
 import (
        "bufio"
-       "bytes"
        "fmt"
        "io"
        "os"
@@ -31,7 +30,7 @@ func Help(w io.Writer, args []string) {
                fmt.Fprintln(w, "// Code generated by mkalldocs.sh; DO NOT EDIT.")
                fmt.Fprintln(w, "// Edit the documentation in other files and rerun mkalldocs.sh to generate this one.")
                fmt.Fprintln(w)
-               buf := new(bytes.Buffer)
+               buf := new(strings.Builder)
                PrintUsage(buf, base.Go)
                usage := &base.Command{Long: buf.String()}
                cmds := []*base.Command{usage}
index 060d0cb21a01dca0b638cf3e40a58fd294daf518..1527e0aa7a80cd5e15a752ac0f66e695e1fea926 100644 (file)
@@ -94,7 +94,6 @@ package modload
 // if those packages are not found in existing dependencies of the main module.
 
 import (
-       "bytes"
        "context"
        "errors"
        "fmt"
@@ -2152,7 +2151,7 @@ func (pkg *loadPkg) stackText() string {
                stack = append(stack, p)
        }
 
-       var buf bytes.Buffer
+       var buf strings.Builder
        for i := len(stack) - 1; i >= 0; i-- {
                p := stack[i]
                fmt.Fprint(&buf, p.path)
index 0b6b83a706cd400faba2bb45ef531adce2166180..9e32b39c39afddaa3e2a7c37673bddfeaabc0015 100644 (file)
@@ -5,7 +5,6 @@
 package work
 
 import (
-       "bytes"
        "fmt"
        "io/fs"
        "os"
@@ -233,7 +232,7 @@ func TestRespectSetgidDir(t *testing.T) {
        // Check that `cp` is called instead of `mv` by looking at the output
        // of `(*Builder).ShowCmd` afterwards as a sanity check.
        cfg.BuildX = true
-       var cmdBuf bytes.Buffer
+       var cmdBuf strings.Builder
        b.Print = func(a ...any) (int, error) {
                return cmdBuf.WriteString(fmt.Sprint(a...))
        }
index a5b5570e05d047549aa9e653765babeee2025cfd..72e0885922410a7e3e54453ebe5ab0eecbec0f7a 100644 (file)
@@ -160,12 +160,12 @@ func (b *Builder) toolID(name string) string {
 
        cmdline := str.StringList(cfg.BuildToolexec, path, "-V=full")
        cmd := exec.Command(cmdline[0], cmdline[1:]...)
-       var stdout, stderr bytes.Buffer
+       var stdout, stderr strings.Builder
        cmd.Stdout = &stdout
        cmd.Stderr = &stderr
        if err := cmd.Run(); err != nil {
                if stderr.Len() > 0 {
-                       os.Stderr.Write(stderr.Bytes())
+                       os.Stderr.WriteString(stderr.String())
                }
                base.Fatalf("go: error obtaining buildID for %s: %v", desc, err)
        }
index bba6e452ed4080590bbd544ac75ccdea4c756a20..e0b9472fa1c5baa121090426cdedd8f4459b0bc4 100644 (file)
@@ -2159,7 +2159,7 @@ func (b *Builder) runOut(a *Action, dir string, env []string, cmdargs ...any) ([
 // output unambiguous.
 // TODO: See issue 5279. The printing of commands needs a complete redo.
 func joinUnambiguously(a []string) string {
-       var buf bytes.Buffer
+       var buf strings.Builder
        for i, s := range a {
                if i > 0 {
                        buf.WriteByte(' ')