diff --git a/go/cmd/dolt/commands/add.go b/go/cmd/dolt/commands/add.go index 8c10f62163..5ca1008d56 100644 --- a/go/cmd/dolt/commands/add.go +++ b/go/cmd/dolt/commands/add.go @@ -664,7 +664,7 @@ func printTableSummary(tables []string, counts map[string]*tablePatchInfo) { header += "===== ===== ======== =======\n" header = color.YellowString(header) - cli.Printf(header) + cli.Print(header) totalChgCount := 0 diff --git a/go/cmd/dolt/commands/backup.go b/go/cmd/dolt/commands/backup.go index 093296394e..f50d31b26c 100644 --- a/go/cmd/dolt/commands/backup.go +++ b/go/cmd/dolt/commands/backup.go @@ -198,7 +198,7 @@ func addBackup(dEnv *env.DoltEnv, apr *argparser.ArgParseResults) errhand.Verbos case env.ErrInvalidBackupURL: return errhand.BuildDError("error: '%s' is not valid.", r.Url).AddCause(err).Build() case env.ErrInvalidBackupName: - return errhand.BuildDError("error: invalid backup name: " + r.Name).Build() + return errhand.BuildDError("error: invalid backup name: %s", r.Name).Build() default: return errhand.BuildDError("error: Unable to save changes.").AddCause(err).Build() } @@ -297,7 +297,7 @@ func backup(ctx context.Context, dEnv *env.DoltEnv, b env.Remote) errhand.Verbos case env.ErrInvalidBackupURL: return errhand.BuildDError("error: '%s' is not valid.", b.Url).AddCause(err).Build() case env.ErrInvalidBackupName: - return errhand.BuildDError("error: invalid backup name: " + b.Name).Build() + return errhand.BuildDError("error: invalid backup name: %s", b.Name).Build() default: return errhand.BuildDError("error: Unable to save changes.").AddCause(err).Build() } @@ -353,7 +353,7 @@ func restoreBackup(ctx context.Context, dEnv *env.DoltEnv, apr *argparser.ArgPar if existingDEnv != nil { if !force { - return errhand.BuildDError("error: cannot restore backup into " + restoredDB + ". A database with that name already exists. Did you mean to supply --force?").Build() + return errhand.BuildDError("error: cannot restore backup into %s. A database with that name already exists. Did you mean to supply --force?", restoredDB).Build() } tmpDir, err := existingDEnv.TempTableFilesDir() diff --git a/go/cmd/dolt/commands/branch.go b/go/cmd/dolt/commands/branch.go index 8a613eb620..abb7434b9e 100644 --- a/go/cmd/dolt/commands/branch.go +++ b/go/cmd/dolt/commands/branch.go @@ -493,7 +493,7 @@ func callStoredProcedure(sqlCtx *sql.Context, queryEngine cli.Queryist, args []s if err != nil { if strings.Contains(err.Error(), "is not fully merged") { newErrorMessage := fmt.Sprintf("%s. If you are sure you want to delete it, run 'dolt branch -D%s'", err.Error(), generateForceDeleteMessage(args)) - return HandleVErrAndExitCode(errhand.BuildDError(newErrorMessage).Build(), nil) + return HandleVErrAndExitCode(errhand.BuildDError("%s", newErrorMessage).Build(), nil) } return HandleVErrAndExitCode(errhand.VerboseErrorFromError(fmt.Errorf("error: %s", err.Error())), nil) } @@ -507,5 +507,5 @@ func callStoredProcedure(sqlCtx *sql.Context, queryEngine cli.Queryist, args []s // BuildVerrAndExit is a shortcut for building a verbose error and calling HandleVerrAndExitCode with it func BuildVerrAndExit(errMsg string, cause error) int { - return HandleVErrAndExitCode(errhand.BuildDError(errMsg).AddCause(cause).Build(), nil) + return HandleVErrAndExitCode(errhand.BuildDError("%s", errMsg).AddCause(cause).Build(), nil) } diff --git a/go/cmd/dolt/commands/checkout.go b/go/cmd/dolt/commands/checkout.go index 8ebed49ebb..6039f2143a 100644 --- a/go/cmd/dolt/commands/checkout.go +++ b/go/cmd/dolt/commands/checkout.go @@ -234,7 +234,7 @@ func handleErrors(branchName string, err error) errhand.VerboseError { "1) commit or reset your changes on this branch, using `dolt commit` or `dolt reset`, before checking out the other branch, " + "2) use the `-f` flag with `dolt checkout` to force an overwrite, or " + "3) connect to branch '%s' with the SQL server and revert or commit changes there before proceeding." - return errhand.BuildDError(str).AddCause(err).Build() + return errhand.BuildDError("%s", str).AddCause(err).Build() } else { bdr := errhand.BuildDError("fatal: Unexpected error checking out branch '%s'", branchName) bdr.AddCause(err) diff --git a/go/cmd/dolt/commands/clone.go b/go/cmd/dolt/commands/clone.go index d1ebd34bde..89c59a2c08 100644 --- a/go/cmd/dolt/commands/clone.go +++ b/go/cmd/dolt/commands/clone.go @@ -189,7 +189,7 @@ func parseArgs(apr *argparser.ArgParseResults) (string, string, errhand.VerboseE _, err := earl.Parse(urlStr) if err != nil { - return "", "", errhand.BuildDError("error: invalid remote url: " + urlStr).Build() + return "", "", errhand.BuildDError("error: invalid remote url: %s", urlStr).Build() } var dir string diff --git a/go/cmd/dolt/commands/diff_output.go b/go/cmd/dolt/commands/diff_output.go index 2ba7f43837..e27befceb1 100644 --- a/go/cmd/dolt/commands/diff_output.go +++ b/go/cmd/dolt/commands/diff_output.go @@ -157,7 +157,7 @@ func (t tabularDiffWriter) WriteTableDiffStats(diffStats []diffStatistics, oldCo if i != 0 && i%10000 == 0 { msg := fmt.Sprintf("prev size: %d, new size: %d, adds: %d, deletes: %d, modifications: %d\n", acc.OldRowSize, acc.NewRowSize, acc.Adds, acc.Removes, acc.Changes) - eP.Printf(msg) + eP.Printf("%s", msg) eP.Display() pos += len(msg) } diff --git a/go/cmd/dolt/commands/dump_docs.go b/go/cmd/dolt/commands/dump_docs.go index 8638c9f2ba..45e731abf3 100644 --- a/go/cmd/dolt/commands/dump_docs.go +++ b/go/cmd/dolt/commands/dump_docs.go @@ -156,7 +156,7 @@ func (cmd *DumpDocsCmd) dumpDocs(wr io.Writer, cmdStr string, subCommands []cli. docs.CommandStr = fmt.Sprintf("%s %s", cmdStr, curr.Name()) err := CreateMarkdown(wr, docs) if err != nil { - return errhand.BuildDError(fmt.Sprintf("error: Failed to create markdown for command: %s %s.", cmdStr, curr.Name())).AddCause(err).Build() + return errhand.BuildDError("error: Failed to create markdown for command: %s %s.", cmdStr, curr.Name()).AddCause(err).Build() } } } diff --git a/go/cmd/dolt/commands/log_test.go b/go/cmd/dolt/commands/log_test.go index d3fa7cf957..2023cdc664 100644 --- a/go/cmd/dolt/commands/log_test.go +++ b/go/cmd/dolt/commands/log_test.go @@ -85,7 +85,7 @@ func TestLogSigterm(t *testing.T) { pager.Writer.Write([]byte(fmt.Sprintf("\nDate: %s", timeStr))) formattedDesc := "\n\n\t" + strings.Replace(cMeta.Description, "\n", "\n\t", -1) + "\n\n" - pager.Writer.Write([]byte(fmt.Sprintf(formattedDesc))) + pager.Writer.Write([]byte(formattedDesc)) } process, err := os.FindProcess(syscall.Getpid()) diff --git a/go/cmd/dolt/commands/login.go b/go/cmd/dolt/commands/login.go index a6366fb384..dd3689f79a 100644 --- a/go/cmd/dolt/commands/login.go +++ b/go/cmd/dolt/commands/login.go @@ -111,7 +111,7 @@ func (cmd LoginCmd) Exec(ctx context.Context, commandStr string, args []string, var err error authHost, authPort, err = net.SplitHostPort(authEndpoint) if err != nil { - HandleVErrAndExitCode(errhand.BuildDError(fmt.Sprintf("unable to parse auth-endpoint: '%s'", authEndpoint)).AddCause(err).Build(), usage) + HandleVErrAndExitCode(errhand.BuildDError("unable to parse auth-endpoint: '%s'", authEndpoint).AddCause(err).Build(), usage) } authEndpoint = fmt.Sprintf("%s:%s", authHost, authPort) } else { @@ -132,7 +132,7 @@ func (cmd LoginCmd) Exec(ctx context.Context, commandStr string, args []string, insecureStr := dEnv.Config.GetStringOrDefault(config.DoltLabInsecureKey, "false") insecure, err = strconv.ParseBool(insecureStr) if err != nil { - HandleVErrAndExitCode(errhand.BuildDError(fmt.Sprintf("The config value of '%s' is '%s' which is not a valid true/false value", config.DoltLabInsecureKey, insecureStr)).Build(), usage) + HandleVErrAndExitCode(errhand.BuildDError("The config value of '%s' is '%s' which is not a valid true/false value", config.DoltLabInsecureKey, insecureStr).Build(), usage) } } @@ -216,7 +216,7 @@ func loginWithCreds(ctx context.Context, dEnv *env.DoltEnv, dc creds.DoltCreds, p := cli.NewEphemeralPrinter() linePrinter := func() func(line string) { return func(line string) { - p.Printf(line + "\n") + p.Printf("%s\n", line) p.Display() } }() diff --git a/go/cmd/dolt/commands/push.go b/go/cmd/dolt/commands/push.go index dd20ad5621..a6fa25e3ab 100644 --- a/go/cmd/dolt/commands/push.go +++ b/go/cmd/dolt/commands/push.go @@ -209,7 +209,7 @@ func handlePushError(err error, usage cli.UsagePrinter) int { cli.Println("hint: check that user.email in 'dolt config --list' has write perms to DoltHub repo") } if rpcErr, ok := err.(*remotestorage.RpcError); ok { - verr = errhand.BuildDError("error: push failed").AddCause(err).AddDetails(rpcErr.FullDetails()).Build() + verr = errhand.BuildDError("error: push failed").AddCause(err).AddDetails("%s", rpcErr.FullDetails()).Build() } else { verr = errhand.BuildDError("error: push failed").AddCause(err).Build() } diff --git a/go/cmd/dolt/commands/read_tables.go b/go/cmd/dolt/commands/read_tables.go index 60cfc84bba..6b6a327d4d 100644 --- a/go/cmd/dolt/commands/read_tables.go +++ b/go/cmd/dolt/commands/read_tables.go @@ -223,7 +223,7 @@ func getRemoteDBAtCommit(ctx context.Context, remoteUrl string, remoteUrlParams } cm, ok := optCmt.ToCommit() if !ok { - return nil, nil, errhand.BuildDError(doltdb.ErrGhostCommitEncountered.Error()).Build() + return nil, nil, errhand.BuildDError("%s", doltdb.ErrGhostCommitEncountered.Error()).Build() } srcRoot, err := cm.GetRootValue(ctx) diff --git a/go/cmd/dolt/commands/remote.go b/go/cmd/dolt/commands/remote.go index 20deb046c8..a3ae85a9d7 100644 --- a/go/cmd/dolt/commands/remote.go +++ b/go/cmd/dolt/commands/remote.go @@ -200,7 +200,7 @@ func addRemoteLocaly(remoteName, remoteUrl string, params map[string]string, dEn case env.ErrInvalidRemoteURL: return errhand.BuildDError("error: '%s' is not valid.", rmot.Url).AddCause(err).Build() case env.ErrInvalidRemoteName: - return errhand.BuildDError("error: invalid remote name: " + rmot.Name).Build() + return errhand.BuildDError("error: invalid remote name: %s", rmot.Name).Build() default: return errhand.BuildDError("error: Unable to save changes.").AddCause(err).Build() } diff --git a/go/cmd/dolt/commands/reset.go b/go/cmd/dolt/commands/reset.go index d27a01a55e..b7774908ac 100644 --- a/go/cmd/dolt/commands/reset.go +++ b/go/cmd/dolt/commands/reset.go @@ -257,7 +257,7 @@ func handleResetError(err error, usage cli.UsagePrinter) int { } for _, tbl := range tbls { - bdr.AddDetails("\t" + tbl.Name) + bdr.AddDetails("\t%s", tbl.Name) } return HandleVErrAndExitCode(bdr.Build(), usage) diff --git a/go/cmd/dolt/commands/sql.go b/go/cmd/dolt/commands/sql.go index 4e8d251d37..c494f879bd 100644 --- a/go/cmd/dolt/commands/sql.go +++ b/go/cmd/dolt/commands/sql.go @@ -459,9 +459,9 @@ func formatQueryError(message string, err error) errhand.VerboseError { ) if se, ok := vterrors.AsSyntaxError(err); ok { - verrBuilder := errhand.BuildDError(message) + verrBuilder := errhand.BuildDError("%s", message) verrBuilder.AddDetails("Error parsing SQL: ") - verrBuilder.AddDetails(se.Message) + verrBuilder.AddDetails("%s", se.Message) statement := se.Statement position := se.Position @@ -493,7 +493,7 @@ func formatQueryError(message string, err error) errhand.VerboseError { } } - verrBuilder.AddDetails(prevLines + statement) + verrBuilder.AddDetails("%s%s", prevLines, statement) marker := make([]rune, position+1) for i := 0; i < position; i++ { @@ -501,7 +501,7 @@ func formatQueryError(message string, err error) errhand.VerboseError { } marker[position] = '^' - verrBuilder.AddDetails(string(marker)) + verrBuilder.AddDetails("%s", string(marker)) return verrBuilder.Build() } else { diff --git a/go/cmd/dolt/commands/tblcmds/import.go b/go/cmd/dolt/commands/tblcmds/import.go index 7712dcc43f..49cd3a2044 100644 --- a/go/cmd/dolt/commands/tblcmds/import.go +++ b/go/cmd/dolt/commands/tblcmds/import.go @@ -807,8 +807,7 @@ func newDataMoverErrToVerr(mvOpts *importOptions, err *mvdata.DataMoverCreationE case mvdata.CreateMapperErr: bdr := errhand.BuildDError("Error creating input to output mapper.") - details := fmt.Sprintf("When attempting to move data from %s to %s, could not create a mapper.", mvOpts.src.String(), mvOpts.destTableName) - bdr.AddDetails(details) + bdr.AddDetails("When attempting to move data from %s to %s, could not create a mapper.", mvOpts.src.String(), mvOpts.destTableName) bdr.AddCause(err.Cause) return bdr.AddCause(err.Cause).Build() diff --git a/go/cmd/dolt/commands/utils.go b/go/cmd/dolt/commands/utils.go index 816b75c37d..e9ce1c59cc 100644 --- a/go/cmd/dolt/commands/utils.go +++ b/go/cmd/dolt/commands/utils.go @@ -578,7 +578,7 @@ func PrintCommitInfo(pager *outputpager.Pager, minParents int, showParents, show if len(comm.parentHashes) > 1 { pager.Writer.Write([]byte(fmt.Sprintf("\nMerge:"))) for _, h := range comm.parentHashes { - pager.Writer.Write([]byte(fmt.Sprintf(" " + h))) + pager.Writer.Write([]byte(" " + h)) } } diff --git a/go/cmd/dolt/commands/version.go b/go/cmd/dolt/commands/version.go index 1e05f83c80..1169171e85 100644 --- a/go/cmd/dolt/commands/version.go +++ b/go/cmd/dolt/commands/version.go @@ -106,7 +106,7 @@ func (cmd VersionCmd) ExecWithArgParser(ctx context.Context, apr *argparser.ArgP verr := checkAndPrintVersionOutOfDateWarning(cmd.VersionStr, dEnv) if verr != nil { // print error but don't fail - cli.PrintErrf(color.YellowString(verr.Verbose())) + cli.PrintErr(color.YellowString(verr.Verbose())) } } @@ -189,7 +189,7 @@ func checkAndPrintVersionOutOfDateWarning(curVersion string, dEnv *env.DoltEnv) // check and print a warning message. This can happen for example, if we get a 403 from GitHub when // querying for the latest release tag. if latestRelease == "" { - cli.Printf(color.YellowString("Warning: unable to query latest released Dolt version")) + cli.Print(color.YellowString("Warning: unable to query latest released Dolt version")) return nil } @@ -199,7 +199,7 @@ func checkAndPrintVersionOutOfDateWarning(curVersion string, dEnv *env.DoltEnv) return verr } if isOutOfDate { - cli.Printf(color.YellowString("Warning: you are on an old version of Dolt. The newest version is %s.\n", latestRelease)) + cli.Print(color.YellowString("Warning: you are on an old version of Dolt. The newest version is %s.\n", latestRelease)) printDisableVersionCheckWarning(dEnv, homeDir, curVersion) } diff --git a/go/cmd/dolt/errhand/panic_utils.go b/go/cmd/dolt/errhand/panic_utils.go index 12458f33f4..c1af02b9ca 100644 --- a/go/cmd/dolt/errhand/panic_utils.go +++ b/go/cmd/dolt/errhand/panic_utils.go @@ -22,12 +22,12 @@ func PanicToVError(errMsg string, f func() VerboseError) VerboseError { func() { defer func() { if r := recover(); r != nil { - bdr := BuildDError(errMsg) + bdr := BuildDError("%s", errMsg) if recErr, ok := r.(error); ok { bdr.AddCause(recErr) } else { - bdr.AddDetails(fmt.Sprint(r)) + bdr.AddDetails("%s", fmt.Sprint(r)) } err = bdr.Build() diff --git a/go/go.mod b/go/go.mod index 00c04f37b3..31bea35174 100644 --- a/go/go.mod +++ b/go/go.mod @@ -171,4 +171,4 @@ require ( replace github.com/dolthub/dolt/go/gen/proto/dolt/services/eventsapi => ./gen/proto/dolt/services/eventsapi -go 1.23.3 +go 1.24.0 diff --git a/go/go.work b/go/go.work index 36a9d704cb..108a51f387 100644 --- a/go/go.work +++ b/go/go.work @@ -1,6 +1,6 @@ -go 1.23.3 +go 1.24.0 -toolchain go1.23.3 +toolchain go1.24.0 use ( . diff --git a/go/libraries/doltcore/rowconv/field_mapping.go b/go/libraries/doltcore/rowconv/field_mapping.go index 0ac5bf81d9..88975d2703 100644 --- a/go/libraries/doltcore/rowconv/field_mapping.go +++ b/go/libraries/doltcore/rowconv/field_mapping.go @@ -172,7 +172,7 @@ func NameMapperFromFile(mappingFile string, FS filesys.ReadableFS) (NameMapper, err := filesys.UnmarshalJSONFile(FS, mappingFile, &nm) if err != nil { - return nil, errhand.BuildDError(ErrMappingFileRead.Error()).AddCause(err).Build() + return nil, errhand.BuildDError("%s", ErrMappingFileRead.Error()).AddCause(err).Build() } return nm, nil diff --git a/go/libraries/doltcore/schema/typeinfo/typeinfo_test.go b/go/libraries/doltcore/schema/typeinfo/typeinfo_test.go index 67921c74e1..e24d032dbf 100644 --- a/go/libraries/doltcore/schema/typeinfo/typeinfo_test.go +++ b/go/libraries/doltcore/schema/typeinfo/typeinfo_test.go @@ -163,7 +163,7 @@ func testTypeInfoEquals(t *testing.T, tiArrays [][]TypeInfo) { t.Run(ti1.String(), func(t *testing.T) { for j := range tiArray { ti2 := tiArray[j] - t.Run(fmt.Sprintf(ti2.String()), func(t *testing.T) { + t.Run(ti2.String(), func(t *testing.T) { equality := ti1.Equals(ti2) if i == j { assert.True(t, equality) @@ -184,7 +184,7 @@ func testTypeInfoEquals(t *testing.T, tiArrays [][]TypeInfo) { continue } for _, otherTi := range tiArray2 { - t.Run(fmt.Sprintf(otherTi.String()), func(t *testing.T) { + t.Run(otherTi.String(), func(t *testing.T) { equality := firstTi.Equals(otherTi) assert.False(t, equality) }) diff --git a/go/libraries/doltcore/sqle/binlogreplication/binlog_primary_controller.go b/go/libraries/doltcore/sqle/binlogreplication/binlog_primary_controller.go index 154f88c48d..841ef25517 100644 --- a/go/libraries/doltcore/sqle/binlogreplication/binlog_primary_controller.go +++ b/go/libraries/doltcore/sqle/binlogreplication/binlog_primary_controller.go @@ -78,7 +78,7 @@ func (d *DoltBinlogPrimaryController) validateReplicationConfiguration() *mysql. } logBin, _, err := gmstypes.Boolean.Convert(logBinValue) if err != nil { - return mysql.NewSQLError(mysql.ERUnknownError, "HY000", err.Error()) + return mysql.NewSQLError(mysql.ERUnknownError, "HY000", "%s", err.Error()) } if logBin.(int8) != 1 { return mysql.NewSQLError(mysql.ERMasterFatalReadingBinlog, "HY000", diff --git a/go/libraries/doltcore/sqle/binlogreplication/binlog_replica_applier.go b/go/libraries/doltcore/sqle/binlogreplication/binlog_replica_applier.go index 27e0dcaf70..ed7bb5ad23 100644 --- a/go/libraries/doltcore/sqle/binlogreplication/binlog_replica_applier.go +++ b/go/libraries/doltcore/sqle/binlogreplication/binlog_replica_applier.go @@ -528,7 +528,7 @@ func (a *binlogReplicaApplier) processBinlogEvent(ctx *sql.Context, engine *gms. } if flags != 0 { msg := fmt.Sprintf("unsupported binlog protocol message: TableMap event with unsupported flags '%x'", flags) - ctx.GetLogger().Errorf(msg) + ctx.GetLogger().Error(msg) DoltBinlogReplicaController.setSqlError(mysql.ERUnknownError, msg) } a.tableMapsById[tableId] = tableMap @@ -664,7 +664,7 @@ func (a *binlogReplicaApplier) processRowEvent(ctx *sql.Context, event mysql.Bin } if flags != 0 { msg := fmt.Sprintf("unsupported binlog protocol message: row event with unsupported flags '%x'", flags) - ctx.GetLogger().Errorf(msg) + ctx.GetLogger().Error(msg) DoltBinlogReplicaController.setSqlError(mysql.ERUnknownError, msg) } schema, tableName, err := getTableSchema(ctx, engine, tableMap.Name, tableMap.Database) diff --git a/go/libraries/doltcore/sqle/database.go b/go/libraries/doltcore/sqle/database.go index e4d642561d..ddbf138230 100644 --- a/go/libraries/doltcore/sqle/database.go +++ b/go/libraries/doltcore/sqle/database.go @@ -1561,7 +1561,7 @@ func (db Database) createDoltTable(ctx *sql.Context, tableName string, schemaNam }) if len(conflictingTbls) > 0 { - return fmt.Errorf(strings.Join(conflictingTbls, "\n")) + return fmt.Errorf("%s", strings.Join(conflictingTbls, "\n")) } newRoot, err := doltdb.CreateEmptyTable(ctx, root, doltdb.TableName{Name: tableName, Schema: schemaName}, doltSch) diff --git a/go/libraries/doltcore/sqle/dprocedures/dolt_checkout.go b/go/libraries/doltcore/sqle/dprocedures/dolt_checkout.go index 1ba25636d2..71f4208eb6 100644 --- a/go/libraries/doltcore/sqle/dprocedures/dolt_checkout.go +++ b/go/libraries/doltcore/sqle/dprocedures/dolt_checkout.go @@ -360,7 +360,7 @@ func checkoutRemoteBranch(ctx *sql.Context, dSess *dsess.DoltSession, dbName str refSpec, err := ref.ParseRefSpecForRemote(remoteRef.GetRemote(), remoteRef.GetBranch()) if err != nil { - return "", errhand.BuildDError(fmt.Errorf("%w: '%s'", err, remoteRef.GetRemote()).Error()).Build() + return "", errhand.BuildDError("%s: '%s'", err.Error(), remoteRef.GetRemote()).Build() } headRef, err := dbData.Rsr.CWBHeadRef() diff --git a/go/libraries/doltcore/sqle/dprocedures/dolt_clone.go b/go/libraries/doltcore/sqle/dprocedures/dolt_clone.go index 6fe1720ee4..043a980e6c 100644 --- a/go/libraries/doltcore/sqle/dprocedures/dolt_clone.go +++ b/go/libraries/doltcore/sqle/dprocedures/dolt_clone.go @@ -82,7 +82,7 @@ func getDirectoryAndUrlString(apr *argparser.ArgParseResults) (string, string, e urlStr := apr.Arg(0) _, err := earl.Parse(urlStr) if err != nil { - return "", "", errhand.BuildDError("error: invalid remote url: " + urlStr).Build() + return "", "", errhand.BuildDError("error: invalid remote url: %s", urlStr).Build() } var dir string diff --git a/go/libraries/doltcore/sqle/dprocedures/dolt_commit.go b/go/libraries/doltcore/sqle/dprocedures/dolt_commit.go index 5303520c26..f57d92616c 100644 --- a/go/libraries/doltcore/sqle/dprocedures/dolt_commit.go +++ b/go/libraries/doltcore/sqle/dprocedures/dolt_commit.go @@ -87,20 +87,20 @@ func doDoltCommit(ctx *sql.Context, args []string) (string, bool, error) { if apr.Contains(cli.UpperCaseAllFlag) { roots, err = actions.StageAllTables(ctx, roots, true) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } roots, err = actions.StageDatabase(ctx, roots) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } } else if apr.Contains(cli.AllFlag) { roots, err = actions.StageModifiedAndDeletedTables(ctx, roots) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } roots, err = actions.StageDatabase(ctx, roots) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } } @@ -142,7 +142,7 @@ func doDoltCommit(ctx *sql.Context, args []string) (string, bool, error) { t, err = dconfig.ParseDate(commitTimeStr) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } } else if datas.CustomAuthorDate { t = datas.AuthorDate() @@ -151,7 +151,7 @@ func doDoltCommit(ctx *sql.Context, args []string) (string, bool, error) { if apr.Contains(cli.ForceFlag) { err = ctx.SetSessionVariable(ctx, "dolt_force_transaction_commit", 1) if err != nil { - return "", false, fmt.Errorf(err.Error()) + return "", false, err } } diff --git a/go/libraries/doltcore/sqle/dprocedures/dolt_merge.go b/go/libraries/doltcore/sqle/dprocedures/dolt_merge.go index 6fce63cc0f..3a193096e4 100644 --- a/go/libraries/doltcore/sqle/dprocedures/dolt_merge.go +++ b/go/libraries/doltcore/sqle/dprocedures/dolt_merge.go @@ -218,7 +218,7 @@ func performMerge( if err != nil { switch err { case doltdb.ErrIsAhead, doltdb.ErrUpToDate: - ctx.Warn(DoltMergeWarningCode, err.Error()) + ctx.Warn(DoltMergeWarningCode, "%s", err.Error()) return ws, "", noConflictsOrViolations, threeWayMerge, err.Error(), nil default: return ws, "", noConflictsOrViolations, threeWayMerge, "", err @@ -236,7 +236,7 @@ func performMerge( if wsErr != nil { return ws, "", hasConflictsOrViolations, threeWayMerge, "", wsErr } - ctx.Warn(DoltMergeWarningCode, err.Error()) + ctx.Warn(DoltMergeWarningCode, "%s", err.Error()) return ws, "", hasConflictsOrViolations, threeWayMerge, "", err } else if err != nil { return ws, "", noConflictsOrViolations, threeWayMerge, "", err @@ -280,7 +280,7 @@ func performMerge( return ws, "", hasConflictsOrViolations, threeWayMerge, "", wsErr } - ctx.Warn(DoltMergeWarningCode, err.Error()) + ctx.Warn(DoltMergeWarningCode, "%s", err.Error()) return ws, "", hasConflictsOrViolations, threeWayMerge, err.Error(), nil } else if err != nil { return ws, "", noConflictsOrViolations, threeWayMerge, "", err diff --git a/go/libraries/doltcore/sqle/dsess/session.go b/go/libraries/doltcore/sqle/dsess/session.go index df2b7183c4..cd0c0d5677 100644 --- a/go/libraries/doltcore/sqle/dsess/session.go +++ b/go/libraries/doltcore/sqle/dsess/session.go @@ -467,7 +467,7 @@ func (d *DoltSession) CommitTransaction(ctx *sql.Context, tx sql.Transaction) (e peformDoltCommitInt, ok := performDoltCommitVar.(int8) if !ok { - return fmt.Errorf(fmt.Sprintf("Unexpected type for var %s: %T", DoltCommitOnTransactionCommit, performDoltCommitVar)) + return fmt.Errorf("Unexpected type for var %s: %T", DoltCommitOnTransactionCommit, performDoltCommitVar) } dirtyBranchState := dirties[0] @@ -486,7 +486,7 @@ func (d *DoltSession) CommitTransaction(ctx *sql.Context, tx sql.Transaction) (e doltCommitMessageString, ok := doltCommitMessageVar.(string) if !ok && doltCommitMessageVar != nil { - return fmt.Errorf(fmt.Sprintf("Unexpected type for var %s: %T", DoltCommitOnTransactionCommitMessage, doltCommitMessageVar)) + return fmt.Errorf("Unexpected type for var %s: %T", DoltCommitOnTransactionCommitMessage, doltCommitMessageVar) } trimmedString := strings.TrimSpace(doltCommitMessageString) diff --git a/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_stat_table_function.go b/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_stat_table_function.go index 1d1fe0e3cf..5bf8fbb79a 100644 --- a/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_stat_table_function.go +++ b/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_stat_table_function.go @@ -315,7 +315,7 @@ func (ds *DiffStatTableFunction) RowIter(ctx *sql.Context, row sql.Row) (sql.Row diffStat, hasDiff, err := getDiffStatNodeFromDelta(ctx, delta, fromRefDetails.root, toRefDetails.root, tblName) if err != nil { if errors.Is(err, diff.ErrPrimaryKeySetChanged) { - ctx.Warn(dtables.PrimaryKeyChangeWarningCode, fmt.Sprintf("stat for table %s cannot be determined. Primary key set changed.", tblName)) + ctx.Warn(dtables.PrimaryKeyChangeWarningCode, "stat for table %s cannot be determined. Primary key set changed.", tblName) // Report an empty diff for tables that have primary key set changes diffStats = append(diffStats, diffStatNode{tblName: tblName}) continue diff --git a/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_summary_table_function.go b/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_summary_table_function.go index 440a4ccfbb..0ab8b37df0 100644 --- a/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_summary_table_function.go +++ b/go/libraries/doltcore/sqle/dtablefunctions/dolt_diff_summary_table_function.go @@ -332,7 +332,7 @@ func getSummaryForDelta(ctx *sql.Context, delta diff.TableDelta, sqledb dsess.Sq return nil, fmt.Errorf("failed to compute diff summary for table %s: %w", delta.CurName(), diff.ErrPrimaryKeySetChanged) } - ctx.Warn(dtables.PrimaryKeyChangeWarningCode, fmt.Sprintf(dtables.PrimaryKeyChangeWarning, fromDetails.hashStr, toDetails.hashStr)) + ctx.Warn(dtables.PrimaryKeyChangeWarningCode, dtables.PrimaryKeyChangeWarning, fromDetails.hashStr, toDetails.hashStr) return nil, nil } diff --git a/go/libraries/doltcore/sqle/dtables/commit_diff_table.go b/go/libraries/doltcore/sqle/dtables/commit_diff_table.go index dcc50a12d5..05f458e5a4 100644 --- a/go/libraries/doltcore/sqle/dtables/commit_diff_table.go +++ b/go/libraries/doltcore/sqle/dtables/commit_diff_table.go @@ -222,7 +222,7 @@ func (dt *CommitDiffTable) LookupPartitions(ctx *sql.Context, i sql.IndexLookup) } if !isDiffable { - ctx.Warn(PrimaryKeyChangeWarningCode, fmt.Sprintf(PrimaryKeyChangeWarning, dp.fromName, dp.toName)) + ctx.Warn(PrimaryKeyChangeWarningCode, PrimaryKeyChangeWarning, dp.fromName, dp.toName) return NewSliceOfPartitionsItr([]sql.Partition{}), nil } diff --git a/go/libraries/doltcore/sqle/dtables/diff_table.go b/go/libraries/doltcore/sqle/dtables/diff_table.go index 0956f1c823..2e0e695a0a 100644 --- a/go/libraries/doltcore/sqle/dtables/diff_table.go +++ b/go/libraries/doltcore/sqle/dtables/diff_table.go @@ -874,12 +874,12 @@ func (dps *DiffPartitions) Next(ctx *sql.Context) (sql.Partition, error) { } if !simpleDiff && !fuzzyDiff { - ctx.Warn(PrimaryKeyChangeWarningCode, fmt.Sprintf(PrimaryKeyChangeWarning, next.fromName, next.toName)) + ctx.Warn(PrimaryKeyChangeWarningCode, PrimaryKeyChangeWarning, next.fromName, next.toName) return nil, io.EOF } if !simpleDiff && fuzzyDiff { - ctx.Warn(PrimaryKeyChangeWarningCode, fmt.Sprintf(PrimaryKeyChangeWarning, next.fromName, next.toName)) + ctx.Warn(PrimaryKeyChangeWarningCode, PrimaryKeyChangeWarning, next.fromName, next.toName) dps.stopNext = true } diff --git a/go/libraries/doltcore/sqle/schema_override.go b/go/libraries/doltcore/sqle/schema_override.go index c64e975af9..afa4dc4a8e 100644 --- a/go/libraries/doltcore/sqle/schema_override.go +++ b/go/libraries/doltcore/sqle/schema_override.go @@ -139,7 +139,7 @@ func resolveOverriddenSchemaRoot(ctx *sql.Context, db Database) (doltdb.RootValu optionalCommit, err := db.GetDoltDB().Resolve(ctx, commitSpec, headRef) if err != nil { - return nil, fmt.Errorf("unable to resolve schema override value: " + err.Error()) + return nil, fmt.Errorf("unable to resolve schema override value: %s", err.Error()) } commit, ok := optionalCommit.ToCommit() @@ -150,7 +150,7 @@ func resolveOverriddenSchemaRoot(ctx *sql.Context, db Database) (doltdb.RootValu rootValue, err := commit.GetRootValue(ctx) if err != nil { - return nil, fmt.Errorf("unable to load root value for schema override commit: " + err.Error()) + return nil, fmt.Errorf("unable to load root value for schema override commit: %s", err.Error()) } return rootValue, nil diff --git a/go/libraries/doltcore/sqle/statspro/analyze.go b/go/libraries/doltcore/sqle/statspro/analyze.go index faa1869315..6fd822e75a 100644 --- a/go/libraries/doltcore/sqle/statspro/analyze.go +++ b/go/libraries/doltcore/sqle/statspro/analyze.go @@ -133,7 +133,7 @@ func (p *Provider) RefreshTableStatsWithBranch(ctx *sql.Context, table sql.Table } statDb, err = p.sf.Init(ctx, sourceDb, p.pro, fs, env.GetCurrentUserHomeDir) if err != nil { - ctx.Warn(0, err.Error()) + ctx.Warn(0, "%s", err.Error()) return nil } p.setStatDb(dbName, statDb) diff --git a/go/libraries/doltcore/table/untyped/xlsx/marshaling.go b/go/libraries/doltcore/table/untyped/xlsx/marshaling.go index 0cca68b173..3f9d03ab20 100644 --- a/go/libraries/doltcore/table/untyped/xlsx/marshaling.go +++ b/go/libraries/doltcore/table/untyped/xlsx/marshaling.go @@ -47,7 +47,7 @@ func openFile(path string) (*xlsx.File, error) { if err != nil { msg := strings.ReplaceAll(err.Error(), "zip", "xlsx") - return nil, fmt.Errorf(msg) + return nil, fmt.Errorf("%s", msg) } return data, nil @@ -58,7 +58,7 @@ func openBinary(content []byte) (*xlsx.File, error) { if err != nil { msg := strings.ReplaceAll(err.Error(), "zip", "xlsx") - return nil, fmt.Errorf(msg) + return nil, fmt.Errorf("%s", msg) } return data, nil diff --git a/go/performance/import_benchmarker/cmd/main.go b/go/performance/import_benchmarker/cmd/main.go index 71ad9eccf9..c1ca485880 100644 --- a/go/performance/import_benchmarker/cmd/main.go +++ b/go/performance/import_benchmarker/cmd/main.go @@ -69,7 +69,7 @@ func main() { if err != nil { log.Fatalln(err) } - fmt.Fprintf(of, results.SqlDump()) + fmt.Fprint(of, results.SqlDump()) } else { fmt.Println(results.SqlDump()) } diff --git a/go/performance/import_benchmarker/testdef.go b/go/performance/import_benchmarker/testdef.go index 3bc352cfc1..b482cfae88 100644 --- a/go/performance/import_benchmarker/testdef.go +++ b/go/performance/import_benchmarker/testdef.go @@ -562,15 +562,15 @@ func (test *ImportTest) IterImportTables(tables []Table, cb func(t Table, f *os. batchSize := defaultBatchSize var i int for i+batchSize < len(rows) { - fmt.Fprintf(f, newBatch(t.TargetTable, rows[i:i+batchSize])) + fmt.Fprint(f, newBatch(t.TargetTable, rows[i:i+batchSize])) i += batchSize } if i < len(rows) { - fmt.Fprintf(f, newBatch(t.TargetTable, rows[i:])) + fmt.Fprint(f, newBatch(t.TargetTable, rows[i:])) } } else { for _, r := range rows { - fmt.Fprintf(f, fmt.Sprintf("INSERT INTO %s VALUES %s;\n", t.TargetTable, r)) + fmt.Fprintf(f, "INSERT INTO %s VALUES %s;\n", t.TargetTable, r) } } default: diff --git a/go/performance/sysbench/cmd/main.go b/go/performance/sysbench/cmd/main.go index 77f6769799..386f6bf7c0 100644 --- a/go/performance/sysbench/cmd/main.go +++ b/go/performance/sysbench/cmd/main.go @@ -79,7 +79,7 @@ func main() { if err != nil { log.Fatalln(err) } - fmt.Fprintf(of, results.SqlDump()) + fmt.Fprint(of, results.SqlDump()) } else { fmt.Println(results.SqlDump()) } diff --git a/go/store/blobstore/blobstore_test.go b/go/store/blobstore/blobstore_test.go index 46b552c8dc..b61382150f 100644 --- a/go/store/blobstore/blobstore_test.go +++ b/go/store/blobstore/blobstore_test.go @@ -202,7 +202,7 @@ func testCheckAndPutError(t *testing.T, bs Blobstore) { if !ok { t.Errorf("Error is not of the expected type") } else if cpe.Key != key || cpe.ExpectedVersion != badVersion { - t.Errorf("CheckAndPutError does not have expected values - " + cpe.Error()) + t.Errorf("CheckAndPutError does not have expected values - %s", cpe.Error()) } } diff --git a/go/store/datas/stashlist.go b/go/store/datas/stashlist.go index 224640fc5d..e91ba9de2b 100644 --- a/go/store/datas/stashlist.go +++ b/go/store/datas/stashlist.go @@ -277,7 +277,7 @@ func stashlist_flatbuffer(am prolly.AddressMap) serial.Message { func parse_stashlist(bs []byte, ns tree.NodeStore) (prolly.AddressMap, error) { if serial.GetFileID(bs) != serial.StashListFileID { - return prolly.AddressMap{}, fmt.Errorf("expected stash list file id, got: " + serial.GetFileID(bs)) + return prolly.AddressMap{}, fmt.Errorf("expected stash list file id, got: %s", serial.GetFileID(bs)) } sr, err := serial.TryGetRootAsStashList(bs, serial.MessagePrefixSz) if err != nil { diff --git a/go/store/datas/statistics.go b/go/store/datas/statistics.go index c3e66a1817..de82e2ca4f 100644 --- a/go/store/datas/statistics.go +++ b/go/store/datas/statistics.go @@ -109,7 +109,7 @@ func Statistics_flatbuffer(addr hash.Hash) serial.Message { // embedding the stats table and address. func parse_Statistics(ctx context.Context, bs []byte, ns tree.NodeStore, vr types.ValueReader) (*Statistics, error) { if serial.GetFileID(bs) != serial.StatisticFileID { - return nil, fmt.Errorf("expected statistics file id, got: " + serial.GetFileID(bs)) + return nil, fmt.Errorf("expected statistics file id, got: %s", serial.GetFileID(bs)) } stat, err := serial.TryGetRootAsStatistic(bs, serial.MessagePrefixSz) if err != nil { diff --git a/go/store/datas/tuple.go b/go/store/datas/tuple.go index 09732b5c54..947c7a0ea0 100644 --- a/go/store/datas/tuple.go +++ b/go/store/datas/tuple.go @@ -95,7 +95,7 @@ func Tuple_flatbuffer(val []byte) serial.Message { // embedding the stats table and address. func parse_Tuple(ctx context.Context, bs []byte, ns tree.NodeStore, vr types.ValueReader) (*Tuple, error) { if serial.GetFileID(bs) != serial.TupleFileID { - return nil, fmt.Errorf("expected Tuple file id, got: " + serial.GetFileID(bs)) + return nil, fmt.Errorf("expected Tuple file id, got: %s", serial.GetFileID(bs)) } tup, err := serial.TryGetRootAsTuple(bs, serial.MessagePrefixSz) if err != nil { diff --git a/go/store/nbs/root_tracker_test.go b/go/store/nbs/root_tracker_test.go index 37d8248374..ac3dffe918 100644 --- a/go/store/nbs/root_tracker_test.go +++ b/go/store/nbs/root_tracker_test.go @@ -597,7 +597,7 @@ func compactSourcesToBuffer(sources chunkSources) (name hash.Hash, data []byte, } if errString != "" { - return hash.Hash{}, nil, 0, fmt.Errorf(errString) + return hash.Hash{}, nil, 0, fmt.Errorf("%s", errString) } tableSize, name, err := tw.finish() diff --git a/go/store/prolly/artifact_map_test.go b/go/store/prolly/artifact_map_test.go index 10af0ced31..bfea3c6ad0 100644 --- a/go/store/prolly/artifact_map_test.go +++ b/go/store/prolly/artifact_map_test.go @@ -130,8 +130,8 @@ func TestMergeArtifactMaps(t *testing.T) { ms, err := ArtifactDebugFormat(ctx, merged) require.NoError(t, err) - t.Logf(es) - t.Logf(ms) + t.Log(es) + t.Log(ms) assert.Equal(t, es, ms) } diff --git a/go/store/types/serial_message.go b/go/store/types/serial_message.go index e5c4060f14..04a9e16ce3 100644 --- a/go/store/types/serial_message.go +++ b/go/store/types/serial_message.go @@ -62,7 +62,7 @@ func (sm SerialMessage) HumanReadableString() string { } func printWithIndendationLevel(level int, builder *strings.Builder, format string, a ...any) { - fmt.Fprintf(builder, strings.Repeat("\t", level)) + fmt.Fprint(builder, strings.Repeat("\t", level)) fmt.Fprintf(builder, format, a...) } diff --git a/go/store/types/value_stats.go b/go/store/types/value_stats.go index 03a0fbe1cd..b0770d7871 100644 --- a/go/store/types/value_stats.go +++ b/go/store/types/value_stats.go @@ -72,7 +72,7 @@ func writePtreeStats(ctx context.Context, w io.Writer, v Value, vr ValueReader) return err } - _, err = fmt.Fprintf(w, treeLevelHeader) + _, err = fmt.Fprint(w, treeLevelHeader) if err != nil { return err