Skip to content

Commit 821947e

Browse files
authored
feat: replace x/exp with stdlib functions (#2580)
1 parent beb0270 commit 821947e

File tree

10 files changed

+20
-23
lines changed

10 files changed

+20
-23
lines changed

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@ require (
7575
go.uber.org/goleak v1.3.0
7676
go.uber.org/zap v1.27.0
7777
go.uber.org/zap/exp v0.1.1-0.20240530135403-273f9ea8c887
78-
golang.org/x/exp v0.0.0-20240909161429-701f63a606c0
7978
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616
8079
golang.org/x/oauth2 v0.23.0
8180
google.golang.org/api v0.199.0
@@ -161,6 +160,7 @@ require (
161160
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect
162161
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect
163162
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect
163+
golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 // indirect
164164
golang.org/x/tools v0.25.0 // indirect
165165
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
166166
gopkg.in/go-jose/go-jose.v2 v2.6.3 // indirect

internal/resources/fetching/fetchers/azure/assets_fetcher.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,10 @@ import (
2121
"context"
2222
"errors"
2323
"fmt"
24+
"maps"
25+
"slices"
2426

2527
"github.com/elastic/elastic-agent-libs/logp"
26-
"golang.org/x/exp/maps"
2728

2829
"github.com/elastic/cloudbeat/internal/resources/fetching"
2930
"github.com/elastic/cloudbeat/internal/resources/fetching/cycle"
@@ -98,7 +99,7 @@ func (f *AzureAssetsFetcher) Fetch(ctx context.Context, cycleMetadata cycle.Meta
9899
var assets []inventory.AzureAsset
99100
for _, assetGroup := range AzureAssetGroups {
100101
// Fetching all types even if non-existent in asset group for simplicity
101-
r, err := f.provider.ListAllAssetTypesByName(ctx, assetGroup, maps.Keys(AzureAssetTypeToTypePair))
102+
r, err := f.provider.ListAllAssetTypesByName(ctx, assetGroup, slices.Collect(maps.Keys(AzureAssetTypeToTypePair)))
102103
if err != nil {
103104
f.log.Errorf("AzureAssetsFetcher.Fetch failed to fetch asset group %s: %s", assetGroup, err.Error())
104105
errAgg = errors.Join(errAgg, err)

internal/resources/fetching/fetchers/azure/assets_fetcher_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ package fetchers
2020
import (
2121
"context"
2222
"errors"
23+
"maps"
2324
"testing"
2425

2526
"github.com/samber/lo"
2627
"github.com/stretchr/testify/mock"
2728
"github.com/stretchr/testify/suite"
28-
"golang.org/x/exp/maps"
2929

3030
"github.com/elastic/cloudbeat/internal/resources/fetching"
3131
"github.com/elastic/cloudbeat/internal/resources/fetching/cycle"
@@ -61,7 +61,7 @@ func (s *AzureAssetsFetcherTestSuite) TestFetcher_Fetch() {
6161
var flatMockAssets []inventory.AzureAsset
6262
for _, assetGroup := range AzureAssetGroups {
6363
var mockAssets []inventory.AzureAsset
64-
for _, assetType := range maps.Keys(AzureAssetTypeToTypePair) {
64+
for assetType := range maps.Keys(AzureAssetTypeToTypePair) {
6565
mockAssets = append(mockAssets,
6666
inventory.AzureAsset{
6767
Id: "id",

internal/resources/fetching/fetchers/azure/batch_fetcher.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,11 @@ import (
2121
"context"
2222
"errors"
2323
"fmt"
24+
"maps"
25+
"slices"
2426

2527
"github.com/elastic/elastic-agent-libs/logp"
2628
"github.com/samber/lo"
27-
"golang.org/x/exp/maps"
2829

2930
"github.com/elastic/cloudbeat/internal/resources/fetching"
3031
"github.com/elastic/cloudbeat/internal/resources/fetching/cycle"
@@ -67,7 +68,7 @@ func (f *AzureBatchAssetFetcher) Fetch(ctx context.Context, cycleMetadata cycle.
6768
var errAgg error
6869
assets := []inventory.AzureAsset{}
6970
for _, assetGroup := range AzureBatchAssetGroups {
70-
r, err := f.provider.ListAllAssetTypesByName(ctx, assetGroup, maps.Keys(AzureBatchAssets))
71+
r, err := f.provider.ListAllAssetTypesByName(ctx, assetGroup, slices.Collect(maps.Keys(AzureBatchAssets)))
7172
if err != nil {
7273
f.log.Errorf("AzureBatchAssetFetcher.Fetch failed to fetch asset group %s: %s", assetGroup, err.Error())
7374
errAgg = errors.Join(errAgg, err)

internal/resources/fetching/fetchers/azure/batch_fetcher_test.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ package fetchers
2020
import (
2121
"context"
2222
"fmt"
23+
"maps"
2324
"testing"
2425

2526
"github.com/samber/lo"
2627
"github.com/stretchr/testify/mock"
2728
"github.com/stretchr/testify/suite"
28-
"golang.org/x/exp/maps"
2929

3030
"github.com/elastic/cloudbeat/internal/resources/fetching"
3131
"github.com/elastic/cloudbeat/internal/resources/fetching/cycle"
@@ -60,7 +60,7 @@ func (s *AzureBatchAssetFetcherTestSuite) TestFetcher_Fetch() {
6060
var flatMockAssets []inventory.AzureAsset
6161
for _, assetGroup := range AzureBatchAssetGroups {
6262
var mockAssets []inventory.AzureAsset
63-
for _, assetType := range maps.Keys(AzureBatchAssets) {
63+
for assetType := range maps.Keys(AzureBatchAssets) {
6464
mockId := fmt.Sprintf("%s-%s", AzureBatchAssets[assetType].SubType, "subId1")
6565
mockAssets = append(mockAssets,
6666
inventory.AzureAsset{
@@ -167,8 +167,8 @@ func (s *AzureBatchAssetFetcherTestSuite) TestFetcher_Fetch_Subscriptions() {
167167

168168
for _, assetGroup := range AzureBatchAssetGroups {
169169
var mockAssets []inventory.AzureAsset
170-
for _, assetType := range maps.Keys(AzureBatchAssets) {
171-
for _, subKey := range maps.Keys(subMap) {
170+
for assetType := range maps.Keys(AzureBatchAssets) {
171+
for subKey := range maps.Keys(subMap) {
172172
mockId := fmt.Sprintf("%s-%s", AzureBatchAssets[assetType].SubType, subKey)
173173
mockAssets = append(mockAssets,
174174
inventory.AzureAsset{
@@ -213,7 +213,7 @@ func (s *AzureBatchAssetFetcherTestSuite) TestFetcher_Fetch_Subscriptions() {
213213
})
214214
s.Len(expectedSubs, len(subMap))
215215

216-
for _, subKey := range maps.Keys(expectedSubs) {
216+
for subKey := range maps.Keys(expectedSubs) {
217217
typesPerSub := expectedSubs[subKey]
218218
s.Len(typesPerSub, len(AzureBatchAssets))
219219
for _, subTypeRes := range typesPerSub {

internal/vulnerability/events_creator.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ import (
2121
"context"
2222
"encoding/json"
2323
"fmt"
24+
"maps"
25+
"slices"
2426
"strings"
2527
"time"
2628

@@ -31,7 +33,6 @@ import (
3133
libevents "github.com/elastic/beats/v7/libbeat/beat/events"
3234
"github.com/elastic/elastic-agent-libs/logp"
3335
"github.com/elastic/elastic-agent-libs/mapstr"
34-
"golang.org/x/exp/maps"
3536

3637
"github.com/elastic/cloudbeat/internal/config"
3738
"github.com/elastic/cloudbeat/internal/dataprovider"
@@ -414,7 +415,7 @@ func getReference(vul trivyTypes.DetectedVulnerability) string {
414415

415416
func getCVSSValue[T comparable](vul trivyTypes.DetectedVulnerability, value func(cvss dbTypes.CVSS) T, zeroVal T) T {
416417
// Get all the sources
417-
sources := maps.Keys(vul.CVSS)
418+
sources := slices.Collect(maps.Keys(vul.CVSS))
418419
if len(sources) == 0 {
419420
return zeroVal
420421
}

scripts/update_assets_md/go.mod

-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ go 1.23.0
55
require (
66
github.com/ettle/strcase v0.2.0
77
github.com/xuri/excelize/v2 v2.8.1
8-
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56
98
)
109

1110
require (

scripts/update_assets_md/go.sum

-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@ github.com/xuri/nfp v0.0.0-20230919160717-d98342af3f05 h1:qhbILQo1K3mphbwKh1vNm4
2121
github.com/xuri/nfp v0.0.0-20230919160717-d98342af3f05/go.mod h1:WwHg+CVyzlv/TX9xqBFXEZAuxOPxn2k1GNHwG41IIUQ=
2222
golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
2323
golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
24-
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8=
25-
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY=
2624
golang.org/x/image v0.14.0 h1:tNgSxAFe3jC4uYqvZdTr84SZoM1KfwdC9SKIFrLjFn4=
2725
golang.org/x/image v0.14.0/go.mod h1:HUYqC05R2ZcZ3ejNQsIHQDQiwWM4JBqmm6MKANTp4LE=
2826
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=

scripts/update_assets_md/main.go

+3-5
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ import (
2222
"go/ast"
2323
"go/parser"
2424
"go/token"
25+
"maps"
2526
"os"
2627
"slices"
2728
"strings"
2829

2930
"github.com/ettle/strcase"
3031
"github.com/xuri/excelize/v2"
31-
"golang.org/x/exp/maps"
3232
)
3333

3434
const (
@@ -195,8 +195,7 @@ func writeSummary(plannedByProvider, implementedByProvider *ByProvider, filepath
195195
for providerNo, provider := range []string{AWS_PREFIX, AZURE_PREFIX, GCP_PREFIX} {
196196
planned := plannedByProvider.Get(provider)
197197
implemented := implementedByProvider.Get(provider)
198-
sortedKeys := maps.Keys(planned)
199-
slices.Sort(sortedKeys)
198+
sortedKeys := slices.Sorted(maps.Keys(planned))
200199

201200
// stats
202201
totalImplemented := 0
@@ -241,8 +240,7 @@ func writeSummary(plannedByProvider, implementedByProvider *ByProvider, filepath
241240
fmt.Sprintf("**Progress: %d%% (%d/%d)**\n", percentage, totalImplemented, len(planned)),
242241
)
243242

244-
sortedCategories := maps.Keys(plannedByCategory)
245-
slices.Sort(sortedCategories)
243+
sortedCategories := slices.Sorted(maps.Keys(plannedByCategory))
246244

247245
for _, category := range sortedCategories {
248246
plannedCount := plannedByCategory[category]

tools/tools.go

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import (
2929
_ "github.com/pierrre/gotestcover"
3030
_ "github.com/tsg/go-daemon"
3131
_ "go.elastic.co/go-licence-detector"
32-
_ "golang.org/x/exp/maps"
3332
_ "golang.org/x/lint/golint"
3433
_ "gotest.tools/gotestsum/cmd"
3534
)

0 commit comments

Comments
 (0)