Skip to content

Commit 51d614e

Browse files
committed
merge from feature branch
1 parent b20ac62 commit 51d614e

File tree

11 files changed

+195
-170
lines changed

11 files changed

+195
-170
lines changed

cmd/gorepomod/go.mod

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
module sigs.k8s.io/kustomize/cmd/gorepomod
22

3-
go 1.21
3+
go 1.20
4+
5+
require golang.org/x/mod v0.12.0
46

57
require (
68
github.com/spf13/viper v1.17.0
@@ -25,6 +27,7 @@ require (
2527
github.com/spf13/afero v1.10.0 // indirect
2628
github.com/spf13/cast v1.5.1 // indirect
2729
github.com/spf13/pflag v1.0.5 // indirect
30+
github.com/spf13/viper v1.17.0 // indirect
2831
github.com/subosito/gotenv v1.6.0 // indirect
2932
go.uber.org/multierr v1.11.0 // indirect
3033
golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect

cmd/gorepomod/go.sum

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,6 @@ github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnht
4949
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
5050
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
5151
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
52-
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
53-
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
5452
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
5553
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
5654
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
@@ -132,13 +130,8 @@ github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/X
132130
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
133131
github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg=
134132
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
135-
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
136-
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
137-
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
138133
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
139134
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
140-
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
141-
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
142135
github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
143136
github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
144137
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
@@ -149,8 +142,6 @@ github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsK
149142
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
150143
github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg=
151144
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
152-
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
153-
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
154145
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
155146
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
156147
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
@@ -178,7 +169,6 @@ github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5
178169
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
179170
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
180171
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
181-
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
182172
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
183173
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
184174
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
@@ -211,8 +201,8 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0
211201
golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4=
212202
golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM=
213203
golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU=
214-
golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
215-
golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
204+
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 h1:GoHiUyI/Tp2nVkLI2mCxVkOjsbSXD66ic0XW0js0R9g=
205+
golang.org/x/exp v0.0.0-20230905200255-921286631fa9/go.mod h1:S2oDrQGGwySpoQPVqRShND87VCbxmc6bL1Yd2oYrm6k=
216206
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
217207
golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
218208
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
@@ -481,8 +471,6 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj
481471
google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
482472
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
483473
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
484-
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
485-
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
486474
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
487475
gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=
488476
gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=

cmd/gorepomod/gorepomod_test.go

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
"testing"
99

1010
"github.com/stretchr/testify/assert"
11-
"github.com/stretchr/testify/require"
1211
)
1312

1413
func TestListCommand(t *testing.T) {
@@ -43,7 +42,7 @@ func TestListCommand(t *testing.T) {
4342
}
4443
out, err := exec.Command(bash, "-c", tc.cmd).Output()
4544
if err != nil {
46-
require.Error(t, err, "exit status 1")
45+
assert.Error(t, err, "exit status 1")
4746
}
4847
assert.Greater(t, len(string(out)), 1)
4948
}
@@ -80,7 +79,44 @@ func TestPinCommand(t *testing.T) {
8079
}
8180
out, err := exec.Command(bash, "-c", tc.cmd).Output()
8281
if err != nil {
83-
require.Error(t, err, "exit status 1")
82+
assert.Error(t, err, "exit status 1")
83+
}
84+
assert.Greater(t, len(string(out)), 1)
85+
}
86+
}
87+
88+
func TestReleaseCommand(t *testing.T) {
89+
// Assuming gorepomod is installed
90+
var testCases = map[string]struct {
91+
isFork bool
92+
cmd string
93+
}{
94+
"upstreamWithLocalFlag": {
95+
isFork: false,
96+
cmd: "cd ../.. && gorepomod release kyaml --local",
97+
},
98+
"upstreamWithNoLocalFlag": {
99+
isFork: false,
100+
cmd: "cd ../.. && gorepomod release kyaml",
101+
},
102+
"forkWithLocalFlag": {
103+
isFork: true,
104+
cmd: "cd ../.. && gorepomod release kyaml --local",
105+
},
106+
"forkWithNoLocalFlag": {
107+
isFork: true,
108+
cmd: "cd ../.. && gorepomod release kyaml",
109+
},
110+
}
111+
112+
for _, tc := range testCases {
113+
bash, err := exec.LookPath("bash")
114+
if err != nil {
115+
t.Error("bash not found")
116+
}
117+
out, err := exec.Command(bash, "-c", tc.cmd).Output()
118+
if err != nil {
119+
assert.Error(t, err, "exit status 1")
84120
}
85121
assert.Greater(t, len(string(out)), 1)
86122
}

cmd/gorepomod/internal/git/runner.go

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -366,21 +366,22 @@ func (gr *Runner) DeleteTagFromRemote(
366366
return gr.runNoOut(undoPainful, "push", string(remote), ":"+refsTags+tag)
367367
}
368368

369-
func (gr *Runner) GetLatestTag(releaseBranch string) (string, error) {
369+
func (gr *Runner) GetLatestTag(releaseTag string) (string, error) {
370370
var latestTag string
371-
// Assuming release branch has this format: release-path/to/module-vX.Y.Z
372-
// and each release branch maintains tags, extract version from latest `releaseBranch`
373-
gr.comment("extract version from latest release branch")
374-
filteredBranchList, err := gr.run(noHarmDone, "branch", "-a", "--list", "*"+releaseBranch+"*", "--sort=-committerdate")
375-
if len(filteredBranchList) < 1 {
376-
_ = fmt.Errorf("latest tag not found for %s", releaseBranch)
371+
// Assuming release branch has this format: module/vX.Y.Z
372+
gr.comment("extract version from latest release tag")
373+
374+
// Using `creatordate` sort key as it is more accurate
375+
filteredTagList, err := gr.run(noHarmDone, "tag", "-l", "--sort=-creatordate", releaseTag+"*")
376+
if len(filteredTagList) < 1 {
377+
_ = fmt.Errorf("latest tag not found for %s", releaseTag)
377378
return "", err
378379
}
379-
newestBranch := strings.Split(strings.ReplaceAll(filteredBranchList, "\r\n", "\n"), "\n")
380-
split := strings.Split(newestBranch[0], "-")
380+
newestTag := strings.Split(strings.ReplaceAll(filteredTagList, "\r\n", "\n"), "\n")
381+
split := strings.Split(newestTag[0], "/")
381382
latestTag = split[len(split)-1]
382383
if err != nil {
383-
_ = fmt.Errorf("error getting latest tag for %s", releaseBranch)
384+
_ = fmt.Errorf("error getting latest tag for %s", releaseTag)
384385
}
385386

386387
return latestTag, nil
@@ -389,3 +390,13 @@ func (gr *Runner) GetLatestTag(releaseBranch string) (string, error) {
389390
func (gr *Runner) GetMainBranch() string {
390391
return string(mainBranch)
391392
}
393+
394+
func (gr *Runner) GetCurrentVersionFromHead() string {
395+
currentBranchName, err := gr.run(noHarmDone, "rev-parse", "--abbrev-ref", "HEAD")
396+
if err != nil {
397+
_ = fmt.Errorf("error getting current version")
398+
}
399+
// Assuming release branch has this format: release-path/to/module-vX.Y.Z
400+
splitBranchName := strings.Split(currentBranchName, "-")
401+
return string(splitBranchName[len(splitBranchName)-1])
402+
}

cmd/gorepomod/internal/repo/manager.go

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package repo
66
import (
77
"fmt"
88
"strconv"
9+
"strings"
910

1011
"sigs.k8s.io/kustomize/cmd/gorepomod/internal/edit"
1112
"sigs.k8s.io/kustomize/cmd/gorepomod/internal/git"
@@ -83,8 +84,8 @@ func (mgr *Manager) List() error {
8384
// Auto-update local tags
8485
gr := git.NewQuiet(mgr.AbsPath(), false, false)
8586
for _, module := range mgr.modules {
86-
releaseBranch := fmt.Sprintf("release-%s", module.ShortName())
87-
_, err := gr.GetLatestTag(releaseBranch)
87+
releaseTag := string(module.ShortName())
88+
_, err := gr.GetLatestTag(releaseTag)
8889
if err != nil {
8990
return fmt.Errorf("failed getting latest tags for %s", module)
9091
}
@@ -141,7 +142,18 @@ func (mgr *Manager) Release(
141142
target.ShortName(), reps)
142143
}
143144

144-
newVersion := target.VersionLocal().Bump(bump)
145+
gr := git.NewLoud(mgr.AbsPath(), doIt, localFlag)
146+
147+
newVersionString := strings.Split(gr.GetCurrentVersionFromHead(), "/")
148+
149+
if len(newVersionString) == 0 {
150+
return fmt.Errorf("error getting version from remote")
151+
}
152+
153+
newVersion, err := semver.Parse(newVersionString[1])
154+
if err != nil {
155+
return fmt.Errorf("error parsing version string: \"%s\"", newVersionString)
156+
}
145157

146158
if newVersion.Equals(target.VersionRemote()) {
147159
return fmt.Errorf(
@@ -153,13 +165,11 @@ func (mgr *Manager) Release(
153165
newVersion, target.VersionRemote())
154166
}
155167

156-
gr := git.NewLoud(mgr.AbsPath(), doIt, localFlag)
157-
158168
relBranch, relTag := determineBranchAndTag(target, newVersion)
159169

160170
fmt.Printf(
161-
"Releasing %s, stepping from %s to %s\n",
162-
target.ShortName(), target.VersionLocal(), newVersion)
171+
"Releasing %s, with version %s\n",
172+
target.ShortName(), newVersion)
163173

164174
if err := gr.AssureCleanWorkspace(); err != nil {
165175
return err
@@ -176,15 +186,6 @@ func (mgr *Manager) Release(
176186
if err := gr.AssureCleanWorkspace(); err != nil {
177187
return err
178188
}
179-
if err := gr.CheckoutReleaseBranch(mgr.remoteName, relBranch); err != nil {
180-
return err
181-
}
182-
if err := gr.MergeFromRemoteMain(mgr.remoteName); err != nil {
183-
return err
184-
}
185-
if err := gr.PushBranchToRemote(mgr.remoteName, relBranch); err != nil {
186-
return err
187-
}
188189
if err := gr.CreateLocalReleaseTag(relTag, relBranch); err != nil {
189190
return err
190191
}

cmd/gorepomod/internal/semver/semver.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ func (v Versions) Less(i, j int) bool { return v[j].LessThan(v[i]) }
3838
func (v Versions) Swap(i, j int) { v[i], v[j] = v[j], v[i] }
3939

4040
func Parse(raw string) (SemVer, error) {
41+
raw = strings.Trim(raw, "\r\n")
4142
if len(raw) < 6 {
4243
// e.g. minimal length is 6, e.g. "v1.2.3"
4344
return zero, fmt.Errorf("%q too short to be a version", raw)

cmd/gorepomod/main.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,9 @@ func actualMain() error {
8383

8484
if v.IsZero() {
8585
// Always use latest tag while does not removing manual usage capability
86-
releaseBranch := fmt.Sprintf("release-%s", targetModule.ShortName())
87-
fmt.Printf("new version not specified, fall back to latest version according to release branch: %s-*\n", releaseBranch)
88-
latest, err := gr.GetLatestTag(releaseBranch)
86+
releaseTag := string(targetModule.ShortName())
87+
fmt.Printf("new version not specified, fall back to latest version according to release tag: %s/*\n", releaseTag)
88+
latest, err := gr.GetLatestTag(releaseTag)
8989
if err != nil {
9090
v = targetModule.VersionLocal()
9191
err = mgr.Pin(args.DoIt(), targetModule, v)
@@ -94,6 +94,7 @@ func actualMain() error {
9494
}
9595
return nil
9696
}
97+
fmt.Printf("setting release tag to %s ...\n", latest)
9798
v, err = semver.Parse(latest)
9899
if err != nil {
99100
v = targetModule.VersionLocal()

cmd/gorepomod/usage.go

Lines changed: 5 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

go.work.sum

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -500,13 +500,12 @@ golang.org/x/exp v0.0.0-20230905200255-921286631fa9/go.mod h1:S2oDrQGGwySpoQPVqR
500500
golang.org/x/image v0.0.0-20190802002840-cff245a6509b h1:+qEpEAPhDZ1o0x3tHzZTQDArnOixOzGD9HUJfcg0mb4=
501501
golang.org/x/lint v0.0.0-20200302205851-738671d3881b h1:Wh+f8QHJXR411sJR8/vRBTZ7YapZaRvUcLFFJhusH0k=
502502
golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028 h1:4+4C/Iv2U4fMZBiMCc98MG1In4gJY5YRhtpDNeDeHWs=
503-
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
504503
golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
504+
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
505505
golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
506506
golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8=
507507
golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE=
508508
golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
509-
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
510509
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
511510
golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA=
512511
golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI=
@@ -522,12 +521,10 @@ golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
522521
golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
523522
golang.org/x/sys v0.0.0-20190922100055-0a153f010e69/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
524523
golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
525-
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
526524
golang.org/x/sys v0.0.0-20210303074136-134d130e1a04/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
527525
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
528526
golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
529527
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
530-
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
531528
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
532529
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
533530
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -537,13 +534,11 @@ golang.org/x/telemetry v0.0.0-20240208230135-b75ee8823808/go.mod h1:KG1lNk5ZFNss
537534
golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
538535
golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
539536
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
540-
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
541537
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
542538
golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
543539
golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
544540
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
545541
golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
546-
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
547542
golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s=
548543
golang.org/x/tools v0.12.0/go.mod h1:Sc0INKfu04TlqNoRA1hgpFZbhYXHPr4V5DzpSBTPqQM=
549544
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=

0 commit comments

Comments
 (0)