Skip to content

Commit e1601f3

Browse files
Merge branch 'reprovide-sweep' into reprovide-sweep-enabled
2 parents cfb6e22 + 35bffb8 commit e1601f3

File tree

7 files changed

+83
-84
lines changed

7 files changed

+83
-84
lines changed

core/node/provider.go

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ import (
2525
dht_pb "github.com/libp2p/go-libp2p-kad-dht/pb"
2626
dhtprovider "github.com/libp2p/go-libp2p-kad-dht/provider"
2727
"github.com/libp2p/go-libp2p-kad-dht/provider/buffered"
28-
rds "github.com/libp2p/go-libp2p-kad-dht/provider/datastore"
2928
ddhtprovider "github.com/libp2p/go-libp2p-kad-dht/provider/dual"
29+
"github.com/libp2p/go-libp2p-kad-dht/provider/keystore"
3030
routinghelpers "github.com/libp2p/go-libp2p-routing-helpers"
3131
"github.com/libp2p/go-libp2p/core/host"
3232
peer "github.com/libp2p/go-libp2p/core/peer"
@@ -85,7 +85,7 @@ type DHTProvider interface {
8585
// The keys are not deleted from the keystore, so they will continue to be
8686
// reprovided as scheduled.
8787
Clear() int
88-
// RefreshSchedule scans the KeyStore for any keys that are not currently
88+
// RefreshSchedule scans the Keystore for any keys that are not currently
8989
// scheduled for reproviding. If such keys are found, it schedules their
9090
// associated keyspace region to be reprovided.
9191
//
@@ -303,12 +303,12 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
303303
DHT routing.Routing `name:"dhtc"`
304304
Repo repo.Repo
305305
}
306-
sweepingReprovider := fx.Provide(func(in providerInput) (DHTProvider, *rds.ResettableKeyStore, error) {
306+
sweepingReprovider := fx.Provide(func(in providerInput) (DHTProvider, *keystore.ResettableKeystore, error) {
307307
ds := in.Repo.Datastore()
308-
keyStore, err := rds.NewResettableKeyStore(ds,
309-
rds.WithPrefixBits(16),
310-
rds.WithDatastorePrefix("/provider/keystore"),
311-
rds.WithBatchSize(int(cfg.Reprovider.Sweep.KeyStoreBatchSize.WithDefault(config.DefaultReproviderSweepKeyStoreBatchSize))),
308+
ks, err := keystore.NewResettableKeystore(ds,
309+
keystore.WithPrefixBits(16),
310+
keystore.WithDatastorePath("/provider/keystore"),
311+
keystore.WithBatchSize(int(cfg.Reprovider.Sweep.KeyStoreBatchSize.WithDefault(config.DefaultReproviderSweepKeyStoreBatchSize))),
312312
)
313313
if err != nil {
314314
return &NoopProvider{}, nil, err
@@ -329,7 +329,7 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
329329
case *dual.DHT:
330330
if inDht != nil {
331331
prov, err := ddhtprovider.New(inDht,
332-
ddhtprovider.WithKeyStore(keyStore),
332+
ddhtprovider.WithKeystore(ks),
333333

334334
ddhtprovider.WithReprovideInterval(reprovideInterval),
335335
ddhtprovider.WithMaxReprovideDelay(time.Hour),
@@ -344,7 +344,7 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
344344
if err != nil {
345345
return nil, nil, err
346346
}
347-
return buffered.New(prov, ds, bufferedProviderOpts...), keyStore, nil
347+
return buffered.New(prov, ds, bufferedProviderOpts...), ks, nil
348348
}
349349
case *fullrt.FullRT:
350350
if inDht != nil {
@@ -362,7 +362,7 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
362362
selfAddrsFunc = func() []ma.Multiaddr { return impl.Host().Addrs() }
363363
}
364364
opts := []dhtprovider.Option{
365-
dhtprovider.WithKeyStore(keyStore),
365+
dhtprovider.WithKeystore(ks),
366366
dhtprovider.WithPeerID(impl.Host().ID()),
367367
dhtprovider.WithRouter(impl),
368368
dhtprovider.WithMessageSender(impl.MessageSender()),
@@ -387,27 +387,27 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
387387
if err != nil {
388388
return &NoopProvider{}, nil, err
389389
}
390-
return buffered.New(prov, ds, bufferedProviderOpts...), keyStore, nil
390+
return buffered.New(prov, ds, bufferedProviderOpts...), ks, nil
391391
})
392392

393393
type keystoreInput struct {
394394
fx.In
395395
Provider DHTProvider
396-
KeyStore *rds.ResettableKeyStore
396+
Keystore *keystore.ResettableKeystore
397397
KeyProvider provider.KeyChanFunc
398398
}
399-
initKeyStore := fx.Invoke(func(lc fx.Lifecycle, in keystoreInput) {
399+
initKeystore := fx.Invoke(func(lc fx.Lifecycle, in keystoreInput) {
400400
var (
401401
cancel context.CancelFunc
402402
done = make(chan struct{})
403403
)
404404

405-
syncKeyStore := func(ctx context.Context) error {
405+
syncKeystore := func(ctx context.Context) error {
406406
kcf, err := in.KeyProvider(ctx)
407407
if err != nil {
408408
return err
409409
}
410-
if err := in.KeyStore.ResetCids(ctx, kcf); err != nil {
410+
if err := in.Keystore.ResetCids(ctx, kcf); err != nil {
411411
return err
412412
}
413413
if err := in.Provider.RefreshSchedule(); err != nil {
@@ -418,15 +418,15 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
418418

419419
lc.Append(fx.Hook{
420420
OnStart: func(ctx context.Context) error {
421-
if in.Provider == nil || in.KeyStore == nil {
421+
if in.Provider == nil || in.Keystore == nil {
422422
return nil
423423
}
424424
// Set the KeyProvider as a garbage collection function for the
425-
// keystore. Periodically purge the KeyStore from all its keys and
425+
// keystore. Periodically purge the Keystore from all its keys and
426426
// replace them with the keys that needs to be reprovided, coming from
427427
// the KeyChanFunc. So far, this is the less worse way to remove CIDs
428428
// that shouldn't be reprovided from the provider's state.
429-
if err := syncKeyStore(ctx); err != nil {
429+
if err := syncKeystore(ctx); err != nil {
430430
return err
431431
}
432432

@@ -443,7 +443,7 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
443443
case <-gcCtx.Done():
444444
return
445445
case <-ticker.C:
446-
if err := syncKeyStore(gcCtx); err != nil {
446+
if err := syncKeystore(gcCtx); err != nil {
447447
logger.Errorw("provider keystore sync", "err", err)
448448
}
449449
}
@@ -452,12 +452,11 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
452452
return nil
453453
},
454454
OnStop: func(ctx context.Context) error {
455-
if in.Provider == nil || in.KeyStore == nil {
455+
if in.Provider == nil || in.Keystore == nil {
456456
return nil
457457
}
458-
459458
if cancel != nil {
460-
// Cancel KeyStore garbage collection loop
459+
// Cancel Keystore garbage collection loop
461460
cancel()
462461
}
463462
select {
@@ -466,15 +465,15 @@ func SweepingProviderOpt(cfg *config.Config) fx.Option {
466465
return ctx.Err()
467466
}
468467

469-
// KeyStore state isn't be persisted across restarts.
470-
return in.KeyStore.Empty(ctx)
468+
// Keystore state isn't be persisted across restarts.
469+
return in.Keystore.Empty(ctx)
471470
},
472471
})
473472
})
474473

475474
return fx.Options(
476475
sweepingReprovider,
477-
initKeyStore,
476+
initKeystore,
478477
)
479478
}
480479

docs/examples/kubo-as-a-library/go.mod

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,13 +76,13 @@ require (
7676
github.com/ipfs/go-block-format v0.2.2 // indirect
7777
github.com/ipfs/go-cid v0.5.0 // indirect
7878
github.com/ipfs/go-cidutil v0.1.0 // indirect
79-
github.com/ipfs/go-datastore v0.8.3 // indirect
79+
github.com/ipfs/go-datastore v0.8.4 // indirect
8080
github.com/ipfs/go-ds-badger v0.3.4 // indirect
8181
github.com/ipfs/go-ds-flatfs v0.5.5 // indirect
8282
github.com/ipfs/go-ds-leveldb v0.5.2 // indirect
8383
github.com/ipfs/go-ds-measure v0.2.2 // indirect
8484
github.com/ipfs/go-ds-pebble v0.5.1 // indirect
85-
github.com/ipfs/go-dsqueue v0.0.4 // indirect
85+
github.com/ipfs/go-dsqueue v0.0.5 // indirect
8686
github.com/ipfs/go-fs-lock v0.1.1 // indirect
8787
github.com/ipfs/go-ipfs-ds-help v1.1.1 // indirect
8888
github.com/ipfs/go-ipfs-pq v0.0.3 // indirect
@@ -113,7 +113,7 @@ require (
113113
github.com/libp2p/go-doh-resolver v0.5.0 // indirect
114114
github.com/libp2p/go-flow-metrics v0.3.0 // indirect
115115
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
116-
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250914155548-e10840aa8003 // indirect
116+
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250917085830-a5b768353fc2 // indirect
117117
github.com/libp2p/go-libp2p-kbucket v0.8.0 // indirect
118118
github.com/libp2p/go-libp2p-pubsub v0.14.2 // indirect
119119
github.com/libp2p/go-libp2p-pubsub-router v0.6.0 // indirect
@@ -191,15 +191,15 @@ require (
191191
go.opencensus.io v0.24.0 // indirect
192192
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
193193
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 // indirect
194-
go.opentelemetry.io/otel v1.37.0 // indirect
194+
go.opentelemetry.io/otel v1.38.0 // indirect
195195
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0 // indirect
196196
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.37.0 // indirect
197197
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0 // indirect
198198
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.37.0 // indirect
199199
go.opentelemetry.io/otel/exporters/zipkin v1.37.0 // indirect
200-
go.opentelemetry.io/otel/metric v1.37.0 // indirect
200+
go.opentelemetry.io/otel/metric v1.38.0 // indirect
201201
go.opentelemetry.io/otel/sdk v1.37.0 // indirect
202-
go.opentelemetry.io/otel/trace v1.37.0 // indirect
202+
go.opentelemetry.io/otel/trace v1.38.0 // indirect
203203
go.opentelemetry.io/proto/otlp v1.7.0 // indirect
204204
go.uber.org/dig v1.19.0 // indirect
205205
go.uber.org/fx v1.24.0 // indirect

docs/examples/kubo-as-a-library/go.sum

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -305,8 +305,8 @@ github.com/ipfs/go-cidutil v0.1.0 h1:RW5hO7Vcf16dplUU60Hs0AKDkQAVPVplr7lk97CFL+Q
305305
github.com/ipfs/go-cidutil v0.1.0/go.mod h1:e7OEVBMIv9JaOxt9zaGEmAoSlXW9jdFZ5lP/0PwcfpA=
306306
github.com/ipfs/go-datastore v0.1.0/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE=
307307
github.com/ipfs/go-datastore v0.1.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw=
308-
github.com/ipfs/go-datastore v0.8.3 h1:z391GsQyGKUIUof2tPoaZVeDknbt7fNHs6Gqjcw5Jo4=
309-
github.com/ipfs/go-datastore v0.8.3/go.mod h1:raxQ/CreIy9L6MxT71ItfMX12/ASN6EhXJoUFjICQ2M=
308+
github.com/ipfs/go-datastore v0.8.4 h1:vXEsd76T3KIOSKXizjhmS3ICGMl+oOSjpLSxE3v8/Wc=
309+
github.com/ipfs/go-datastore v0.8.4/go.mod h1:uT77w/XEGrvJWwHgdrMr8bqCN6ZTW9gzmi+3uK+ouHg=
310310
github.com/ipfs/go-detect-race v0.0.1 h1:qX/xay2W3E4Q1U7d9lNs1sU9nvguX0a7319XbyQ6cOk=
311311
github.com/ipfs/go-detect-race v0.0.1/go.mod h1:8BNT7shDZPo99Q74BpGMK+4D8Mn4j46UU0LZ723meps=
312312
github.com/ipfs/go-ds-badger v0.0.7/go.mod h1:qt0/fWzZDoPW6jpQeqUjR5kBfhDNB65jd9YlmAvpQBk=
@@ -321,8 +321,8 @@ github.com/ipfs/go-ds-measure v0.2.2 h1:4kwvBGbbSXNYe4ANlg7qTIYoZU6mNlqzQHdVqICk
321321
github.com/ipfs/go-ds-measure v0.2.2/go.mod h1:b/87ak0jMgH9Ylt7oH0+XGy4P8jHx9KG09Qz+pOeTIs=
322322
github.com/ipfs/go-ds-pebble v0.5.1 h1:p0FAE0zw9J/3T1VkGB9s98jWmfKmw2t0iEwfMUv8iSQ=
323323
github.com/ipfs/go-ds-pebble v0.5.1/go.mod h1:LsmQx4w+0o9znl4hTxYo1Y2lnBTzNCwc4kNpD3wWXM0=
324-
github.com/ipfs/go-dsqueue v0.0.4 h1:tesq26hKRYPG72Tu9kZKsbsLWp1KBfAxWNQlMyU17tk=
325-
github.com/ipfs/go-dsqueue v0.0.4/go.mod h1:K68ng9BVl+gLr8fqCJKaoXnXqo6MzQ6nV0MhZZFEwg4=
324+
github.com/ipfs/go-dsqueue v0.0.5 h1:TUOk15TlCJ/NKV8Yk2W5wgkEjDa44Nem7a7FGIjsMNU=
325+
github.com/ipfs/go-dsqueue v0.0.5/go.mod h1:i/jAlpZjBbQJLioN+XKbFgnd+u9eAhGZs9IrqIzTd9g=
326326
github.com/ipfs/go-fs-lock v0.1.1 h1:TecsP/Uc7WqYYatasreZQiP9EGRy4ZnKoG4yXxR33nw=
327327
github.com/ipfs/go-fs-lock v0.1.1/go.mod h1:2goSXMCw7QfscHmSe09oXiR34DQeUdm+ei+dhonqly0=
328328
github.com/ipfs/go-ipfs-blockstore v1.3.1 h1:cEI9ci7V0sRNivqaOr0elDsamxXFxJMMMy7PTTDQNsQ=
@@ -430,8 +430,8 @@ github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl9
430430
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
431431
github.com/libp2p/go-libp2p-core v0.2.4/go.mod h1:STh4fdfa5vDYr0/SzYYeqnt+E6KfEV5VxfIrm0bcI0g=
432432
github.com/libp2p/go-libp2p-core v0.3.0/go.mod h1:ACp3DmS3/N64c2jDzcV429ukDpicbL6+TrrxANBjPGw=
433-
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250914155548-e10840aa8003 h1:1zcose1NwRJrdT3DLUglCPtD2XKzr2J2JXg02hu4AmU=
434-
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250914155548-e10840aa8003/go.mod h1:FWuPln3Q0yQBkDbdHULiaMwTcaS8CoikO4Wbt84pPXk=
433+
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250917085830-a5b768353fc2 h1:LO6lIozMzXsKwwvZFH+sYXsZ7HI22Rm4KA869F1zgso=
434+
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250917085830-a5b768353fc2/go.mod h1:HbI1rUTFF87WHklzKTGZC8Oys9+1rkKyqvmSZcAW55Y=
435435
github.com/libp2p/go-libp2p-kbucket v0.3.1/go.mod h1:oyjT5O7tS9CQurok++ERgc46YLwEpuGoFq9ubvoUOio=
436436
github.com/libp2p/go-libp2p-kbucket v0.8.0 h1:QAK7RzKJpYe+EuSEATAaaHYMYLkPDGC18m9jxPLnU8s=
437437
github.com/libp2p/go-libp2p-kbucket v0.8.0/go.mod h1:JMlxqcEyKwO6ox716eyC0hmiduSWZZl6JY93mGaaqc4=
@@ -718,8 +718,8 @@ github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o
718718
github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
719719
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
720720
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
721-
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
722-
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
721+
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
722+
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
723723
github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ=
724724
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d h1:vfofYNRScrDdvS342BElfbETmL1Aiz3i2t0zfRj16Hs=
725725
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d/go.mod h1:RRCYJbIwD5jmqPI9XoAFR0OcDxqUctll6zUj/+B4S48=
@@ -777,8 +777,8 @@ go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJyS
777777
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
778778
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 h1:Hf9xI/XLML9ElpiHVDNwvqI0hIFlzV8dgIr35kV1kRU=
779779
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0/go.mod h1:NfchwuyNoMcZ5MLHwPrODwUF1HWCXWrL31s8gSAdIKY=
780-
go.opentelemetry.io/otel v1.37.0 h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ=
781-
go.opentelemetry.io/otel v1.37.0/go.mod h1:ehE/umFRLnuLa/vSccNq9oS1ErUlkkK71gMcN34UG8I=
780+
go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8=
781+
go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM=
782782
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0 h1:Ahq7pZmv87yiyn3jeFz/LekZmPLLdKejuO3NcK9MssM=
783783
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0/go.mod h1:MJTqhM0im3mRLw1i8uGHnCvUEeS7VwRyxlLC78PA18M=
784784
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.37.0 h1:EtFWSnwW9hGObjkIdmlnWSydO+Qs8OwzfzXLUPg4xOc=
@@ -789,14 +789,14 @@ go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.37.0 h1:SNhVp/9q4Go/XHB
789789
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.37.0/go.mod h1:tx8OOlGH6R4kLV67YaYO44GFXloEjGPZuMjEkaaqIp4=
790790
go.opentelemetry.io/otel/exporters/zipkin v1.37.0 h1:Z2apuaRnHEjzDAkpbWNPiksz1R0/FCIrJSjiMA43zwI=
791791
go.opentelemetry.io/otel/exporters/zipkin v1.37.0/go.mod h1:ofGu/7fG+bpmjZoiPUUmYDJ4vXWxMT57HmGoegx49uw=
792-
go.opentelemetry.io/otel/metric v1.37.0 h1:mvwbQS5m0tbmqML4NqK+e3aDiO02vsf/WgbsdpcPoZE=
793-
go.opentelemetry.io/otel/metric v1.37.0/go.mod h1:04wGrZurHYKOc+RKeye86GwKiTb9FKm1WHtO+4EVr2E=
792+
go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA=
793+
go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI=
794794
go.opentelemetry.io/otel/sdk v1.37.0 h1:ItB0QUqnjesGRvNcmAcU0LyvkVyGJ2xftD29bWdDvKI=
795795
go.opentelemetry.io/otel/sdk v1.37.0/go.mod h1:VredYzxUvuo2q3WRcDnKDjbdvmO0sCzOvVAiY+yUkAg=
796796
go.opentelemetry.io/otel/sdk/metric v1.37.0 h1:90lI228XrB9jCMuSdA0673aubgRobVZFhbjxHHspCPc=
797797
go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps=
798-
go.opentelemetry.io/otel/trace v1.37.0 h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4=
799-
go.opentelemetry.io/otel/trace v1.37.0/go.mod h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0=
798+
go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE=
799+
go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs=
800800
go.opentelemetry.io/proto/otlp v1.7.0 h1:jX1VolD6nHuFzOYso2E73H85i92Mv8JQYk0K9vz09os=
801801
go.opentelemetry.io/proto/otlp v1.7.0/go.mod h1:fSKjH6YJ7HDlwzltzyMj036AJ3ejJLCgCSHGj4efDDo=
802802
go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE=

go.mod

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ require (
2626
github.com/ipfs/go-block-format v0.2.2
2727
github.com/ipfs/go-cid v0.5.0
2828
github.com/ipfs/go-cidutil v0.1.0
29-
github.com/ipfs/go-datastore v0.8.3
29+
github.com/ipfs/go-datastore v0.8.4
3030
github.com/ipfs/go-detect-race v0.0.1
3131
github.com/ipfs/go-ds-badger v0.3.4
3232
github.com/ipfs/go-ds-flatfs v0.5.5
@@ -53,7 +53,7 @@ require (
5353
github.com/libp2p/go-doh-resolver v0.5.0
5454
github.com/libp2p/go-libp2p v0.43.0
5555
github.com/libp2p/go-libp2p-http v0.5.0
56-
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250914155548-e10840aa8003
56+
github.com/libp2p/go-libp2p-kad-dht v0.34.1-0.20250917085830-a5b768353fc2
5757
github.com/libp2p/go-libp2p-kbucket v0.8.0
5858
github.com/libp2p/go-libp2p-pubsub v0.14.2
5959
github.com/libp2p/go-libp2p-pubsub-router v0.6.0
@@ -70,7 +70,7 @@ require (
7070
github.com/opentracing/opentracing-go v1.2.0
7171
github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58
7272
github.com/prometheus/client_golang v1.23.0
73-
github.com/stretchr/testify v1.10.0
73+
github.com/stretchr/testify v1.11.1
7474
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d
7575
github.com/tidwall/gjson v1.16.0
7676
github.com/tidwall/sjson v1.2.5
@@ -79,9 +79,9 @@ require (
7979
go.opencensus.io v0.24.0
8080
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0
8181
go.opentelemetry.io/contrib/propagators/autoprop v0.46.1
82-
go.opentelemetry.io/otel v1.37.0
82+
go.opentelemetry.io/otel v1.38.0
8383
go.opentelemetry.io/otel/sdk v1.37.0
84-
go.opentelemetry.io/otel/trace v1.37.0
84+
go.opentelemetry.io/otel/trace v1.38.0
8585
go.uber.org/dig v1.19.0
8686
go.uber.org/fx v1.24.0
8787
go.uber.org/zap v1.27.0
@@ -147,7 +147,7 @@ require (
147147
github.com/huin/goupnp v1.3.0 // indirect
148148
github.com/ipfs/bbloom v0.0.4 // indirect
149149
github.com/ipfs/go-bitfield v1.1.0 // indirect
150-
github.com/ipfs/go-dsqueue v0.0.4 // indirect
150+
github.com/ipfs/go-dsqueue v0.0.5 // indirect
151151
github.com/ipfs/go-ipfs-ds-help v1.1.1 // indirect
152152
github.com/ipfs/go-ipfs-pq v0.0.3 // indirect
153153
github.com/ipfs/go-ipfs-redirects-file v0.1.2 // indirect
@@ -245,7 +245,7 @@ require (
245245
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.37.0 // indirect
246246
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.37.0 // indirect
247247
go.opentelemetry.io/otel/exporters/zipkin v1.37.0 // indirect
248-
go.opentelemetry.io/otel/metric v1.37.0 // indirect
248+
go.opentelemetry.io/otel/metric v1.38.0 // indirect
249249
go.opentelemetry.io/proto/otlp v1.7.0 // indirect
250250
go.uber.org/mock v0.5.2 // indirect
251251
go.uber.org/multierr v1.11.0 // indirect

0 commit comments

Comments
 (0)