Skip to content

Commit 33dd56a

Browse files
committed
chore(go): replace github.com/pkg/errors by standard errors
1 parent 561793c commit 33dd56a

25 files changed

+135
-131
lines changed

cmd/kubectx/current.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,10 @@
1515
package main
1616

1717
import (
18+
"errors"
1819
"fmt"
1920
"io"
2021

21-
"github.com/pkg/errors"
22-
2322
"github.com/ahmetb/kubectx/internal/kubeconfig"
2423
)
2524

@@ -30,13 +29,16 @@ func (_op CurrentOp) Run(stdout, _ io.Writer) error {
3029
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
3130
defer kc.Close()
3231
if err := kc.Parse(); err != nil {
33-
return errors.Wrap(err, "kubeconfig error")
32+
return fmt.Errorf("kubeconfig error: %w", err)
3433
}
3534

3635
v := kc.GetCurrentContext()
3736
if v == "" {
3837
return errors.New("current-context is not set")
3938
}
4039
_, err := fmt.Fprintln(stdout, v)
41-
return errors.Wrap(err, "write error")
40+
if err != nil {
41+
return fmt.Errorf("write error: %w", err)
42+
}
43+
return nil
4244
}

cmd/kubectx/delete.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515
package main
1616

1717
import (
18+
"errors"
19+
"fmt"
1820
"io"
1921

20-
"github.com/pkg/errors"
21-
2222
"github.com/ahmetb/kubectx/internal/kubeconfig"
2323
"github.com/ahmetb/kubectx/internal/printer"
2424
)
@@ -34,7 +34,7 @@ func (op DeleteOp) Run(_, stderr io.Writer) error {
3434
// TODO inefficiency here. we open/write/close the same file many times.
3535
deletedName, wasActiveContext, err := deleteContext(ctx)
3636
if err != nil {
37-
return errors.Wrapf(err, "error deleting context \"%s\"", deletedName)
37+
return fmt.Errorf("error deleting context \"%s\": %w", deletedName, err)
3838
}
3939
if wasActiveContext {
4040
printer.Warning(stderr, "You deleted the current context. Use \"%s\" to select a new context.",
@@ -52,7 +52,7 @@ func deleteContext(name string) (deleteName string, wasActiveContext bool, err e
5252
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
5353
defer kc.Close()
5454
if err := kc.Parse(); err != nil {
55-
return deleteName, false, errors.Wrap(err, "kubeconfig error")
55+
return deleteName, false, fmt.Errorf("kubeconfig error: %w", err)
5656
}
5757

5858
cur := kc.GetCurrentContext()
@@ -70,7 +70,7 @@ func deleteContext(name string) (deleteName string, wasActiveContext bool, err e
7070
}
7171

7272
if err := kc.DeleteContextEntry(name); err != nil {
73-
return name, false, errors.Wrap(err, "failed to modify yaml doc")
73+
return name, false, fmt.Errorf("failed to modify yaml doc: %w", err)
7474
}
75-
return name, wasActiveContext, errors.Wrap(kc.Save(), "failed to save modified kubeconfig file")
75+
return name, wasActiveContext, fmt.Errorf("failed to save modified kubeconfig file: %w", kc.Save())
7676
}

cmd/kubectx/fzf.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,14 @@ package main
1616

1717
import (
1818
"bytes"
19+
"errors"
1920
"fmt"
2021
"io"
22+
"io/fs"
2123
"os"
2224
"os/exec"
2325
"strings"
2426

25-
"github.com/pkg/errors"
26-
27-
"github.com/ahmetb/kubectx/internal/cmdutil"
2827
"github.com/ahmetb/kubectx/internal/env"
2928
"github.com/ahmetb/kubectx/internal/kubeconfig"
3029
"github.com/ahmetb/kubectx/internal/printer"
@@ -42,11 +41,11 @@ func (op InteractiveSwitchOp) Run(_, stderr io.Writer) error {
4241
// parse kubeconfig just to see if it can be loaded
4342
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
4443
if err := kc.Parse(); err != nil {
45-
if cmdutil.IsNotFoundErr(err) {
44+
if errors.Is(err, fs.ErrNotExist) {
4645
printer.Warning(stderr, "kubeconfig file not found")
4746
return nil
4847
}
49-
return errors.Wrap(err, "kubeconfig error")
48+
return fmt.Errorf("kubeconfig error: %w", err)
5049
}
5150
kc.Close()
5251

@@ -70,7 +69,7 @@ func (op InteractiveSwitchOp) Run(_, stderr io.Writer) error {
7069
}
7170
name, err := switchContext(choice)
7271
if err != nil {
73-
return errors.Wrap(err, "failed to switch context")
72+
return fmt.Errorf("failed to switch context: %w", err)
7473
}
7574
printer.Success(stderr, "Switched to context \"%s\".", printer.SuccessColor.Sprint(name))
7675
return nil
@@ -80,11 +79,11 @@ func (op InteractiveDeleteOp) Run(_, stderr io.Writer) error {
8079
// parse kubeconfig just to see if it can be loaded
8180
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
8281
if err := kc.Parse(); err != nil {
83-
if cmdutil.IsNotFoundErr(err) {
82+
if errors.Is(err, fs.ErrNotExist) {
8483
printer.Warning(stderr, "kubeconfig file not found")
8584
return nil
8685
}
87-
return errors.Wrap(err, "kubeconfig error")
86+
return fmt.Errorf("kubeconfig error: %w", err)
8887
}
8988
kc.Close()
9089

@@ -114,7 +113,7 @@ func (op InteractiveDeleteOp) Run(_, stderr io.Writer) error {
114113

115114
name, wasActiveContext, err := deleteContext(choice)
116115
if err != nil {
117-
return errors.Wrap(err, "failed to delete context")
116+
return fmt.Errorf("failed to delete context: %w", err)
118117
}
119118

120119
if wasActiveContext {

cmd/kubectx/help.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@ import (
2020
"os"
2121
"path/filepath"
2222
"strings"
23-
24-
"github.com/pkg/errors"
2523
)
2624

2725
// HelpOp describes printing help.
@@ -49,7 +47,10 @@ func printUsage(out io.Writer) error {
4947
help = strings.ReplaceAll(help, "%SPAC%", strings.Repeat(" ", len(selfName())))
5048

5149
_, err := fmt.Fprintf(out, "%s\n", help)
52-
return errors.Wrap(err, "write error")
50+
if err != nil {
51+
return fmt.Errorf("write error: %w", err)
52+
}
53+
return nil
5354
}
5455

5556
// selfName guesses how the user invoked the program.

cmd/kubectx/list.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@
1515
package main
1616

1717
import (
18+
"errors"
1819
"fmt"
1920
"io"
21+
"io/fs"
2022

2123
"facette.io/natsort"
22-
"github.com/pkg/errors"
2324

24-
"github.com/ahmetb/kubectx/internal/cmdutil"
2525
"github.com/ahmetb/kubectx/internal/kubeconfig"
2626
"github.com/ahmetb/kubectx/internal/printer"
2727
)
@@ -33,11 +33,11 @@ func (_ ListOp) Run(stdout, stderr io.Writer) error {
3333
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
3434
defer kc.Close()
3535
if err := kc.Parse(); err != nil {
36-
if cmdutil.IsNotFoundErr(err) {
36+
if errors.Is(err, fs.ErrNotExist) {
3737
printer.Warning(stderr, "kubeconfig file not found")
3838
return nil
3939
}
40-
return errors.Wrap(err, "kubeconfig error")
40+
return fmt.Errorf("kubeconfig error: %w", err)
4141
}
4242

4343
ctxs := kc.ContextNames()

cmd/kubectx/rename.go

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,10 @@
1515
package main
1616

1717
import (
18+
"fmt"
1819
"io"
1920
"strings"
2021

21-
"github.com/pkg/errors"
22-
2322
"github.com/ahmetb/kubectx/internal/kubeconfig"
2423
"github.com/ahmetb/kubectx/internal/printer"
2524
)
@@ -51,7 +50,7 @@ func (op RenameOp) Run(_, stderr io.Writer) error {
5150
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
5251
defer kc.Close()
5352
if err := kc.Parse(); err != nil {
54-
return errors.Wrap(err, "kubeconfig error")
53+
return fmt.Errorf("kubeconfig error: %w", err)
5554
}
5655

5756
cur := kc.GetCurrentContext()
@@ -60,26 +59,26 @@ func (op RenameOp) Run(_, stderr io.Writer) error {
6059
}
6160

6261
if !kc.ContextExists(op.Old) {
63-
return errors.Errorf("context \"%s\" not found, can't rename it", op.Old)
62+
return fmt.Errorf("context \"%s\" not found, can't rename it", op.Old)
6463
}
6564

6665
if kc.ContextExists(op.New) {
6766
printer.Warning(stderr, "context \"%s\" exists, overwriting it.", op.New)
6867
if err := kc.DeleteContextEntry(op.New); err != nil {
69-
return errors.Wrap(err, "failed to delete new context to overwrite it")
68+
return fmt.Errorf("failed to delete new context to overwrite it: %w", err)
7069
}
7170
}
7271

7372
if err := kc.ModifyContextName(op.Old, op.New); err != nil {
74-
return errors.Wrap(err, "failed to change context name")
73+
return fmt.Errorf("failed to change context name: %w", err)
7574
}
7675
if op.Old == cur {
7776
if err := kc.ModifyCurrentContext(op.New); err != nil {
78-
return errors.Wrap(err, "failed to set current-context to new name")
77+
return fmt.Errorf("failed to set current-context to new name: %w", err)
7978
}
8079
}
8180
if err := kc.Save(); err != nil {
82-
return errors.Wrap(err, "failed to save modified kubeconfig")
81+
return fmt.Errorf("failed to save modified kubeconfig: %w", err)
8382
}
8483
printer.Success(stderr, "Context %s renamed to %s.",
8584
printer.SuccessColor.Sprint(op.Old),

cmd/kubectx/state.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,11 @@
1515
package main
1616

1717
import (
18-
"io/ioutil"
18+
"errors"
19+
"fmt"
1920
"os"
2021
"path/filepath"
2122

22-
"github.com/pkg/errors"
23-
2423
"github.com/ahmetb/kubectx/internal/cmdutil"
2524
)
2625

@@ -35,7 +34,7 @@ func kubectxPrevCtxFile() (string, error) {
3534
// readLastContext returns the saved previous context
3635
// if the state file exists, otherwise returns "".
3736
func readLastContext(path string) (string, error) {
38-
b, err := ioutil.ReadFile(path)
37+
b, err := os.ReadFile(path)
3938
if os.IsNotExist(err) {
4039
return "", nil
4140
}
@@ -47,7 +46,7 @@ func readLastContext(path string) (string, error) {
4746
func writeLastContext(path, value string) error {
4847
dir := filepath.Dir(path)
4948
if err := os.MkdirAll(dir, 0755); err != nil {
50-
return errors.Wrap(err, "failed to create parent directories")
49+
return fmt.Errorf("failed to create parent directories: %w", err)
5150
}
52-
return ioutil.WriteFile(path, []byte(value), 0644)
51+
return os.WriteFile(path, []byte(value), 0644)
5352
}

cmd/kubectx/switch.go

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515
package main
1616

1717
import (
18+
"errors"
19+
"fmt"
1820
"io"
1921

20-
"github.com/pkg/errors"
21-
2222
"github.com/ahmetb/kubectx/internal/kubeconfig"
2323
"github.com/ahmetb/kubectx/internal/printer"
2424
)
@@ -37,39 +37,42 @@ func (op SwitchOp) Run(_, stderr io.Writer) error {
3737
newCtx, err = switchContext(op.Target)
3838
}
3939
if err != nil {
40-
return errors.Wrap(err, "failed to switch context")
40+
return fmt.Errorf("failed to switch context: %w", err)
4141
}
4242
err = printer.Success(stderr, "Switched to context \"%s\".", printer.SuccessColor.Sprint(newCtx))
43-
return errors.Wrap(err, "print error")
43+
if err != nil {
44+
return fmt.Errorf("print error: %w", err)
45+
}
46+
return nil
4447
}
4548

4649
// switchContext switches to specified context name.
4750
func switchContext(name string) (string, error) {
4851
prevCtxFile, err := kubectxPrevCtxFile()
4952
if err != nil {
50-
return "", errors.Wrap(err, "failed to determine state file")
53+
return "", fmt.Errorf("failed to determine state file: %w", err)
5154
}
5255

5356
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
5457
defer kc.Close()
5558
if err := kc.Parse(); err != nil {
56-
return "", errors.Wrap(err, "kubeconfig error")
59+
return "", fmt.Errorf("kubeconfig error: %w", err)
5760
}
5861

5962
prev := kc.GetCurrentContext()
6063
if !kc.ContextExists(name) {
61-
return "", errors.Errorf("no context exists with the name: \"%s\"", name)
64+
return "", fmt.Errorf("no context exists with the name: \"%s\"", name)
6265
}
6366
if err := kc.ModifyCurrentContext(name); err != nil {
6467
return "", err
6568
}
6669
if err := kc.Save(); err != nil {
67-
return "", errors.Wrap(err, "failed to save kubeconfig")
70+
return "", fmt.Errorf("failed to save kubeconfig: %w", err)
6871
}
6972

7073
if prev != name {
7174
if err := writeLastContext(prevCtxFile, prev); err != nil {
72-
return "", errors.Wrap(err, "failed to save previous context name")
75+
return "", fmt.Errorf("failed to save previous context name: %w", err)
7376
}
7477
}
7578
return name, nil
@@ -79,11 +82,11 @@ func switchContext(name string) (string, error) {
7982
func swapContext() (string, error) {
8083
prevCtxFile, err := kubectxPrevCtxFile()
8184
if err != nil {
82-
return "", errors.Wrap(err, "failed to determine state file")
85+
return "", fmt.Errorf("failed to determine state file: %w", err)
8386
}
8487
prev, err := readLastContext(prevCtxFile)
8588
if err != nil {
86-
return "", errors.Wrap(err, "failed to read previous context file")
89+
return "", fmt.Errorf("failed to read previous context file: %w", err)
8790
}
8891
if prev == "" {
8992
return "", errors.New("no previous context found")

cmd/kubectx/unset.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,9 @@
1515
package main
1616

1717
import (
18+
"fmt"
1819
"io"
1920

20-
"github.com/pkg/errors"
21-
2221
"github.com/ahmetb/kubectx/internal/kubeconfig"
2322
"github.com/ahmetb/kubectx/internal/printer"
2423
)
@@ -30,16 +29,19 @@ func (_ UnsetOp) Run(_, stderr io.Writer) error {
3029
kc := new(kubeconfig.Kubeconfig).WithLoader(kubeconfig.DefaultLoader)
3130
defer kc.Close()
3231
if err := kc.Parse(); err != nil {
33-
return errors.Wrap(err, "kubeconfig error")
32+
return fmt.Errorf("kubeconfig error: %w", err)
3433
}
3534

3635
if err := kc.UnsetCurrentContext(); err != nil {
37-
return errors.Wrap(err, "error while modifying current-context")
36+
return fmt.Errorf("error while modifying current-context: %w", err)
3837
}
3938
if err := kc.Save(); err != nil {
40-
return errors.Wrap(err, "failed to save kubeconfig file after modification")
39+
return fmt.Errorf("failed to save kubeconfig file after modification: %w", err)
4140
}
4241

4342
err := printer.Success(stderr, "Active context unset for kubectl.")
44-
return errors.Wrap(err, "write error")
43+
if err != nil {
44+
return fmt.Errorf("write error: %w", err)
45+
}
46+
return nil
4547
}

0 commit comments

Comments
 (0)