Skip to content

Commit d7ad1da

Browse files
meta: Use new go-xmpp
1 parent 5efeb2c commit d7ad1da

5 files changed

Lines changed: 50 additions & 47 deletions

File tree

.github/workflows/development.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- uses: actions/checkout@v5
2020
- uses: actions/setup-go@v6
2121
with:
22-
go-version: 1.22.x
22+
go-version: 1.24.x
2323
- name: golangci-lint
2424
uses: golangci/golangci-lint-action@v8
2525
with:
@@ -30,8 +30,8 @@ jobs:
3030
test:
3131
strategy:
3232
matrix:
33-
# Test on latest release and v1.22
34-
go-version: [1.22.x, stable]
33+
# Test on latest release and v1.24
34+
go-version: [1.24.x, stable]
3535
runs-on: ubuntu-latest
3636
steps:
3737
- name: Install Go

bridge/xmpp/handler.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package bxmpp
33
import (
44
"github.com/42wim/matterbridge/bridge/config"
55
"github.com/42wim/matterbridge/bridge/helper"
6-
"github.com/matterbridge/go-xmpp"
6+
"github.com/xmppo/go-xmpp"
77
)
88

99
// handleDownloadAvatar downloads the avatar of userid from channel

bridge/xmpp/xmpp.go

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import (
1515
"github.com/42wim/matterbridge/bridge/config"
1616
"github.com/42wim/matterbridge/bridge/helper"
1717
"github.com/jpillora/backoff"
18-
"github.com/matterbridge/go-xmpp"
18+
"github.com/xmppo/go-xmpp"
1919
"github.com/rs/xid"
2020
)
2121

@@ -62,7 +62,10 @@ func (b *Bxmpp) JoinChannel(channel config.ChannelInfo) error {
6262
b.Log.Debugf("using key %s for channel %s", channel.Options.Key, channel.Name)
6363
b.xc.JoinProtectedMUC(channel.Name+"@"+b.GetString("Muc"), b.GetString("Nick"), channel.Options.Key, xmpp.NoHistory, 0, nil)
6464
} else {
65-
b.xc.JoinMUCNoHistory(channel.Name+"@"+b.GetString("Muc"), b.GetString("Nick"))
65+
// b.xc.JoinMUCNoHistory(channel.Name+"@"+b.GetString("Muc"), b.GetString("Nick"))
66+
// TODO: this creates the room if it doesn't exist yet
67+
// should it be the default?
68+
b.xc.JoinOrCreateMUCNoHistoryDoNotUseOutsideTests(channel.Name+"@"+b.GetString("Muc"), b.GetString("Nick"))
6669
}
6770
return nil
6871
}
@@ -125,22 +128,17 @@ func (b *Bxmpp) Send(msg config.Message) (string, error) {
125128
}
126129

127130
// Post normal message.
128-
var msgReplaceID string
129-
msgID := xid.New().String()
130-
if msg.ID != "" {
131-
msgReplaceID = msg.ID
132-
}
133131
b.Log.Debugf("=> Sending message %#v", msg)
134132
if _, err := b.xc.Send(xmpp.Chat{
135133
Type: "groupchat",
136134
Remote: msg.Channel + "@" + b.GetString("Muc"),
137135
Text: msg.Username + msg.Text,
138-
ID: msgID,
139-
ReplaceID: msgReplaceID,
140136
}); err != nil {
141137
return "", err
142138
}
143-
return msgID, nil
139+
// TODO: Messages IDs are unimplemented for now
140+
// This is just a dummy value for matterbridge
141+
return xid.New().String(), nil
144142
}
145143

