Remove unnecessary dependency on github.com/pkg/errors

This commit is contained in:
Vinícius Garcia 2022-10-08 14:56:30 -03:00
parent 60233e04a8
commit 8538d99468
8 changed files with 21 additions and 31 deletions

View File

@ -4,12 +4,10 @@ import (
"context" "context"
"database/sql" "database/sql"
"fmt" "fmt"
"github.com/pkg/errors"
) )
// ErrRecordNotFound ... // ErrRecordNotFound ...
var ErrRecordNotFound error = errors.Wrap(sql.ErrNoRows, "ksql: the query returned no results") var ErrRecordNotFound error = fmt.Errorf("ksql: the query returned no results: %w", sql.ErrNoRows)
// ErrAbortIteration ... // ErrAbortIteration ...
var ErrAbortIteration error = fmt.Errorf("ksql: abort iteration, should only be used inside QueryChunks function") var ErrAbortIteration error = fmt.Errorf("ksql: abort iteration, should only be used inside QueryChunks function")

1
go.mod
View File

@ -5,7 +5,6 @@ go 1.14
require ( require (
github.com/davecgh/go-spew v1.1.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect
github.com/kr/pretty v0.2.1 // indirect github.com/kr/pretty v0.2.1 // indirect
github.com/pkg/errors v0.9.1
github.com/stretchr/testify v1.7.0 github.com/stretchr/testify v1.7.0
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 // indirect gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 // indirect
) )

2
go.sum
View File

@ -6,8 +6,6 @@ github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfn
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=

View File

@ -7,7 +7,6 @@ import (
"strings" "strings"
"sync" "sync"
"github.com/pkg/errors"
"github.com/vingarcia/ksql" "github.com/vingarcia/ksql"
"github.com/vingarcia/ksql/internal/structs" "github.com/vingarcia/ksql/internal/structs"
) )
@ -52,7 +51,7 @@ func (q Query) BuildQuery(dialect ksql.Dialect) (sqlQuery string, params []inter
default: default:
selectQuery, err := buildSelectQuery(v, dialect) selectQuery, err := buildSelectQuery(v, dialect)
if err != nil { if err != nil {
return "", nil, errors.Wrap(err, "error reading the Select field") return "", nil, fmt.Errorf("error reading the Select field: %w", err)
} }
b.WriteString("SELECT " + selectQuery) b.WriteString("SELECT " + selectQuery)
} }

13
ksql.go
View File

