diff --git a/.golangci.yml b/.golangci.yml index ad06ff5bd..d00a1f9f7 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -30,6 +30,10 @@ linters: deny: - pkg: io/ioutil desc: io/ioutil package has been deprecated + - pkg: golang.org/x/exp/maps + desc: use stdlib maps package + - pkg: golang.org/x/exp/slices + desc: use stdlib slices package - pkg: gopkg.in/yaml.v2 desc: compose-go uses yaml.v3 gocritic: diff --git a/cmd/compose/scale.go b/cmd/compose/scale.go index f28a256d7..afa1f8cb2 100644 --- a/cmd/compose/scale.go +++ b/cmd/compose/scale.go @@ -19,14 +19,13 @@ package compose import ( "context" "fmt" + "maps" + "slices" "strconv" "strings" - "github.com/docker/cli/cli/command" - "github.com/compose-spec/compose-go/v2/types" - "golang.org/x/exp/maps" - + "github.com/docker/cli/cli/command" "github.com/docker/compose/v2/pkg/api" "github.com/spf13/cobra" ) @@ -60,7 +59,7 @@ func scaleCommand(p *ProjectOptions, dockerCli command.Cli, backend api.Service) } func runScale(ctx context.Context, dockerCli command.Cli, backend api.Service, opts scaleOptions, serviceReplicaTuples map[string]int) error { - services := maps.Keys(serviceReplicaTuples) + services := slices.Sorted(maps.Keys(serviceReplicaTuples)) project, _, err := opts.ToProject(ctx, dockerCli, services) if err != nil { return err diff --git a/go.mod b/go.mod index 479bd313b..d5c4e9ebb 100644 --- a/go.mod +++ b/go.mod @@ -54,7 +54,6 @@ require ( go.opentelemetry.io/otel/trace v1.35.0 go.uber.org/goleak v1.3.0 go.uber.org/mock v0.5.2 - golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 golang.org/x/sync v0.14.0 golang.org/x/sys v0.33.0 google.golang.org/grpc v1.72.1 diff --git a/go.sum b/go.sum index 9b4e25570..83a4ffb6e 100644 --- a/go.sum +++ b/go.sum @@ -544,8 +544,6 @@ golang.org/x/crypto v0.0.0-20201117144127-c1f2f97bffc9/go.mod h1:jdWPYTVW3xRLrWP golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE= golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc= -golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 h1:R84qjqJb5nVJMxqWYb3np9L5ZsaDtB+a39EqjV0JSUM= -golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0/go.mod h1:S9Xr4PYopiDyqSyp5NjCrhFrqg6A5zA2E/iPHPhqnS8= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= diff --git a/pkg/compose/generate.go b/pkg/compose/generate.go index 61906b949..025d5093d 100644 --- a/pkg/compose/generate.go +++ b/pkg/compose/generate.go @@ -19,6 +19,7 @@ package compose import ( "context" "fmt" + "maps" "slices" "strings" @@ -28,8 +29,6 @@ import ( "github.com/docker/docker/api/types/filters" "github.com/docker/docker/api/types/mount" "github.com/docker/docker/api/types/network" - - "golang.org/x/exp/maps" ) func (s *composeService) Generate(ctx context.Context, options api.GenerateOptions) (*types.Project, error) {