Skip to content

Commit 4f69491

Browse files
mmorel-35ndeloof
authored andcommitted
deps: remove deprecated github.com/pkg/errors
Signed-off-by: Matthieu MOREL <[email protected]>
1 parent 6ecab95 commit 4f69491

39 files changed

+106
-99
lines changed

.golangci.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ linters:
77
enable:
88
- depguard
99
- errcheck
10+
- errorlint
1011
- gocritic
1112
- gocyclo
1213
- gofmt
@@ -40,6 +41,11 @@ linters-settings:
4041
desc: 'compose-go uses yaml.v3'
4142
gomodguard:
4243
blocked:
44+
modules:
45+
- github.com/pkg/errors:
46+
recommendations:
47+
- errors
48+
- fmt
4349
versions:
4450
- github.com/distribution/distribution:
4551
reason: "use distribution/reference"

cmd/compose/compose.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package compose
1818

1919
import (
2020
"context"
21+
"errors"
2122
"fmt"
2223
"os"
2324
"os/signal"
@@ -37,7 +38,6 @@ import (
3738
"github.com/docker/cli/cli/command"
3839
"github.com/docker/compose/v2/pkg/remote"
3940
"github.com/morikuni/aec"
40-
"github.com/pkg/errors"
4141
"github.com/sirupsen/logrus"
4242
"github.com/spf13/cobra"
4343
"github.com/spf13/pflag"

cmd/compose/ps.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package compose
1818

1919
import (
2020
"context"
21+
"errors"
2122
"fmt"
2223
"sort"
2324
"strings"
@@ -29,7 +30,6 @@ import (
2930
"github.com/docker/cli/cli/command"
3031
cliformatter "github.com/docker/cli/cli/command/formatter"
3132
cliflags "github.com/docker/cli/cli/flags"
32-
"github.com/pkg/errors"
3333
"github.com/spf13/cobra"
3434
)
3535

cmd/compose/scale.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ package compose
1818

1919
import (
2020
"context"
21+
"fmt"
2122
"strconv"
2223
"strings"
2324

2425
"github.com/docker/cli/cli/command"
2526

2627
"github.com/compose-spec/compose-go/types"
27-
"github.com/pkg/errors"
2828
"golang.org/x/exp/maps"
2929

3030
"github.com/docker/compose/v2/pkg/api"
@@ -95,12 +95,12 @@ func parseServicesReplicasArgs(args []string) (map[string]int, error) {
9595
for _, arg := range args {
9696
key, val, ok := strings.Cut(arg, "=")
9797
if !ok || key == "" || val == "" {
98-
return nil, errors.Errorf("invalid scale specifier: %s", arg)
98+
return nil, fmt.Errorf("invalid scale specifier: %s", arg)
9999
}
100100
intValue, err := strconv.Atoi(val)
101101

102102
if err != nil {
103-
return nil, errors.Errorf("invalid scale specifier: can't parse replica value as int: %v", arg)
103+
return nil, fmt.Errorf("invalid scale specifier: can't parse replica value as int: %v", arg)
104104
}
105105
serviceReplicaTuples[key] = intValue
106106
}

cmd/compose/watch.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,10 @@ func runWatch(ctx context.Context, dockerCli command.Cli, backend api.Service, w
7878
// validation done -- ensure we have the lockfile for this project before doing work
7979
l, err := locker.NewPidfile(project.Name)
8080
if err != nil {
81-
return fmt.Errorf("cannot take exclusive lock for project %q: %v", project.Name, err)
81+
return fmt.Errorf("cannot take exclusive lock for project %q: %w", project.Name, err)
8282
}
8383
if err := l.Lock(); err != nil {
84-
return fmt.Errorf("cannot take exclusive lock for project %q: %v", project.Name, err)
84+
return fmt.Errorf("cannot take exclusive lock for project %q: %w", project.Name, err)
8585
}
8686

8787
if !watchOpts.noUp {

cmd/formatter/formatter.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ import (
2323
"strings"
2424

2525
"github.com/docker/compose/v2/pkg/api"
26-
27-
"github.com/pkg/errors"
2826
)
2927

3028
// Print prints formatted lists in different formats
@@ -67,7 +65,7 @@ func Print(toJSON interface{}, format string, outWriter io.Writer, writerFn func
6765
_, _ = fmt.Fprintln(outWriter, outJSON)
6866
}
6967
default:
70-
return errors.Wrapf(api.ErrParsingFailed, "format value %q could not be parsed", format)
68+
return fmt.Errorf("format value %q could not be parsed: %w", format, api.ErrParsingFailed)
7169
}
7270
return nil
7371
}

go.mod

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ require (
3333
github.com/morikuni/aec v1.0.0
3434
github.com/opencontainers/go-digest v1.0.0
3535
github.com/opencontainers/image-spec v1.1.0-rc5
36-
github.com/pkg/errors v0.9.1
3736
github.com/sirupsen/logrus v1.9.3
3837
github.com/spf13/cobra v1.7.0
3938
github.com/spf13/pflag v1.0.5
@@ -46,13 +45,12 @@ require (
4645
go.opentelemetry.io/otel/sdk v1.14.0
4746
go.opentelemetry.io/otel/trace v1.14.0
4847
go.uber.org/goleak v1.2.1
48+
golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1
4949
golang.org/x/sync v0.3.0
5050
google.golang.org/grpc v1.58.2
5151
gotest.tools/v3 v3.5.1
5252
)
5353

54-
require golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1
55-
5654
require (
5755
github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect
5856
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
@@ -132,6 +130,7 @@ require (
132130
github.com/opencontainers/runc v1.1.7 // indirect
133131
github.com/pelletier/go-toml v1.9.5 // indirect
134132
github.com/pelletier/go-toml/v2 v2.0.5 // indirect
133+
github.com/pkg/errors v0.9.1 // indirect
135134
github.com/pmezard/go-difflib v1.0.0 // indirect
136135
github.com/prometheus/client_golang v1.14.0 // indirect
137136
github.com/prometheus/client_model v0.3.0 // indirect

internal/sync/tar.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"archive/tar"
2222
"bytes"
2323
"context"
24+
"errors"
2425
"fmt"
2526
"io"
2627
"io/fs"
@@ -30,7 +31,6 @@ import (
3031
"strings"
3132

3233
"github.com/hashicorp/go-multierror"
33-
"github.com/pkg/errors"
3434

3535
"github.com/compose-spec/compose-go/types"
3636
moby "github.com/docker/docker/api/types"
@@ -212,7 +212,7 @@ func (a *ArchiveBuilder) writeEntry(entry archiveEntry) error {
212212
if useBuf {
213213
a.copyBuf.Reset()
214214
_, err = io.Copy(a.copyBuf, file)
215-
if err != nil && err != io.EOF {
215+
if err != nil && !errors.Is(err, io.EOF) {
216216
return fmt.Errorf("copying %q: %w", pathInTar, err)
217217
}
218218
header.Size = int64(len(a.copyBuf.Bytes()))
@@ -232,7 +232,7 @@ func (a *ArchiveBuilder) writeEntry(entry archiveEntry) error {
232232
_, err = io.Copy(a.tw, file)
233233
}
234234

235-
if err != nil && err != io.EOF {
235+
if err != nil && !errors.Is(err, io.EOF) {
236236
return fmt.Errorf("copying %q: %w", pathInTar, err)
237237
}
238238

internal/sync/writer_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ package sync
1818

1919
import (
2020
"context"
21+
"errors"
2122
"io"
2223
"sync"
2324
"testing"
2425
"time"
2526

26-
"github.com/pkg/errors"
2727
"github.com/stretchr/testify/require"
2828
)
2929

@@ -115,7 +115,7 @@ func (b *bufReader) consume() {
115115
b.data = append(b.data, buf[:n]...)
116116
b.mu.Unlock()
117117
}
118-
if err == io.EOF {
118+
if errors.Is(err, io.EOF) {
119119
return
120120
}
121121
if err != nil {

internal/tracing/docker_context.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ func traceClientFromDockerContext(dockerCli command.Cli, otelEnv envMap) (otlptr
3939
// automatic integration with Docker Desktop;
4040
cfg, err := ConfigFromDockerContext(dockerCli.ContextStore(), dockerCli.CurrentContext())
4141
if err != nil {
42-
return nil, fmt.Errorf("loading otel config from docker context metadata: %v", err)
42+
return nil, fmt.Errorf("loading otel config from docker context metadata: %w", err)
4343
}
4444

4545
if cfg.Endpoint == "" {
@@ -52,13 +52,13 @@ func traceClientFromDockerContext(dockerCli command.Cli, otelEnv envMap) (otlptr
5252
defer func() {
5353
for k, v := range otelEnv {
5454
if err := os.Setenv(k, v); err != nil {
55-
panic(fmt.Errorf("restoring env for %q: %v", k, err))
55+
panic(fmt.Errorf("restoring env for %q: %w", k, err))
5656
}
5757
}
5858
}()
5959
for k := range otelEnv {
6060
if err := os.Unsetenv(k); err != nil {
61-
return nil, fmt.Errorf("stashing env for %q: %v", k, err)
61+
return nil, fmt.Errorf("stashing env for %q: %w", k, err)
6262
}
6363
}
6464

@@ -71,7 +71,7 @@ func traceClientFromDockerContext(dockerCli command.Cli, otelEnv envMap) (otlptr
7171
grpc.WithTransportCredentials(insecure.NewCredentials()),
7272
)
7373
if err != nil {
74-
return nil, fmt.Errorf("initializing otel connection from docker context metadata: %v", err)
74+
return nil, fmt.Errorf("initializing otel connection from docker context metadata: %w", err)
7575
}
7676

7777
client := otlptracegrpc.NewClient(otlptracegrpc.WithGRPCConn(conn))

0 commit comments

Comments
 (0)