146144
func (b *Bxmpp) postSlackCompatibleWebhook(msg config.Message) error {
@@ -186,8 +184,6 @@ func (b *Bxmpp) createXMPP() error {
186184
InsecureSkipVerify: b.GetBool("SkipTLSVerify"), // nolint: gosec
187185
}
188186

189-
xmpp.DebugWriter = b.Log.Writer()
190-
191187
options := xmpp.Options{
192188
Host: b.GetString("Server"),
193189
User: b.GetString("Jid"),
@@ -201,6 +197,7 @@ func (b *Bxmpp) createXMPP() error {
201197
StatusMessage: "",
202198
Resource: "",
203199
InsecureAllowUnencryptedAuth: b.GetBool("NoTLS"),
200+
DebugWriter: b.Log.Writer(),
204201
}
205202
var err error
206203
b.xc, err = options.NewClient()
@@ -317,18 +314,21 @@ func (b *Bxmpp) handleXMPP() error {
317314
avatar = getAvatar(b.avatarMap, v.Remote, b.General)
318315
}
319316

320-
msgID := v.ID
321-
if v.ReplaceID != "" {
322-
msgID = v.ReplaceID
323-
}
317+
// TODO: reimplement replace messages
318+
// We need to check the full JID with the previous full JID
319+
// msgID := v.ID
320+
// if v.ReplaceID != "" {
321+
// msgID = v.ReplaceID
322+
// }
324323
rmsg := config.Message{
325324
Username: b.parseNick(v.Remote),
326325
Text: v.Text,
327326
Channel: b.parseChannel(v.Remote),
328327
Account: b.Account,
329328
Avatar: avatar,
330329
UserID: v.Remote,
331-
ID: msgID,
330+
// TODO: this is just a dummy value for the moment
331+
ID: v.StanzaID.ID,
332332
Event: event,
333333
}
334334

@@ -440,7 +440,8 @@ func (b *Bxmpp) skipMessage(message xmpp.Chat) bool {
440440
}
441441

442442
// Ignore messages posted by our webhook
443-
if b.GetString("WebhookURL") != "" && strings.Contains(message.ID, "webhookbot") {
443+
// TODO: am i looking at the proper ID?
444+
if b.GetString("WebhookURL") != "" && strings.Contains(message.OriginID, "webhookbot") {
444445
return true
445446
}
446447

go.mod

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ require (
2121
github.com/labstack/echo/v4 v4.12.0
2222
github.com/lrstanley/girc v0.0.0-20240823210506-80555f2adb03
2323
github.com/matterbridge/Rocket.Chat.Go.SDK v0.0.0-20211016222428-79310a412696
24-
github.com/matterbridge/go-xmpp v0.0.0-20240523230155-7154bfeb76e8
2524
github.com/matterbridge/gomatrix v0.0.0-20220411225302-271e5088ea27
2625
github.com/matterbridge/gozulipbot v0.0.0-20211023205727-a19d6c1f3b75
2726
github.com/matterbridge/logrus-prefixed-formatter v0.5.3-0.20200523233437-d971309a77ba
@@ -44,12 +43,13 @@ require (
4443
github.com/stretchr/testify v1.9.0
4544
github.com/vincent-petithory/dataurl v1.0.0
4645
github.com/writeas/go-strip-markdown v2.0.1+incompatible
46+
github.com/xmppo/go-xmpp v0.2.18
4747
github.com/yaegashi/msgraph.go v0.1.4
4848
github.com/zfjagann/golang-ring v0.0.0-20220330170733-19bcea1b6289
4949
go.mau.fi/whatsmeow v0.0.0-20240821142752-3d63c6fcc1a7
5050
golang.org/x/image v0.19.0
5151
golang.org/x/oauth2 v0.22.0
52-
golang.org/x/text v0.17.0
52+
golang.org/x/text v0.30.0
5353
gomod.garykim.dev/nc-talk v0.3.0
5454
google.golang.org/protobuf v1.34.2
5555
layeh.com/gumble v0.0.0-20221205141517-d1df60a3cc14
@@ -127,11 +127,11 @@ require (
127127
go.mau.fi/libsignal v0.1.1 // indirect
128128
go.mau.fi/util v0.6.0 // indirect
129129
go.uber.org/multierr v1.11.0 // indirect
130-
golang.org/x/crypto v0.25.0 // indirect
130+
golang.org/x/crypto v0.43.0 // indirect
131131
golang.org/x/exp v0.0.0-20240707233637-46b078467d37 // indirect
132-
golang.org/x/net v0.27.0 // indirect
133-
golang.org/x/sys v0.22.0 // indirect
134-
golang.org/x/term v0.22.0 // indirect
132+
golang.org/x/net v0.46.0 // indirect
133+
golang.org/x/sys v0.37.0 // indirect
134+
golang.org/x/term v0.36.0 // indirect
135135
golang.org/x/time v0.5.0 // indirect
136136
google.golang.org/genproto/googleapis/rpc v0.0.0-20240722135656-d784300faade // indirect
137137
google.golang.org/grpc v1.65.0 // indirect
@@ -150,4 +150,6 @@ require (
150150

151151
//replace github.com/matrix-org/gomatrix => github.com/matterbridge/gomatrix v0.0.0-20220205235239-607eb9ee6419
152152

153-
go 1.22.0
153+
go 1.24.0
154+
155+
replace github.com/xmppo/go-xmpp => github.com/selfhoster1312/go-xmpp v0.0.0-20251024113444-0c0b1c2826fa

go.sum

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -205,8 +205,6 @@ github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3v
205205
github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
206206
github.com/matterbridge/Rocket.Chat.Go.SDK v0.0.0-20211016222428-79310a412696 h1:pmPKkN3RJM9wVMZidR99epzK0+gatQiqVtvP1FacZcQ=
207207
github.com/matterbridge/Rocket.Chat.Go.SDK v0.0.0-20211016222428-79310a412696/go.mod h1:c6MxwqHD+0HvtAJjsHMIdPCiAwGiQwPRPTp69ACMg8A=
208-
github.com/matterbridge/go-xmpp v0.0.0-20240523230155-7154bfeb76e8 h1:UkpezVlW6/j4qB2FSsz4na2FfZUbIDMAblpjw0Cgqcg=
209-
github.com/matterbridge/go-xmpp v0.0.0-20240523230155-7154bfeb76e8/go.mod h1:Vl95jJ8rOBCHUR++A1n6nM5sMk1oHcwInsaxRTR9NM4=
210208
github.com/matterbridge/gomatrix v0.0.0-20220411225302-271e5088ea27 h1:9XSppnbvvReVom+wphkeF4lbhuT6vCYIdyzpwFtW89c=
211209
github.com/matterbridge/gomatrix v0.0.0-20220411225302-271e5088ea27/go.mod h1:/x38AoZf70fK9yZ5gs3BNCaF7/J4QEo4ZpwtLjX95eQ=
212210
github.com/matterbridge/gozulipbot v0.0.0-20211023205727-a19d6c1f3b75 h1:GslZKF7lW7oSisycGLpxPO+TnKJuA4VZuTWIfYZrClc=
@@ -325,6 +323,8 @@ github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6g
325323
github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=
326324
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d h1:hrujxIzL1woJ7AwssoOcM/tq5JjjG2yYOc8odClEiXA=
327325
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d/go.mod h1:uugorj2VCxiV1x+LzaIdVa9b4S4qGAcH6cbhh4qVxOU=
326+
github.com/selfhoster1312/go-xmpp v0.0.0-20251024113444-0c0b1c2826fa h1:jyahgPWWt3+k+BCisRNlHdCcxY/cRlZqhVd52A87ABs=
327+
github.com/selfhoster1312/go-xmpp v0.0.0-20251024113444-0c0b1c2826fa/go.mod h1:hLa9WAf0VRpSVguhme06Df+7mIQ6enCEG8udUNYcqX4=
328328
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
329329
github.com/shazow/rateio v0.0.0-20200113175441-4461efc8bdc4 h1:zwQ1HBo5FYwn1ksMd19qBCKO8JAWE9wmHivEpkw/DvE=
330330
github.com/shazow/rateio v0.0.0-20200113175441-4461efc8bdc4/go.mod h1:vt2jWY/3Qw1bIzle5thrJWucsLuuX9iUNnp20CqCciI=
@@ -447,8 +447,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
447447
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
448448
golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
449449
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
450-
golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30=
451-
golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M=
450+
golang.org/x/crypto v0.43.0 h1:dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04=
451+
golang.org/x/crypto v0.43.0/go.mod h1:BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0=
452452
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
453453
golang.org/x/exp v0.0.0-20240707233637-46b078467d37 h1:uLDX+AfeFCct3a2C7uIWBKMJIR3CJMhcgfrUAqjRK6w=
454454
golang.org/x/exp v0.0.0-20240707233637-46b078467d37/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY=
@@ -460,8 +460,8 @@ golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvx
460460
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
461461
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
462462
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
463-
golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8=
464-
golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
463+
golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U=
464+
golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI=
465465
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
466466
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
467467
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -478,8 +478,8 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL
478478
golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
479479
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
480480
golang.org/x/net v0.0.0-20220520000938-2e3eb7b945c2/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
481-
golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys=
482-
golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE=
481+
golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
482+
golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
483483
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
484484
golang.org/x/oauth2 v0.0.0-20181017192945-9dcd33a902f4/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
485485
golang.org/x/oauth2 v0.0.0-20181203162652-d668ce993890/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
@@ -495,8 +495,8 @@ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJ
495495
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
496496
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
497497
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
498-
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
499-
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
498+
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
499+
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
500500
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
501501
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
502502
golang.org/x/sys v0.0.0-20181029174526-d69651ed3497/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -519,20 +519,20 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc
519519
golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
520520
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
521521
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
522-
golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI=
523-
golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
522+
golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
523+
golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
524524
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
525525
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
526-
golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk=
527-
golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4=
526+
golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q=
527+
golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss=
528528
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
529529
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
530530
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
531531
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
532532
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
533533
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
534-
golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
535-
golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
534+
golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k=
535+
golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM=
536536
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
537537
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
538538
golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=
@@ -547,8 +547,8 @@ golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBn
547547
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
548548
golang.org/x/tools v0.0.0-20200529172331-a64b76657301/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
549549
golang.org/x/tools v0.0.0-20200731060945-b5fad4ed8dd6/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
550-
golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg=
551-
golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI=
550+
golang.org/x/tools v0.37.0 h1:DVSRzp7FwePZW356yEAChSdNcQo6Nsp+fex1SUW09lE=
551+
golang.org/x/tools v0.37.0/go.mod h1:MBN5QPQtLMHVdvsbtarmTNukZDdgwdwlO5qGacAzF0w=
552552
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
553553
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
554554
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=

0 commit comments

Comments
 (0)