@ -10,7 +10,6 @@ import (
"sync" "sync"
"unicode" "unicode"
"github.com/pkg/errors"
"github.com/vingarcia/ksql/internal/structs" "github.com/vingarcia/ksql/internal/structs"
"github.com/vingarcia/ksql/ksqltest" "github.com/vingarcia/ksql/ksqltest"
) )
@ -604,7 +603,7 @@ func normalizeIDsAsMap(idNames []string, idOrMap interface{}) (idMap map[string]
case reflect.Struct: case reflect.Struct:
idMap, err = ksqltest.StructToMap(idOrMap) idMap, err = ksqltest.StructToMap(idOrMap)
if err != nil { if err != nil {
return nil, errors.Wrapf(err, "could not get ID(s) from input record") return nil, fmt.Errorf("could not get ID(s) from input record: %w", err)
} }
case reflect.Map: case reflect.Map:
var ok bool var ok bool
@ -883,8 +882,9 @@ func (c DB) Transaction(ctx context.Context, fn func(Provider) error) error {
if r := recover(); r != nil { if r := recover(); r != nil {
rollbackErr := tx.Rollback(ctx) rollbackErr := tx.Rollback(ctx)
if rollbackErr != nil { if rollbackErr != nil {
r = errors.Wrap(rollbackErr, r = fmt.Errorf(
fmt.Sprintf("KSQL: unable to rollback after panic with value: %v", r), "KSQL: unable to rollback after panic with value: %v, rollback error: %w",
r, rollbackErr,
) )
} }
panic(r) panic(r)
@ -898,8 +898,9 @@ func (c DB) Transaction(ctx context.Context, fn func(Provider) error) error {
if err != nil { if err != nil {
rollbackErr := tx.Rollback(ctx) rollbackErr := tx.Rollback(ctx)
if rollbackErr != nil { if rollbackErr != nil {
err = errors.Wrap(rollbackErr, err = fmt.Errorf(
fmt.Sprintf("KSQL: unable to rollback after error: %s", err.Error()), "KSQL: unable to rollback after error: %s, rollback error: %w",
err.Error(), rollbackErr,
) )
} }
return err return err

View File

@ -4,8 +4,6 @@ import (
"fmt" "fmt"
"reflect" "reflect"
"github.com/pkg/errors"
"github.com/vingarcia/ksql/internal/structs" "github.com/vingarcia/ksql/internal/structs"
) )
@ -67,7 +65,7 @@ func FillStructWith(record interface{}, dbRow map[string]interface{}) error {
destValue, err := src.Convert(destType) destValue, err := src.Convert(destType)
if err != nil { if err != nil {
return errors.Wrap(err, fmt.Sprintf("FillStructWith: error on field `%s`", colName)) return fmt.Errorf("FillStructWith: error on field `%s`: %w", colName, err)
} }
dest.Set(destValue) dest.Set(destValue)
@ -94,7 +92,7 @@ func FillSliceWith(entities interface{}, dbRows []map[string]interface{}) error
structType, isSliceOfPtrs, err := structs.DecodeAsSliceOfStructs(sliceType.Elem()) structType, isSliceOfPtrs, err := structs.DecodeAsSliceOfStructs(sliceType.Elem())
if err != nil { if err != nil {
return errors.Wrap(err, "FillSliceWith") return fmt.Errorf("FillSliceWith: %w", err)
} }
slice := sliceRef.Elem() slice := sliceRef.Elem()
@ -110,7 +108,7 @@ func FillSliceWith(entities interface{}, dbRows []map[string]interface{}) error
err := FillStructWith(slice.Index(idx).Addr().Interface(), row) err := FillStructWith(slice.Index(idx).Addr().Interface(), row)
if err != nil { if err != nil {
return errors.Wrap(err, "FillSliceWith") return fmt.Errorf("FillSliceWith: %w", err)
} }
} }

View File

@ -5,8 +5,6 @@ import (
"fmt" "fmt"
"reflect" "reflect"
"github.com/pkg/errors"
"github.com/vingarcia/ksql/internal/structs" "github.com/vingarcia/ksql/internal/structs"
) )
@ -72,7 +70,7 @@ func FillStructWith(record interface{}, dbRow map[string]interface{}) error {
destValue, err := src.Convert(destType) destValue, err := src.Convert(destType)
if err != nil { if err != nil {
return errors.Wrap(err, fmt.Sprintf("FillStructWith: error on field `%s`", colName)) return fmt.Errorf("FillStructWith: error on field `%s`: %w", colName, err)
} }
dest.Set(destValue) dest.Set(destValue)
@ -101,7 +99,7 @@ func FillSliceWith(entities interface{}, dbRows []map[string]interface{}) error
structType, isSliceOfPtrs, err := structs.DecodeAsSliceOfStructs(sliceType.Elem()) structType, isSliceOfPtrs, err := structs.DecodeAsSliceOfStructs(sliceType.Elem())
if err != nil { if err != nil {
return errors.Wrap(err, "FillSliceWith") return fmt.Errorf("FillSliceWith: %w", err)
} }
slice := sliceRef.Elem() slice := sliceRef.Elem()
@ -117,7 +115,7 @@ func FillSliceWith(entities interface{}, dbRows []map[string]interface{}) error
err := FillStructWith(slice.Index(idx).Addr().Interface(), row) err := FillStructWith(slice.Index(idx).Addr().Interface(), row)
if err != nil { if err != nil {
return errors.Wrap(err, "FillSliceWith") return fmt.Errorf("FillSliceWith: %w", err)
} }
} }

View File

@ -8,7 +8,6 @@ import (
"io" "io"
"testing" "testing"
"github.com/pkg/errors"
tt "github.com/vingarcia/ksql/internal/testtools" tt "github.com/vingarcia/ksql/internal/testtools"
"github.com/vingarcia/ksql/nullable" "github.com/vingarcia/ksql/nullable"
) )
@ -497,7 +496,7 @@ func QueryTest(
}, },
NextFn: func() bool { return true }, NextFn: func() bool { return true },
ScanFn: func(values ...interface{}) error { ScanFn: func(values ...interface{}) error {
return errors.New("fakeScanErr") return fmt.Errorf("fakeScanErr")
}, },
}, nil }, nil
}, },
@ -523,7 +522,7 @@ func QueryTest(
return nil return nil
}, },
ErrFn: func() error { ErrFn: func() error {
return errors.New("fakeErrMsg") return fmt.Errorf("fakeErrMsg")
}, },
}, nil }, nil
}, },
@ -549,7 +548,7 @@ func QueryTest(
return nil return nil
}, },
CloseFn: func() error { CloseFn: func() error {
return errors.New("fakeCloseErr") return fmt.Errorf("fakeCloseErr")
}, },
}, nil }, nil
}, },
@ -2114,7 +2113,7 @@ func QueryChunksTest(
ForEachChunk: func(buffer []user) error { ForEachChunk: func(buffer []user) error {
lengths = append(lengths, len(buffer)) lengths = append(lengths, len(buffer))
users = append(users, buffer...) users = append(users, buffer...)
return errors.New("fake error msg") return fmt.Errorf("fake error msg")
}, },
}) })
@ -2143,7 +2142,7 @@ func QueryChunksTest(
_ = c.Insert(ctx, usersTable, &user{Name: "User2"}) _ = c.Insert(ctx, usersTable, &user{Name: "User2"})
_ = c.Insert(ctx, usersTable, &user{Name: "User3"}) _ = c.Insert(ctx, usersTable, &user{Name: "User3"})
returnVals := []error{nil, errors.New("fake error msg")} returnVals := []error{nil, fmt.Errorf("fake error msg")}
var lengths []int var lengths []int
var users []user var users []user
err = c.QueryChunks(ctx, ChunkParser{ err = c.QueryChunks(ctx, ChunkParser{
@ -2357,7 +2356,7 @@ func TransactionTest(
_, err = db.Exec(ctx, "UPDATE users SET age = 22") _, err = db.Exec(ctx, "UPDATE users SET age = 22")
tt.AssertNoErr(t, err) tt.AssertNoErr(t, err)
return errors.New("fake-error") return fmt.Errorf("fake-error")
}) })
tt.AssertNotEqual(t, err, nil) tt.AssertNotEqual(t, err, nil)
tt.AssertEqual(t, err.Error(), "fake-error") tt.AssertEqual(t, err.Error(), "fake-error")