diff --git a/blocks/blockstoreutil/remove.go b/blocks/blockstoreutil/remove.go index ae645f6fd30..880f033656f 100644 --- a/blocks/blockstoreutil/remove.go +++ b/blocks/blockstoreutil/remove.go @@ -8,7 +8,7 @@ import ( cid "github.com/ipfs/go-cid" bs "github.com/ipfs/go-ipfs-blockstore" - "github.com/ipfs/go-ipfs-pinner" + pin "github.com/ipfs/go-ipfs-pinner" ) // RemovedBlock is used to represent the result of removing a block. @@ -40,15 +40,15 @@ func RmBlocks(ctx context.Context, blocks bs.GCBlockstore, pins pin.Pinner, cids go func() { defer close(out) - unlocker := blocks.GCLock() - defer unlocker.Unlock() + unlocker := blocks.GCLock(ctx) + defer unlocker.Unlock(ctx) stillOkay := FilterPinned(ctx, pins, out, cids) for _, c := range stillOkay { // Kept for backwards compatibility. We may want to // remove this sometime in the future. - has, err := blocks.Has(c) + has, err := blocks.Has(ctx, c) if err != nil { out <- &RemovedBlock{Hash: c.String(), Error: err.Error()} continue @@ -58,7 +58,7 @@ func RmBlocks(ctx context.Context, blocks bs.GCBlockstore, pins pin.Pinner, cids continue } - err = blocks.DeleteBlock(c) + err = blocks.DeleteBlock(ctx, c) if err != nil { out <- &RemovedBlock{Hash: c.String(), Error: err.Error()} } else if !opts.Quiet { diff --git a/core/commands/dag/import.go b/core/commands/dag/import.go index 244260601bf..e206652ce36 100644 --- a/core/commands/dag/import.go +++ b/core/commands/dag/import.go @@ -42,8 +42,8 @@ func dagImport(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment // This is especially important for use cases like dagger: // ipfs dag import $( ... | ipfs-dagger --stdout=carfifos ) // - unlocker := node.Blockstore.PinLock() - defer unlocker.Unlock() + unlocker := node.Blockstore.PinLock(req.Context) + defer unlocker.Unlock(req.Context) doPinRoots, _ := req.Options[pinRootsOptionName].(bool) @@ -87,7 +87,7 @@ func dagImport(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment ret := RootMeta{Cid: c} - if block, err := node.Blockstore.Get(c); err != nil { + if block, err := node.Blockstore.Get(req.Context, c); err != nil { ret.PinErrorMsg = err.Error() } else if nd, err := ipld.Decode(block); err != nil { ret.PinErrorMsg = err.Error() diff --git a/core/commands/dht.go b/core/commands/dht.go index c481c776a99..4379fb0414d 100644 --- a/core/commands/dht.go +++ b/core/commands/dht.go @@ -273,7 +273,7 @@ var provideRefDhtCmd = &cmds.Command{ return err } - has, err := nd.Blockstore.Has(c) + has, err := nd.Blockstore.Has(req.Context, c) if err != nil { return err } diff --git a/core/commands/filestore.go b/core/commands/filestore.go index c36308bc140..1518ec62967 100644 --- a/core/commands/filestore.go +++ b/core/commands/filestore.go @@ -1,17 +1,18 @@ package commands import ( + "context" "fmt" "io" "os" filestore "github.com/ipfs/go-filestore" + cmds "github.com/ipfs/go-ipfs-cmds" core "github.com/ipfs/go-ipfs/core" cmdenv "github.com/ipfs/go-ipfs/core/commands/cmdenv" e "github.com/ipfs/go-ipfs/core/commands/e" "github.com/ipfs/go-cid" - "github.com/ipfs/go-ipfs-cmds" ) var FileStoreCmd = &cmds.Command{ @@ -56,7 +57,7 @@ The output is: } args := req.Arguments if len(args) > 0 { - return listByArgs(res, fs, args) + return listByArgs(req.Context, res, fs, args) } fileOrder, _ := req.Options[fileOrderOptionName].(bool) @@ -133,7 +134,7 @@ For ERROR entries the error will also be printed to stderr. } args := req.Arguments if len(args) > 0 { - return listByArgs(res, fs, args) + return listByArgs(req.Context, res, fs, args) } fileOrder, _ := req.Options[fileOrderOptionName].(bool) @@ -206,7 +207,7 @@ var dupsFileStore = &cmds.Command{ } for cid := range ch { - have, err := fs.MainBlockstore().Has(cid) + have, err := fs.MainBlockstore().Has(req.Context, cid) if err != nil { return res.Emit(&RefWrapper{Err: err.Error()}) } @@ -235,7 +236,7 @@ func getFilestore(env cmds.Environment) (*core.IpfsNode, *filestore.Filestore, e return n, fs, err } -func listByArgs(res cmds.ResponseEmitter, fs *filestore.Filestore, args []string) error { +func listByArgs(ctx context.Context, res cmds.ResponseEmitter, fs *filestore.Filestore, args []string) error { for _, arg := range args { c, err := cid.Decode(arg) if err != nil { @@ -248,7 +249,7 @@ func listByArgs(res cmds.ResponseEmitter, fs *filestore.Filestore, args []string } continue } - r := filestore.Verify(fs, c) + r := filestore.Verify(ctx, fs, c) if err := res.Emit(r); err != nil { return err } diff --git a/core/commands/pin/remotepin.go b/core/commands/pin/remotepin.go index 6548f29c350..3ca0d353278 100644 --- a/core/commands/pin/remotepin.go +++ b/core/commands/pin/remotepin.go @@ -174,7 +174,7 @@ NOTE: a comma-separated notation is supported in CLI for convenience: return err } - isInBlockstore, err := node.Blockstore.Has(rp.Cid()) + isInBlockstore, err := node.Blockstore.Has(req.Context, rp.Cid()) if err != nil { return err } diff --git a/core/commands/repo.go b/core/commands/repo.go index 307b4ffc58f..0ad045fa152 100644 --- a/core/commands/repo.go +++ b/core/commands/repo.go @@ -239,7 +239,7 @@ func verifyWorkerRun(ctx context.Context, wg *sync.WaitGroup, keys <-chan cid.Ci defer wg.Done() for k := range keys { - _, err := bs.Get(k) + _, err := bs.Get(ctx, k) if err != nil { select { case results <- fmt.Sprintf("block %s was corrupt (%s)", k, err): @@ -288,7 +288,7 @@ var repoVerifyCmd = &cmds.Command{ } bs := bstore.NewBlockstore(nd.Repo.Datastore()) - bs.HashOnRead(true) + bs.HashOnRead(req.Context, true) keys, err := bs.AllKeysChan(req.Context) if err != nil { diff --git a/core/coreapi/block.go b/core/coreapi/block.go index 18d9fb763d6..e1ad9badc05 100644 --- a/core/coreapi/block.go +++ b/core/coreapi/block.go @@ -46,10 +46,10 @@ func (api *BlockAPI) Put(ctx context.Context, src io.Reader, opts ...caopts.Bloc } if settings.Pin { - defer api.blockstore.PinLock().Unlock() + defer api.blockstore.PinLock(ctx).Unlock(ctx) } - err = api.blocks.AddBlock(b) + err = api.blocks.AddBlock(ctx, b) if err != nil { return nil, err } diff --git a/core/coreapi/dag.go b/core/coreapi/dag.go index 7994842b8e5..d056e8e6e0a 100644 --- a/core/coreapi/dag.go +++ b/core/coreapi/dag.go @@ -4,7 +4,7 @@ import ( "context" cid "github.com/ipfs/go-cid" - "github.com/ipfs/go-ipfs-pinner" + pin "github.com/ipfs/go-ipfs-pinner" ipld "github.com/ipfs/go-ipld-format" dag "github.com/ipfs/go-merkledag" ) @@ -18,7 +18,7 @@ type dagAPI struct { type pinningAdder CoreAPI func (adder *pinningAdder) Add(ctx context.Context, nd ipld.Node) error { - defer adder.blockstore.PinLock().Unlock() + defer adder.blockstore.PinLock(ctx).Unlock(ctx) if err := adder.dag.Add(ctx, nd); err != nil { return err @@ -30,7 +30,7 @@ func (adder *pinningAdder) Add(ctx context.Context, nd ipld.Node) error { } func (adder *pinningAdder) AddMany(ctx context.Context, nds []ipld.Node) error { - defer adder.blockstore.PinLock().Unlock() + defer adder.blockstore.PinLock(ctx).Unlock(ctx) if err := adder.dag.AddMany(ctx, nds); err != nil { return err diff --git a/core/coreapi/dht.go b/core/coreapi/dht.go index 892e7557629..3f10a0ffcf8 100644 --- a/core/coreapi/dht.go +++ b/core/coreapi/dht.go @@ -76,7 +76,7 @@ func (api *DhtAPI) Provide(ctx context.Context, path path.Path, opts ...caopts.D c := rp.Cid() - has, err := api.blockstore.Has(c) + has, err := api.blockstore.Has(ctx, c) if err != nil { return err } diff --git a/core/coreapi/object.go b/core/coreapi/object.go index 4408cec7f64..62d31daede1 100644 --- a/core/coreapi/object.go +++ b/core/coreapi/object.go @@ -12,7 +12,7 @@ import ( "io/ioutil" cid "github.com/ipfs/go-cid" - "github.com/ipfs/go-ipfs-pinner" + pin "github.com/ipfs/go-ipfs-pinner" ipld "github.com/ipfs/go-ipld-format" dag "github.com/ipfs/go-merkledag" "github.com/ipfs/go-merkledag/dagutils" @@ -110,7 +110,7 @@ func (api *ObjectAPI) Put(ctx context.Context, src io.Reader, opts ...caopts.Obj } if options.Pin { - defer api.blockstore.PinLock().Unlock() + defer api.blockstore.PinLock(ctx).Unlock(ctx) } err = api.dag.Add(ctx, dagnode) diff --git a/core/coreapi/pin.go b/core/coreapi/pin.go index b5db63d35a1..52ea6a6a453 100644 --- a/core/coreapi/pin.go +++ b/core/coreapi/pin.go @@ -27,7 +27,7 @@ func (api *PinAPI) Add(ctx context.Context, p path.Path, opts ...caopts.PinAddOp return err } - defer api.blockstore.PinLock().Unlock() + defer api.blockstore.PinLock(ctx).Unlock(ctx) err = api.pinning.Pin(ctx, dagNode, settings.Recursive) if err != nil { @@ -89,7 +89,7 @@ func (api *PinAPI) Rm(ctx context.Context, p path.Path, opts ...caopts.PinRmOpti // Note: after unpin the pin sets are flushed to the blockstore, so we need // to take a lock to prevent a concurrent garbage collection - defer api.blockstore.PinLock().Unlock() + defer api.blockstore.PinLock(ctx).Unlock(ctx) if err = api.pinning.Unpin(ctx, rp.Cid(), settings.Recursive); err != nil { return err @@ -114,7 +114,7 @@ func (api *PinAPI) Update(ctx context.Context, from path.Path, to path.Path, opt return err } - defer api.blockstore.PinLock().Unlock() + defer api.blockstore.PinLock(ctx).Unlock(ctx) err = api.pinning.Update(ctx, fp.Cid(), tp.Cid(), settings.Unpin) if err != nil { diff --git a/core/coreapi/unixfs.go b/core/coreapi/unixfs.go index 6146f807a71..55410dcb098 100644 --- a/core/coreapi/unixfs.go +++ b/core/coreapi/unixfs.go @@ -111,10 +111,10 @@ func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options DAGService: dserv, syncFn: func() error { ds := api.repo.Datastore() - if err := ds.Sync(bstore.BlockPrefix); err != nil { + if err := ds.Sync(ctx, bstore.BlockPrefix); err != nil { return err } - return ds.Sync(filestore.FilestorePrefix) + return ds.Sync(ctx, filestore.FilestorePrefix) }, } } @@ -164,7 +164,7 @@ func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options fileAdder.SetMfsRoot(mr) } - nd, err := fileAdder.AddAllAndPin(files) + nd, err := fileAdder.AddAllAndPin(ctx, files) if err != nil { return nil, err } diff --git a/core/corerepo/gc.go b/core/corerepo/gc.go index 1fe888eb82c..5db45bf477d 100644 --- a/core/corerepo/gc.go +++ b/core/corerepo/gc.go @@ -205,7 +205,7 @@ func ConditionalGC(ctx context.Context, node *core.IpfsNode, offset uint64) erro } func (gc *GC) maybeGC(ctx context.Context, offset uint64) error { - storage, err := gc.Repo.GetStorageUsage() + storage, err := gc.Repo.GetStorageUsage(ctx) if err != nil { return err } diff --git a/core/corerepo/stat.go b/core/corerepo/stat.go index 370cd88e4eb..52a42ca8c2b 100644 --- a/core/corerepo/stat.go +++ b/core/corerepo/stat.go @@ -71,7 +71,7 @@ func RepoSize(ctx context.Context, n *core.IpfsNode) (SizeStat, error) { return SizeStat{}, err } - usage, err := r.GetStorageUsage() + usage, err := r.GetStorageUsage(ctx) if err != nil { return SizeStat{}, err } diff --git a/core/coreunix/add.go b/core/coreunix/add.go index 68be08056ff..387a977784d 100644 --- a/core/coreunix/add.go +++ b/core/coreunix/add.go @@ -11,9 +11,9 @@ import ( "github.com/ipfs/go-cid" bstore "github.com/ipfs/go-ipfs-blockstore" chunker "github.com/ipfs/go-ipfs-chunker" - "github.com/ipfs/go-ipfs-files" - "github.com/ipfs/go-ipfs-pinner" - "github.com/ipfs/go-ipfs-posinfo" + files "github.com/ipfs/go-ipfs-files" + pin "github.com/ipfs/go-ipfs-pinner" + posinfo "github.com/ipfs/go-ipfs-posinfo" ipld "github.com/ipfs/go-ipld-format" logging "github.com/ipfs/go-log" dag "github.com/ipfs/go-merkledag" @@ -254,17 +254,17 @@ func (adder *Adder) addNode(node ipld.Node, path string) error { } // AddAllAndPin adds the given request's files and pin them. -func (adder *Adder) AddAllAndPin(file files.Node) (ipld.Node, error) { +func (adder *Adder) AddAllAndPin(ctx context.Context, file files.Node) (ipld.Node, error) { if adder.Pin { - adder.unlocker = adder.gcLocker.PinLock() + adder.unlocker = adder.gcLocker.PinLock(ctx) } defer func() { if adder.unlocker != nil { - adder.unlocker.Unlock() + adder.unlocker.Unlock(ctx) } }() - if err := adder.addFileNode("", file, true); err != nil { + if err := adder.addFileNode(ctx, "", file, true); err != nil { return nil, err } @@ -333,10 +333,10 @@ func (adder *Adder) AddAllAndPin(file files.Node) (ipld.Node, error) { return nd, adder.PinRoot(nd) } -func (adder *Adder) addFileNode(path string, file files.Node, toplevel bool) error { +func (adder *Adder) addFileNode(ctx context.Context, path string, file files.Node, toplevel bool) error { defer file.Close() - err := adder.maybePauseForGC() + err := adder.maybePauseForGC(ctx) if err != nil { return err } @@ -357,7 +357,7 @@ func (adder *Adder) addFileNode(path string, file files.Node, toplevel bool) err switch f := file.(type) { case files.Directory: - return adder.addDir(path, f, toplevel) + return adder.addDir(ctx, path, f, toplevel) case *files.Symlink: return adder.addSymlink(path, f) case files.File: @@ -405,7 +405,7 @@ func (adder *Adder) addFile(path string, file files.File) error { return adder.addNode(dagnode, path) } -func (adder *Adder) addDir(path string, dir files.Directory, toplevel bool) error { +func (adder *Adder) addDir(ctx context.Context, path string, dir files.Directory, toplevel bool) error { log.Infof("adding directory: %s", path) if !(toplevel && path == "") { @@ -426,7 +426,7 @@ func (adder *Adder) addDir(path string, dir files.Directory, toplevel bool) erro it := dir.Entries() for it.Next() { fpath := gopath.Join(path, it.Name()) - err := adder.addFileNode(fpath, it.Node(), false) + err := adder.addFileNode(ctx, fpath, it.Node(), false) if err != nil { return err } @@ -435,8 +435,8 @@ func (adder *Adder) addDir(path string, dir files.Directory, toplevel bool) erro return it.Err() } -func (adder *Adder) maybePauseForGC() error { - if adder.unlocker != nil && adder.gcLocker.GCRequested() { +func (adder *Adder) maybePauseForGC(ctx context.Context) error { + if adder.unlocker != nil && adder.gcLocker.GCRequested(ctx) { rn, err := adder.curRootNode() if err != nil { return err @@ -447,8 +447,8 @@ func (adder *Adder) maybePauseForGC() error { return err } - adder.unlocker.Unlock() - adder.unlocker = adder.gcLocker.PinLock() + adder.unlocker.Unlock(ctx) + adder.unlocker = adder.gcLocker.PinLock(ctx) } return nil } diff --git a/core/node/core.go b/core/node/core.go index cdb790bd22f..c8305bb610a 100644 --- a/core/node/core.go +++ b/core/node/core.go @@ -46,11 +46,11 @@ func BlockService(lc fx.Lifecycle, bs blockstore.Blockstore, rem exchange.Interf func Pinning(bstore blockstore.Blockstore, ds format.DAGService, repo repo.Repo) (pin.Pinner, error) { rootDS := repo.Datastore() - syncFn := func() error { - if err := rootDS.Sync(blockstore.BlockPrefix); err != nil { + syncFn := func(ctx context.Context) error { + if err := rootDS.Sync(ctx, blockstore.BlockPrefix); err != nil { return err } - return rootDS.Sync(filestore.FilestorePrefix) + return rootDS.Sync(ctx, filestore.FilestorePrefix) } syncDs := &syncDagService{ds, syncFn} @@ -72,11 +72,11 @@ var ( // syncDagService is used by the Pinner to ensure data gets persisted to the underlying datastore type syncDagService struct { format.DAGService - syncFn func() error + syncFn func(context.Context) error } -func (s *syncDagService) Sync() error { - return s.syncFn() +func (s *syncDagService) Sync(ctx context.Context) error { + return s.syncFn(ctx) } func (s *syncDagService) Session(ctx context.Context) format.NodeGetter { @@ -113,22 +113,22 @@ func Files(mctx helpers.MetricsCtx, lc fx.Lifecycle, repo repo.Repo, dag format. dsk := datastore.NewKey("/local/filesroot") pf := func(ctx context.Context, c cid.Cid) error { rootDS := repo.Datastore() - if err := rootDS.Sync(blockstore.BlockPrefix); err != nil { + if err := rootDS.Sync(ctx, blockstore.BlockPrefix); err != nil { return err } - if err := rootDS.Sync(filestore.FilestorePrefix); err != nil { + if err := rootDS.Sync(ctx, filestore.FilestorePrefix); err != nil { return err } - if err := rootDS.Put(dsk, c.Bytes()); err != nil { + if err := rootDS.Put(ctx, dsk, c.Bytes()); err != nil { return err } - return rootDS.Sync(dsk) + return rootDS.Sync(ctx, dsk) } var nd *merkledag.ProtoNode - val, err := repo.Datastore().Get(dsk) ctx := helpers.LifecycleCtx(mctx, lc) + val, err := repo.Datastore().Get(ctx, dsk) switch { case err == datastore.ErrNotFound || val == nil: diff --git a/core/node/graphsync.go b/core/node/graphsync.go index 521a62a6a55..7e2d42a7871 100644 --- a/core/node/graphsync.go +++ b/core/node/graphsync.go @@ -18,6 +18,6 @@ func Graphsync(lc fx.Lifecycle, mctx helpers.MetricsCtx, host libp2p.Host, bs bl network := network.NewFromLibp2pHost(host) return gsimpl.New(ctx, network, - storeutil.LinkSystemForBlockstore(bs), + storeutil.LinkSystemForBlockstore(ctx, bs), ) } diff --git a/core/node/groups.go b/core/node/groups.go index 47b1872ca15..aba71f9a306 100644 --- a/core/node/groups.go +++ b/core/node/groups.go @@ -18,7 +18,6 @@ import ( offline "github.com/ipfs/go-ipfs-exchange-offline" offroute "github.com/ipfs/go-ipfs-routing/offline" - uio "github.com/ipfs/go-unixfs/io" "go.uber.org/fx" ) @@ -320,7 +319,7 @@ func IPFS(ctx context.Context, bcfg *BuildCfg) fx.Option { } // TEMP: setting global sharding switch here - uio.UseHAMTSharding = cfg.Experimental.ShardingEnabled + // uio.UseHAMTSharding = cfg.Experimental.ShardingEnabled return fx.Options( bcfgOpts, diff --git a/core/node/libp2p/peerstore.go b/core/node/libp2p/peerstore.go index 03ad64a6c8a..0cc6b21f54c 100644 --- a/core/node/libp2p/peerstore.go +++ b/core/node/libp2p/peerstore.go @@ -8,13 +8,16 @@ import ( "go.uber.org/fx" ) -func Peerstore(lc fx.Lifecycle) peerstore.Peerstore { - pstore := pstoremem.NewPeerstore() +func Peerstore(lc fx.Lifecycle) (peerstore.Peerstore, error) { + pstore, err := pstoremem.NewPeerstore() + if err != nil { + return nil, err + } lc.Append(fx.Hook{ OnStop: func(ctx context.Context) error { return pstore.Close() }, }) - return pstore + return pstore, nil } diff --git a/core/node/storage.go b/core/node/storage.go index 92d475339f9..665d860e5d7 100644 --- a/core/node/storage.go +++ b/core/node/storage.go @@ -1,6 +1,8 @@ package node import ( + "context" + "github.com/ipfs/go-datastore" blockstore "github.com/ipfs/go-ipfs-blockstore" config "github.com/ipfs/go-ipfs-config" @@ -44,7 +46,7 @@ func BaseBlockstoreCtor(cacheOpts blockstore.CacheOpts, nilRepo bool, hashOnRead bs = cidv0v1.NewBlockstore(bs) if hashOnRead { // TODO: review: this is how it was done originally, is there a reason we can't just pass this directly? - bs.HashOnRead(true) + bs.HashOnRead(context.Background(), true) } return diff --git a/fuse/readonly/readonly_unix.go b/fuse/readonly/readonly_unix.go index 85d5e1a6ba3..1fbb473106d 100644 --- a/fuse/readonly/readonly_unix.go +++ b/fuse/readonly/readonly_unix.go @@ -1,3 +1,4 @@ +//go:build (linux || darwin || freebsd) && !nofuse // +build linux darwin freebsd // +build !nofuse @@ -81,7 +82,7 @@ func (s *Root) Lookup(ctx context.Context, name string) (fs.Node, error) { } // convert ipld-prime node to universal node - blk, err := s.Ipfs.Blockstore.Get(cidLnk.Cid) + blk, err := s.Ipfs.Blockstore.Get(ctx, cidLnk.Cid) if err != nil { log.Debugf("fuse failed to retrieve block: %v: %s", cidLnk, err) return nil, fuse.ENOENT diff --git a/gc/gc.go b/gc/gc.go index 4b0e6c5d790..b65756f01d7 100644 --- a/gc/gc.go +++ b/gc/gc.go @@ -40,7 +40,7 @@ type Result struct { func GC(ctx context.Context, bs bstore.GCBlockstore, dstor dstore.Datastore, pn pin.Pinner, bestEffortRoots []cid.Cid) <-chan Result { ctx, cancel := context.WithCancel(ctx) - unlocker := bs.GCLock() + unlocker := bs.GCLock(ctx) bsrv := bserv.New(bs, offline.Exchange(bs)) ds := dag.NewDAGService(bsrv) @@ -50,7 +50,7 @@ func GC(ctx context.Context, bs bstore.GCBlockstore, dstor dstore.Datastore, pn go func() { defer cancel() defer close(output) - defer unlocker.Unlock() + defer unlocker.Unlock(ctx) gcs, err := ColoredSet(ctx, pn, ds, bestEffortRoots, output) if err != nil { @@ -80,7 +80,7 @@ func GC(ctx context.Context, bs bstore.GCBlockstore, dstor dstore.Datastore, pn break loop } if !gcs.Has(k) { - err := bs.DeleteBlock(k) + err := bs.DeleteBlock(ctx, k) removed++ if err != nil { errors = true @@ -115,7 +115,7 @@ func GC(ctx context.Context, bs bstore.GCBlockstore, dstor dstore.Datastore, pn return } - err = gds.CollectGarbage() + err = gds.CollectGarbage(ctx) if err != nil { select { case output <- Result{Error: err}: diff --git a/go.mod b/go.mod index 8ba32d5c025..7b1765a8123 100644 --- a/go.mod +++ b/go.mod @@ -11,77 +11,78 @@ require ( github.com/fsnotify/fsnotify v1.4.9 github.com/gabriel-vasile/mimetype v1.1.2 github.com/go-bindata/go-bindata/v3 v3.1.3 + github.com/gopherjs/gopherjs v0.0.0-20190812055157-5d271430af9f // indirect github.com/hashicorp/go-multierror v1.1.1 - github.com/ipfs/go-bitswap v0.4.0 + github.com/ipfs/go-bitswap v0.5.0 github.com/ipfs/go-block-format v0.0.3 - github.com/ipfs/go-blockservice v0.1.7 - github.com/ipfs/go-cid v0.0.7 + github.com/ipfs/go-blockservice v0.2.0 + github.com/ipfs/go-cid v0.1.0 github.com/ipfs/go-cidutil v0.0.2 - github.com/ipfs/go-datastore v0.4.6 + github.com/ipfs/go-datastore v0.5.0 github.com/ipfs/go-detect-race v0.0.1 - github.com/ipfs/go-ds-badger v0.2.7 - github.com/ipfs/go-ds-flatfs v0.4.5 - github.com/ipfs/go-ds-leveldb v0.4.2 - github.com/ipfs/go-ds-measure v0.1.0 + github.com/ipfs/go-ds-badger v0.3.0 + github.com/ipfs/go-ds-flatfs v0.4.6-0.20211022215308-063e7297c4c4 + github.com/ipfs/go-ds-leveldb v0.5.0 + github.com/ipfs/go-ds-measure v0.1.1-0.20211022215957-ab1649254335 github.com/ipfs/go-fetcher v1.5.0 - github.com/ipfs/go-filestore v0.0.3 + github.com/ipfs/go-filestore v1.0.1-0.20211022220855-bad9642b9398 github.com/ipfs/go-fs-lock v0.0.7 - github.com/ipfs/go-graphsync v0.8.0 - github.com/ipfs/go-ipfs-blockstore v0.1.6 + github.com/ipfs/go-graphsync v0.10.5-0.20211022221432-61a702bcea25 + github.com/ipfs/go-ipfs-blockstore v1.0.5-0.20211014014401-70aaaef6f401 github.com/ipfs/go-ipfs-chunker v0.0.5 github.com/ipfs/go-ipfs-cmds v0.6.0 - github.com/ipfs/go-ipfs-config v0.16.1-0.20211113111219-7bbc5ab0aa46 - github.com/ipfs/go-ipfs-exchange-interface v0.0.1 - github.com/ipfs/go-ipfs-exchange-offline v0.0.1 + github.com/ipfs/go-ipfs-config v0.16.1-0.20211116105546-44a3bfa7e9d3 + github.com/ipfs/go-ipfs-exchange-interface v0.1.0 + github.com/ipfs/go-ipfs-exchange-offline v0.1.0 github.com/ipfs/go-ipfs-files v0.0.9 github.com/ipfs/go-ipfs-keystore v0.0.2 - github.com/ipfs/go-ipfs-pinner v0.1.2 + github.com/ipfs/go-ipfs-pinner v0.1.3-0.20211022224820-71e2b1511fd2 github.com/ipfs/go-ipfs-posinfo v0.0.1 - github.com/ipfs/go-ipfs-provider v0.6.1 - github.com/ipfs/go-ipfs-routing v0.1.0 + github.com/ipfs/go-ipfs-provider v0.6.2-0.20211025183630-eb8461370f74 + github.com/ipfs/go-ipfs-routing v0.2.0 github.com/ipfs/go-ipfs-util v0.0.2 github.com/ipfs/go-ipld-cbor v0.0.5 github.com/ipfs/go-ipld-format v0.2.0 github.com/ipfs/go-ipld-git v0.1.1 github.com/ipfs/go-ipld-legacy v0.1.0 - github.com/ipfs/go-ipns v0.1.2 + github.com/ipfs/go-ipns v0.1.3-0.20211021182412-45a1d75e1913 github.com/ipfs/go-log v1.0.5 - github.com/ipfs/go-merkledag v0.4.0 + github.com/ipfs/go-merkledag v0.5.0 github.com/ipfs/go-metrics-interface v0.0.1 github.com/ipfs/go-metrics-prometheus v0.0.2 - github.com/ipfs/go-mfs v0.1.2 - github.com/ipfs/go-namesys v0.3.1 - github.com/ipfs/go-path v0.1.2 + github.com/ipfs/go-mfs v0.1.3-0.20211025170123-e41b40a71677 + github.com/ipfs/go-namesys v0.3.2-0.20211025145726-331d6bea5fc9 + github.com/ipfs/go-path v0.1.3-0.20211021180819-6f599234c77d github.com/ipfs/go-pinning-service-http-client v0.1.0 - github.com/ipfs/go-unixfs v0.2.5 - github.com/ipfs/go-unixfsnode v1.1.3 + github.com/ipfs/go-unixfs v0.2.7-0.20211021174028-9e137ae83d40 + github.com/ipfs/go-unixfsnode v1.1.4-0.20211021180004-3d0f9aae0add github.com/ipfs/go-verifcid v0.0.1 - github.com/ipfs/interface-go-ipfs-core v0.5.1 + github.com/ipfs/interface-go-ipfs-core v0.5.3-0.20211022223836-cc09e6f38bc4 github.com/ipfs/tar-utils v0.0.1 github.com/ipld/go-car v0.3.2 github.com/ipld/go-codec-dagpb v1.3.0 - github.com/ipld/go-ipld-prime v0.12.3 + github.com/ipld/go-ipld-prime v0.12.4-0.20211014180653-3ba656a3bc6b github.com/jbenet/go-random v0.0.0-20190219211222-123a90aedc0c github.com/jbenet/go-temp-err-catcher v0.1.0 github.com/jbenet/goprocess v0.1.4 github.com/libp2p/go-doh-resolver v0.3.1 - github.com/libp2p/go-libp2p v0.16.0-dev.0.20211021081216-db8f9c6fddb5 + github.com/libp2p/go-libp2p v0.16.0-dev.0.20211114124005-3c4b16f2dbf6 github.com/libp2p/go-libp2p-connmgr v0.2.4 github.com/libp2p/go-libp2p-core v0.11.0 - github.com/libp2p/go-libp2p-discovery v0.5.1 + github.com/libp2p/go-libp2p-discovery v0.6.0 github.com/libp2p/go-libp2p-http v0.2.1 - github.com/libp2p/go-libp2p-kad-dht v0.13.1 + github.com/libp2p/go-libp2p-kad-dht v0.15.0 github.com/libp2p/go-libp2p-kbucket v0.4.7 github.com/libp2p/go-libp2p-loggables v0.1.0 github.com/libp2p/go-libp2p-mplex v0.4.1 github.com/libp2p/go-libp2p-noise v0.3.0 - github.com/libp2p/go-libp2p-peerstore v0.3.0 - github.com/libp2p/go-libp2p-pubsub v0.5.4 - github.com/libp2p/go-libp2p-pubsub-router v0.4.0 + github.com/libp2p/go-libp2p-peerstore v0.4.0 + github.com/libp2p/go-libp2p-pubsub v0.5.6-0.20211022213958-eb85e0b9a30f + github.com/libp2p/go-libp2p-pubsub-router v0.4.1-0.20211025173248-17875e5a4465 github.com/libp2p/go-libp2p-quic-transport v0.14.0 github.com/libp2p/go-libp2p-record v0.1.3 github.com/libp2p/go-libp2p-routing-helpers v0.2.3 - github.com/libp2p/go-libp2p-swarm v0.7.0 + github.com/libp2p/go-libp2p-swarm v0.8.0 github.com/libp2p/go-libp2p-testing v0.5.0 github.com/libp2p/go-libp2p-tls v0.3.0 github.com/libp2p/go-libp2p-yamux v0.5.4 @@ -94,11 +95,12 @@ require ( github.com/multiformats/go-multiaddr-dns v0.3.1 github.com/multiformats/go-multibase v0.0.3 github.com/multiformats/go-multicodec v0.3.0 - github.com/multiformats/go-multihash v0.0.15 + github.com/multiformats/go-multihash v0.0.17-0.20211012170226-654b06d7912a github.com/opentracing/opentracing-go v1.2.0 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.11.0 github.com/prometheus/statsd_exporter v0.21.0 // indirect + github.com/smartystreets/assertions v1.0.1 // indirect github.com/stretchr/testify v1.7.0 github.com/syndtr/goleveldb v1.0.0 github.com/whyrusleeping/go-sysinfo v0.0.0-20190219211824-4a357d4b90b1 @@ -106,10 +108,10 @@ require ( go.opencensus.io v0.23.0 go.uber.org/fx v1.13.1 go.uber.org/zap v1.19.0 - golang.org/x/crypto v0.0.0-20210813211128-0a44fdfbc16e + golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5 // indirect golang.org/x/sync v0.0.0-20210220032951-036812b2e83c - golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912 + golang.org/x/sys v0.0.0-20211025112917-711f33c9992c ) go 1.16 diff --git a/go.sum b/go.sum index 350af96d7d9..856101cd97f 100644 --- a/go.sum +++ b/go.sum @@ -298,7 +298,6 @@ github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+u github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gopacket v1.1.17/go.mod h1:UdDNZ1OO62aGYVnPhxT1U6aI7ukYtA/kB8vaU0diBUM= -github.com/google/gopacket v1.1.18/go.mod h1:UdDNZ1OO62aGYVnPhxT1U6aI7ukYtA/kB8vaU0diBUM= github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8= github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= @@ -383,47 +382,50 @@ github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod github.com/ipfs/bbloom v0.0.1/go.mod h1:oqo8CVWsJFMOZqTglBG4wydCE4IQA/G2/SEofB0rjUI= github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs= github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0= +github.com/ipfs/go-bitfield v1.0.0 h1:y/XHm2GEmD9wKngheWNNCNL0pzrWXZwCdQGv1ikXknQ= +github.com/ipfs/go-bitfield v1.0.0/go.mod h1:N/UiujQy+K+ceU1EF5EkVd1TNqevLrCQMIcAEPrdtus= github.com/ipfs/go-bitswap v0.0.9/go.mod h1:kAPf5qgn2W2DrgAcscZ3HrM9qh4pH+X8Fkk3UPrwvis= github.com/ipfs/go-bitswap v0.1.0/go.mod h1:FFJEf18E9izuCqUtHxbWEvq+reg7o4CW5wSAE1wsxj0= github.com/ipfs/go-bitswap v0.1.2/go.mod h1:qxSWS4NXGs7jQ6zQvoPY3+NmOfHHG47mhkiLzBpJQIs= -github.com/ipfs/go-bitswap v0.1.3/go.mod h1:YEQlFy0kkxops5Vy+OxWdRSEZIoS7I7KDIwoa5Chkps= github.com/ipfs/go-bitswap v0.1.8/go.mod h1:TOWoxllhccevbWFUR2N7B1MTSVVge1s6XSMiCSA4MzM= github.com/ipfs/go-bitswap v0.3.4/go.mod h1:4T7fvNv/LmOys+21tnLzGKncMeeXUYUd1nUiJ2teMvI= -github.com/ipfs/go-bitswap v0.4.0 h1:bLiqrpef1na4wdqGLqHKv954s1zz6KFghfmQWCPjBik= -github.com/ipfs/go-bitswap v0.4.0/go.mod h1:J2sAsp9UKxLgHDektSy3y3Q9OfQjM9sjhKBR1dlwrMg= +github.com/ipfs/go-bitswap v0.4.1-0.20211014024349-4df993459a71/go.mod h1:6L9a34A8r1wDWtimaoj//LKf25rvDUFV2iE1zUu7a1c= +github.com/ipfs/go-bitswap v0.4.1-0.20211021171654-7f7d6979a92f/go.mod h1:7Xce6YR9H64ELfk/e3oM1fuRkWaTd7fJGoLnWc/lUZM= +github.com/ipfs/go-bitswap v0.5.0 h1:UTkSQpV2C2uy/bqtkFL9UOw5Da8i40qiNO24H386lek= +github.com/ipfs/go-bitswap v0.5.0/go.mod h1:WwyyYD33RHCpczgHjpx+xjWYIy8l41K+l5EMy4/ctSM= github.com/ipfs/go-block-format v0.0.1/go.mod h1:DK/YYcsSUIVAFNwo/KZCdIIbpN0ROH/baNLgayt4pFc= github.com/ipfs/go-block-format v0.0.2/go.mod h1:AWR46JfpcObNfg3ok2JHDUfdiHRgWhJgCQF+KIgOPJY= github.com/ipfs/go-block-format v0.0.3 h1:r8t66QstRp/pd/or4dpnbVfXT5Gt7lOqRvC+/dDTpMc= github.com/ipfs/go-block-format v0.0.3/go.mod h1:4LmD4ZUw0mhO+JSKdpWwrzATiEfM7WWgQ8H5l6P8MVk= github.com/ipfs/go-blockservice v0.0.7/go.mod h1:EOfb9k/Y878ZTRY/CH0x5+ATtaipfbRhbvNSdgc/7So= github.com/ipfs/go-blockservice v0.1.0/go.mod h1:hzmMScl1kXHg3M2BjTymbVPjv627N7sYcvYaKbop39M= -github.com/ipfs/go-blockservice v0.1.1/go.mod h1:t+411r7psEUhLueM8C7aPA7cxCclv4O3VsUVxt9kz2I= -github.com/ipfs/go-blockservice v0.1.3/go.mod h1:OTZhFpkgY48kNzbgyvcexW9cHrpjBYIjSR0KoDOFOLU= github.com/ipfs/go-blockservice v0.1.4/go.mod h1:OTZhFpkgY48kNzbgyvcexW9cHrpjBYIjSR0KoDOFOLU= -github.com/ipfs/go-blockservice v0.1.7 h1:yVe9te0M7ow8i+PPkx03YFSpxqzXx594d6h+34D6qMg= -github.com/ipfs/go-blockservice v0.1.7/go.mod h1:GmS+BAt4hrwBKkzE11AFDQUrnvqjwFatGS2MY7wOjEM= +github.com/ipfs/go-blockservice v0.1.8-0.20211014030622-0b13c56807e6/go.mod h1:R+pcp5+k4h3j//RwY7h4xu5k/9OF0Hv+4IPOVOHgitg= +github.com/ipfs/go-blockservice v0.2.0 h1:N4xGm4haU3lEhGxGckzM0zzeUrdm7lk4S6AGLjz/qOw= +github.com/ipfs/go-blockservice v0.2.0/go.mod h1:Vzvj2fAnbbyly4+T7D5+p9n3+ZKVHA2bRMMo1QoILtQ= github.com/ipfs/go-cid v0.0.1/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.2/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.3/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.4/go.mod h1:4LLaPOQwmk5z9LBgQnpkivrx8BJjUyGwTXCd5Xfj6+M= github.com/ipfs/go-cid v0.0.5/go.mod h1:plgt+Y5MnOey4vO4UlUazGqdbEXuFYitED67FexhXog= github.com/ipfs/go-cid v0.0.6/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= -github.com/ipfs/go-cid v0.0.7 h1:ysQJVJA3fNDF1qigJbsSQOdjhVLsOEoPdh0+R97k3jY= github.com/ipfs/go-cid v0.0.7/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= +github.com/ipfs/go-cid v0.1.0 h1:YN33LQulcRHjfom/i25yoOZR4Telp1Hr/2RU3d0PnC0= +github.com/ipfs/go-cid v0.1.0/go.mod h1:rH5/Xv83Rfy8Rw6xG+id3DYAMUVmem1MowoKwdXmN2o= github.com/ipfs/go-cidutil v0.0.2 h1:CNOboQf1t7Qp0nuNh8QMmhJs0+Q//bRL1axtCnIB1Yo= github.com/ipfs/go-cidutil v0.0.2/go.mod h1:ewllrvrxG6AMYStla3GD7Cqn+XYSLqjK0vc+086tB6s= github.com/ipfs/go-datastore v0.0.1/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.0.5/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.1.0/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.1.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= -github.com/ipfs/go-datastore v0.3.0/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= github.com/ipfs/go-datastore v0.3.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= github.com/ipfs/go-datastore v0.4.0/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= github.com/ipfs/go-datastore v0.4.1/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= github.com/ipfs/go-datastore v0.4.4/go.mod h1:SX/xMIKoCszPqp+z9JhPYCmoOoXTvaa13XEbGtsFUhA= github.com/ipfs/go-datastore v0.4.5/go.mod h1:eXTcaaiN6uOlVCLS9GjJUJtlvJfM3xk23w3fyfrmmJs= -github.com/ipfs/go-datastore v0.4.6 h1:zU2cmweykxJ+ziXnA2cPtsLe8rdR/vrthOipLPuf6kc= -github.com/ipfs/go-datastore v0.4.6/go.mod h1:XSipLSc64rFKSFRFGo1ecQl+WhYce3K7frtpHkyPFUc= +github.com/ipfs/go-datastore v0.4.7-0.20211013204805-28a3721c2e66/go.mod h1:9zhEApYMTl17C8YDp7JmU7sQZi2/wqiYh73hakZ90Bk= +github.com/ipfs/go-datastore v0.5.0 h1:rQicVCEacWyk4JZ6G5bD9TKR7lZEG1MWcG7UdWYrFAU= +github.com/ipfs/go-datastore v0.5.0/go.mod h1:9zhEApYMTl17C8YDp7JmU7sQZi2/wqiYh73hakZ90Bk= github.com/ipfs/go-detect-race v0.0.1 h1:qX/xay2W3E4Q1U7d9lNs1sU9nvguX0a7319XbyQ6cOk= github.com/ipfs/go-detect-race v0.0.1/go.mod h1:8BNT7shDZPo99Q74BpGMK+4D8Mn4j46UU0LZ723meps= github.com/ipfs/go-ds-badger v0.0.2/go.mod h1:Y3QpeSFWQf6MopLTiZD+VT6IC1yZqaGmjvRcKeSGij8= @@ -431,31 +433,36 @@ github.com/ipfs/go-ds-badger v0.0.5/go.mod h1:g5AuuCGmr7efyzQhLL8MzwqcauPojGPUaH github.com/ipfs/go-ds-badger v0.0.7/go.mod h1:qt0/fWzZDoPW6jpQeqUjR5kBfhDNB65jd9YlmAvpQBk= github.com/ipfs/go-ds-badger v0.2.1/go.mod h1:Tx7l3aTph3FMFrRS838dcSJh+jjA7cX9DrGVwx/NOwE= github.com/ipfs/go-ds-badger v0.2.3/go.mod h1:pEYw0rgg3FIrywKKnL+Snr+w/LjJZVMTBRn4FS6UHUk= -github.com/ipfs/go-ds-badger v0.2.6/go.mod h1:02rnztVKA4aZwDuaRPTf8mpqcKmXP7mLl6JPxd14JHA= -github.com/ipfs/go-ds-badger v0.2.7 h1:ju5REfIm+v+wgVnQ19xGLYPHYHbYLR6qJfmMbCDSK1I= github.com/ipfs/go-ds-badger v0.2.7/go.mod h1:02rnztVKA4aZwDuaRPTf8mpqcKmXP7mLl6JPxd14JHA= -github.com/ipfs/go-ds-flatfs v0.4.5 h1:4QceuKEbH+HVZ2ZommstJMi3o3II+dWS3IhLaD7IGHs= -github.com/ipfs/go-ds-flatfs v0.4.5/go.mod h1:e4TesLyZoA8k1gV/yCuBTnt2PJtypn4XUlB5n8KQMZY= +github.com/ipfs/go-ds-badger v0.2.8-0.20211014032316-05534b799774/go.mod h1:duXiXbQ5YUbnU7wI4U/8evVoveRASH9/5kuszt2srAc= +github.com/ipfs/go-ds-badger v0.3.0 h1:xREL3V0EH9S219kFFueOYJJTcjgNSZ2HY1iSvN7U1Ro= +github.com/ipfs/go-ds-badger v0.3.0/go.mod h1:1ke6mXNqeV8K3y5Ak2bAA0osoTfmxUdupVCGm4QUIek= +github.com/ipfs/go-ds-flatfs v0.4.6-0.20211022215308-063e7297c4c4 h1:GB9LLoLKwn4gfTq/QRx61xmJ7hHMsSrtDyfYHoQQQuI= +github.com/ipfs/go-ds-flatfs v0.4.6-0.20211022215308-063e7297c4c4/go.mod h1:7BtRAF8WObIzbuiz+2Kj7/W/Vl+b/iH1375ITYreREI= github.com/ipfs/go-ds-leveldb v0.0.1/go.mod h1:feO8V3kubwsEF22n0YRQCffeb79OOYIykR4L04tMOYc= github.com/ipfs/go-ds-leveldb v0.1.0/go.mod h1:hqAW8y4bwX5LWcCtku2rFNX3vjDZCy5LZCg+cSZvYb8= github.com/ipfs/go-ds-leveldb v0.4.1/go.mod h1:jpbku/YqBSsBc1qgME8BkWS4AxzF2cEu1Ii2r79Hh9s= -github.com/ipfs/go-ds-leveldb v0.4.2 h1:QmQoAJ9WkPMUfBLnu1sBVy0xWWlJPg0m4kRAiJL9iaw= github.com/ipfs/go-ds-leveldb v0.4.2/go.mod h1:jpbku/YqBSsBc1qgME8BkWS4AxzF2cEu1Ii2r79Hh9s= -github.com/ipfs/go-ds-measure v0.1.0 h1:vE4TyY4aeLeVgnnPBC5QzKIjKrqzha0NCujTfgvVbVQ= -github.com/ipfs/go-ds-measure v0.1.0/go.mod h1:1nDiFrhLlwArTME1Ees2XaBOl49OoCgd2A3f8EchMSY= +github.com/ipfs/go-ds-leveldb v0.4.3-0.20211014125523-8bc38be4745f/go.mod h1:qYAG1yVJSOmj1yFnriiP8YfmgjnJzR0NZgJRFlkPItk= +github.com/ipfs/go-ds-leveldb v0.5.0 h1:s++MEBbD3ZKc9/8/njrn4flZLnCuY9I79v94gBUNumo= +github.com/ipfs/go-ds-leveldb v0.5.0/go.mod h1:d3XG9RUDzQ6V4SHi8+Xgj9j1XuEk1z82lquxrVbml/Q= +github.com/ipfs/go-ds-measure v0.1.1-0.20211022215957-ab1649254335 h1:ZboRc7ByrT0E0Yjc9A3wqFTfSTfeEdBb8Dfiqfw4oE4= +github.com/ipfs/go-ds-measure v0.1.1-0.20211022215957-ab1649254335/go.mod h1:7Z2zZBRTW8lhUshJGEhR90BBLf61TnQ/AYA3olf1uA4= github.com/ipfs/go-fetcher v1.5.0 h1:oreKTKBzja3S09rSmoZlA3KGVlRiUbJ1pQjtB4K6y3w= github.com/ipfs/go-fetcher v1.5.0/go.mod h1:5pDZ0393oRF/fHiLmtFZtpMNBQfHOYNPtryWedVuSWE= -github.com/ipfs/go-filestore v0.0.3 h1:MhZ1jT5K3NewZwim6rS/akcJLm1xM+r6nz6foeB9EwE= -github.com/ipfs/go-filestore v0.0.3/go.mod h1:dvXRykFzyyXN2CdNlRGzDAkXMDPyI+D7JE066SiKLSE= +github.com/ipfs/go-filestore v1.0.1-0.20211022220855-bad9642b9398 h1:svE237y+EkxcVBk4rn9fP6jTfzQbuwDfLRlefc4sLJ4= +github.com/ipfs/go-filestore v1.0.1-0.20211022220855-bad9642b9398/go.mod h1:okqrSoyjEUSnJaFbPVVLzie5DvDO49I2rElsa32qGAI= github.com/ipfs/go-fs-lock v0.0.7 h1:6BR3dajORFrFTkb5EpCUFIAypsoxpGpDSVUdFwzgL9U= github.com/ipfs/go-fs-lock v0.0.7/go.mod h1:Js8ka+FNYmgQRLrRXzU3CB/+Csr1BwrRilEcvYrHhhc= -github.com/ipfs/go-graphsync v0.8.0 h1:Zhh6QdTqdipYHD71ncLO8eA6c8EGUTOoJ4Rqybw3K+o= -github.com/ipfs/go-graphsync v0.8.0/go.mod h1:CLxN859dUTcXCav1DvNvmAUWPZfmNLjlGLJYy+c3dlM= +github.com/ipfs/go-graphsync v0.10.5-0.20211022221432-61a702bcea25 h1:kne5pi0iTJJJ+bWdyj3vPX5p7+B92A9l3/TaXXIZdn8= +github.com/ipfs/go-graphsync v0.10.5-0.20211022221432-61a702bcea25/go.mod h1:s5XaLXUbRcK6HpDdFbzbr+6DtdoiAlhKqownCfHs6Nc= github.com/ipfs/go-ipfs-blockstore v0.0.1/go.mod h1:d3WClOmRQKFnJ0Jz/jj/zmksX0ma1gROTlovZKBmN08= github.com/ipfs/go-ipfs-blockstore v0.1.0/go.mod h1:5aD0AvHPi7mZc6Ci1WCAhiBQu2IsfTduLl+422H6Rqw= github.com/ipfs/go-ipfs-blockstore v0.1.4/go.mod h1:Jxm3XMVjh6R17WvxFEiyKBLUGr86HgIYJW/D/MwqeYQ= -github.com/ipfs/go-ipfs-blockstore v0.1.6 h1:+RNM/gkTF6lzLPtt/xqjEUXJuG0lFwAiv+MV8MoAhvA= -github.com/ipfs/go-ipfs-blockstore v0.1.6/go.mod h1:Jxm3XMVjh6R17WvxFEiyKBLUGr86HgIYJW/D/MwqeYQ= +github.com/ipfs/go-ipfs-blockstore v0.1.7-0.20211021153214-1e1f589f10fa/go.mod h1:1H6HV//c8xY6mEkITIoGmFP700PjY3Qe2zfZdPXoovg= +github.com/ipfs/go-ipfs-blockstore v0.2.0/go.mod h1:SNeEpz/ICnMYZQYr7KNZTjdn7tEPB/99xpe8xI1RW7o= +github.com/ipfs/go-ipfs-blockstore v1.0.5-0.20211014014401-70aaaef6f401 h1:kZxhwillBc3bZq9R99Rn0cDj+tRnMHP8xgBvX2OsYP8= +github.com/ipfs/go-ipfs-blockstore v1.0.5-0.20211014014401-70aaaef6f401/go.mod h1:5QDUApRqpgPcfGstCxYeMnjt/DYQtXXdJVCvxHHuWVk= github.com/ipfs/go-ipfs-blocksutil v0.0.1 h1:Eh/H4pc1hsvhzsQoMEP3Bke/aW5P5rVM1IWFJMcGIPQ= github.com/ipfs/go-ipfs-blocksutil v0.0.1/go.mod h1:Yq4M86uIOmxmGPUHv/uI7uKqZNtLb449gwKqXjIsnRk= github.com/ipfs/go-ipfs-chunker v0.0.1/go.mod h1:tWewYK0we3+rMbOh7pPFGDyypCtvGcBFymgY4rSDLAw= @@ -463,36 +470,47 @@ github.com/ipfs/go-ipfs-chunker v0.0.5 h1:ojCf7HV/m+uS2vhUGWcogIIxiO5ubl5O57Q7Na github.com/ipfs/go-ipfs-chunker v0.0.5/go.mod h1:jhgdF8vxRHycr00k13FM8Y0E+6BoalYeobXmUyTreP8= github.com/ipfs/go-ipfs-cmds v0.6.0 h1:yAxdowQZzoFKjcLI08sXVNnqVj3jnABbf9smrPQmBsw= github.com/ipfs/go-ipfs-cmds v0.6.0/go.mod h1:ZgYiWVnCk43ChwoH8hAmI1IRbuVtq3GSTHwtRB/Kqhk= -github.com/ipfs/go-ipfs-config v0.16.1-0.20211113111219-7bbc5ab0aa46 h1:zPASJGoi1ih8j5zY+Ib0BIXgkd+TkqPMiUdcwNEIWqg= -github.com/ipfs/go-ipfs-config v0.16.1-0.20211113111219-7bbc5ab0aa46/go.mod h1:wz2lKzOjgJeYJa6zx8W9VT7mz+iSd0laBMqS/9wmX6A= +github.com/ipfs/go-ipfs-config v0.16.1-0.20211116105546-44a3bfa7e9d3 h1:RrQSZ0kQrUOQOLX/rNCawRYkII3zPW30mZ74N1xcMAE= +github.com/ipfs/go-ipfs-config v0.16.1-0.20211116105546-44a3bfa7e9d3/go.mod h1:wz2lKzOjgJeYJa6zx8W9VT7mz+iSd0laBMqS/9wmX6A= github.com/ipfs/go-ipfs-delay v0.0.0-20181109222059-70721b86a9a8/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= github.com/ipfs/go-ipfs-delay v0.0.1 h1:r/UXYyRcddO6thwOnhiznIAiSvxMECGgtv35Xs1IeRQ= github.com/ipfs/go-ipfs-delay v0.0.1/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= github.com/ipfs/go-ipfs-ds-help v0.0.1/go.mod h1:gtP9xRaZXqIQRh1HRpp595KbBEdgqWFxefeVKOV8sxo= -github.com/ipfs/go-ipfs-ds-help v0.1.1 h1:IW/bXGeaAZV2VH0Kuok+Ohva/zHkHmeLFBxC1k7mNPc= github.com/ipfs/go-ipfs-ds-help v0.1.1/go.mod h1:SbBafGJuGsPI/QL3j9Fc5YPLeAu+SzOkI0gFwAg+mOs= -github.com/ipfs/go-ipfs-exchange-interface v0.0.1 h1:LJXIo9W7CAmugqI+uofioIpRb6rY30GUu7G6LUfpMvM= +github.com/ipfs/go-ipfs-ds-help v1.0.0/go.mod h1:ujAbkeIgkKAWtxxNkoZHWLCyk5JpPoKnGyCcsoF6ueE= +github.com/ipfs/go-ipfs-ds-help v1.0.1-0.20211021144140-78d1c9a619c0/go.mod h1:gZdWd5deBEkXDdXaSO7HMMfnW0RIKlDd8AOHqqzMuNE= +github.com/ipfs/go-ipfs-ds-help v1.1.0 h1:yLE2w9RAsl31LtfMt91tRZcrx+e61O5mDxFRR994w4Q= +github.com/ipfs/go-ipfs-ds-help v1.1.0/go.mod h1:YR5+6EaebOhfcqVCyqemItCLthrpVNot+rsOU/5IatU= github.com/ipfs/go-ipfs-exchange-interface v0.0.1/go.mod h1:c8MwfHjtQjPoDyiy9cFquVtVHkO9b9Ob3FG91qJnWCM= -github.com/ipfs/go-ipfs-exchange-offline v0.0.1 h1:P56jYKZF7lDDOLx5SotVh5KFxoY6C81I1NSHW1FxGew= +github.com/ipfs/go-ipfs-exchange-interface v0.0.2-0.20211014020636-09b81e768d27/go.mod h1:ych7WPlyHqFvCi/uQI48zLZuAWVP5iTQPXEfVaw5WEI= +github.com/ipfs/go-ipfs-exchange-interface v0.1.0 h1:TiMekCrOGQuWYtZO3mf4YJXDIdNgnKWZ9IE3fGlnWfo= +github.com/ipfs/go-ipfs-exchange-interface v0.1.0/go.mod h1:ych7WPlyHqFvCi/uQI48zLZuAWVP5iTQPXEfVaw5WEI= github.com/ipfs/go-ipfs-exchange-offline v0.0.1/go.mod h1:WhHSFCVYX36H/anEKQboAzpUws3x7UeEGkzQc3iNkM0= +github.com/ipfs/go-ipfs-exchange-offline v0.0.2-0.20211014025315-2ca6cf1a74ed/go.mod h1:b/N+HjFEAUYr9BZPB1PM0CBtZ5wucQ5N/SAexwlNVsk= +github.com/ipfs/go-ipfs-exchange-offline v0.0.2-0.20211021172443-b25d5f766afc/go.mod h1:Q6YqiJOkBf8DYOxtLuABHEyfJnuewstrkmhVLIJ2FZY= +github.com/ipfs/go-ipfs-exchange-offline v0.1.0 h1:vqooQYYSh7zmFt+HeCS1dacY1wKnEDBhy0wHX/cVmgU= +github.com/ipfs/go-ipfs-exchange-offline v0.1.0/go.mod h1:YdJXa+yPF1na+gfYHYejtLwHFpuKv22eatApNiSfanM= github.com/ipfs/go-ipfs-files v0.0.3/go.mod h1:INEFm0LL2LWXBhNJ2PMIIb2w45hpXgPjNoE7yA8Y1d4= github.com/ipfs/go-ipfs-files v0.0.8/go.mod h1:wiN/jSG8FKyk7N0WyctKSvq3ljIa2NNTiZB55kpTdOs= github.com/ipfs/go-ipfs-files v0.0.9 h1:OFyOfmuVDu9c5YtjSDORmwXzE6fmZikzZpzsnNkgFEg= github.com/ipfs/go-ipfs-files v0.0.9/go.mod h1:aFv2uQ/qxWpL/6lidWvnSQmaVqCrf0TBGoUr+C1Fo84= github.com/ipfs/go-ipfs-keystore v0.0.2 h1:Fa9xg9IFD1VbiZtrNLzsD0GuELVHUFXCWF64kCPfEXU= github.com/ipfs/go-ipfs-keystore v0.0.2/go.mod h1:H49tRmibOEs7gLMgbOsjC4dqh1u5e0R/SWuc2ScfgSo= -github.com/ipfs/go-ipfs-pinner v0.1.2 h1:Ve9OBhL6eg5+tVqEnIhPZOCXDtMjB+OhOohVZxPUxms= -github.com/ipfs/go-ipfs-pinner v0.1.2/go.mod h1:/u9kMe+TyQybN21O5OBicdyx3x93lVI77PCtiTnArUk= +github.com/ipfs/go-ipfs-pinner v0.1.3-0.20211022224820-71e2b1511fd2 h1:woKharU9lXw2UpoCenKI7YxF1aWf98zjHHOjrqt3Od0= +github.com/ipfs/go-ipfs-pinner v0.1.3-0.20211022224820-71e2b1511fd2/go.mod h1:e+U6R9aIJbuOSKiLQXLeXLijmiH45sjnnt5cssaZSZU= github.com/ipfs/go-ipfs-posinfo v0.0.1 h1:Esoxj+1JgSjX0+ylc0hUmJCOv6V2vFoZiETLR6OtpRs= github.com/ipfs/go-ipfs-posinfo v0.0.1/go.mod h1:SwyeVP+jCwiDu0C313l/8jg6ZxM0qqtlt2a0vILTc1A= github.com/ipfs/go-ipfs-pq v0.0.1/go.mod h1:LWIqQpqfRG3fNc5XsnIhz/wQ2XXGyugQwls7BgUmUfY= github.com/ipfs/go-ipfs-pq v0.0.2 h1:e1vOOW6MuOwG2lqxcLA+wEn93i/9laCY8sXAw76jFOY= github.com/ipfs/go-ipfs-pq v0.0.2/go.mod h1:LWIqQpqfRG3fNc5XsnIhz/wQ2XXGyugQwls7BgUmUfY= -github.com/ipfs/go-ipfs-provider v0.6.1 h1:4VenAH1J5XH+/mgM2Y7p+QN3wlk7CInMDG8rsT2CGW4= -github.com/ipfs/go-ipfs-provider v0.6.1/go.mod h1:I4Cig3InhftbRJohph76Qy/P2uKEZILNGiKvDJmmC28= +github.com/ipfs/go-ipfs-provider v0.6.2-0.20211025183630-eb8461370f74 h1:Fo5c32l8qtZ2rEoK+5aKhSQNSV2X3kGX5xhQFyYLCNI= +github.com/ipfs/go-ipfs-provider v0.6.2-0.20211025183630-eb8461370f74/go.mod h1:ri2zPI2U0SheIKhUKwix6OLc3Nrjre92Gjj+SHRwck4= github.com/ipfs/go-ipfs-routing v0.0.1/go.mod h1:k76lf20iKFxQTjcJokbPM9iBXVXVZhcOwc360N4nuKs= -github.com/ipfs/go-ipfs-routing v0.1.0 h1:gAJTT1cEeeLj6/DlLX6t+NxD9fQe2ymTO6qWRDI/HQQ= github.com/ipfs/go-ipfs-routing v0.1.0/go.mod h1:hYoUkJLyAUKhF58tysKpids8RNDPO42BVMgK5dNsoqY= +github.com/ipfs/go-ipfs-routing v0.1.1-0.20211014021338-c0dedb93d93e/go.mod h1:Gf2fktKBGHSy23DE4RNkTnQfcGgR14ELXjr9Yir/rDw= +github.com/ipfs/go-ipfs-routing v0.1.1-0.20211021165451-974b07c4f8ac/go.mod h1:L9QyysskWASyD/aWxSYqZOwIWUlFz02J0cr3b9DRDHE= +github.com/ipfs/go-ipfs-routing v0.2.0 h1:EwcBZMi72MTTEuH/7a2lbXtmeO6X0COoQGWqUOGq0KU= +github.com/ipfs/go-ipfs-routing v0.2.0/go.mod h1:384byD/LHKhAgKE3NmwOjXCpDzhczROMBzidoYV7tfM= github.com/ipfs/go-ipfs-util v0.0.1/go.mod h1:spsl5z8KUnrve+73pOhSVZND1SIxPW5RyBCNzQxlJBc= github.com/ipfs/go-ipfs-util v0.0.2 h1:59Sswnk1MFaiq+VcaknX7aYEyGyGDAA73ilhEK2POp8= github.com/ipfs/go-ipfs-util v0.0.2/go.mod h1:CbPtkWJzjLdEcezDns2XYaehFVNXG9zrdrtMecczcsQ= @@ -509,10 +527,9 @@ github.com/ipfs/go-ipld-git v0.1.1 h1:TWGnZjS0htmEmlMFEkA3ogrNCqWjIxwr16x1OsdhG+ github.com/ipfs/go-ipld-git v0.1.1/go.mod h1:+VyMqF5lMcJh4rwEppV0e6g4nCCHXThLYYDpKUkJubI= github.com/ipfs/go-ipld-legacy v0.1.0 h1:wxkkc4k8cnvIGIjPO0waJCe7SHEyFgl+yQdafdjGrpA= github.com/ipfs/go-ipld-legacy v0.1.0/go.mod h1:86f5P/srAmh9GcIcWQR9lfFLZPrIyyXQeVlOWeeWEuI= -github.com/ipfs/go-ipns v0.0.2/go.mod h1:WChil4e0/m9cIINWLxZe1Jtf77oz5L05rO2ei/uKJ5U= -github.com/ipfs/go-ipns v0.1.0/go.mod h1:3IbsuPkR6eAGcnx+E7j6HpOSbSQJPZ6zlRj+NK3jPxQ= -github.com/ipfs/go-ipns v0.1.2 h1:O/s/0ht+4Jl9+VoxoUo0zaHjnZUS+aBQIKTuzdZ/ucI= github.com/ipfs/go-ipns v0.1.2/go.mod h1:ioQ0j02o6jdIVW+bmi18f4k2gRf0AV3kZ9KeHYHICnQ= +github.com/ipfs/go-ipns v0.1.3-0.20211021182412-45a1d75e1913 h1:sg/2RUNmW9DBW7UAncugF4cbYoGMH9NPr7ikbEImwkA= +github.com/ipfs/go-ipns v0.1.3-0.20211021182412-45a1d75e1913/go.mod h1:48Cxh5e20B5IKDZkIpu5hdBxQXCRta1x0PtXE+oxVNw= github.com/ipfs/go-log v0.0.1/go.mod h1:kL1d2/hzSpI0thNYjiKfjanbVNU+IIGA/WnNESY9leM= github.com/ipfs/go-log v1.0.2/go.mod h1:1MNjMxe0u6xvJZgeqbJ8vdo2TKaGwZ1a0Bpza+sr2Sk= github.com/ipfs/go-log v1.0.3/go.mod h1:OsLySYkwIbiSUR/yBTdv1qPtcE4FW3WPWk/ewz9Ru+A= @@ -527,46 +544,42 @@ github.com/ipfs/go-log/v2 v2.1.3/go.mod h1:/8d0SH3Su5Ooc31QlL1WysJhvyOTDCjcCZ9Ax github.com/ipfs/go-log/v2 v2.3.0 h1:31Re/cPqFHpsRHgyVwjWADPoF0otB1WrjTy8ZFYwEZU= github.com/ipfs/go-log/v2 v2.3.0/go.mod h1:QqGoj30OTpnKaG/LKTGTxoP2mmQtjVMEnK72gynbe/g= github.com/ipfs/go-merkledag v0.0.6/go.mod h1:QYPdnlvkOg7GnQRofu9XZimC5ZW5Wi3bKys/4GQQfto= -github.com/ipfs/go-merkledag v0.1.0/go.mod h1:SQiXrtSts3KGNmgOzMICy5c0POOpUNQLvB3ClKnBAlk= github.com/ipfs/go-merkledag v0.2.3/go.mod h1:SQiXrtSts3KGNmgOzMICy5c0POOpUNQLvB3ClKnBAlk= -github.com/ipfs/go-merkledag v0.3.0/go.mod h1:4pymaZLhSLNVuiCITYrpViD6vmfZ/Ws4n/L9tfNv3S4= -github.com/ipfs/go-merkledag v0.3.1/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= github.com/ipfs/go-merkledag v0.3.2/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= -github.com/ipfs/go-merkledag v0.4.0 h1:ixNu/5MJSaT/Qs073T0/HsWKwnOoBgqSq1g+GaJIen0= -github.com/ipfs/go-merkledag v0.4.0/go.mod h1:XshXBkhyeS63YNGisLL1uDSfuTyrQIxVUOg3ojR5MOE= +github.com/ipfs/go-merkledag v0.4.1-0.20211021173557-0a82a88636ed/go.mod h1:eHbsmSHRG7Q1TTUrS2Ng1iMO/JvYon3no6enuGmOFo8= +github.com/ipfs/go-merkledag v0.5.0 h1:x2Udpb18vb/Heezb2mPB6JWKbQmdWuELezhEjWGfJ6Y= +github.com/ipfs/go-merkledag v0.5.0/go.mod h1:9YMxNT8e1R2hPph9x++VwBdA2kFoClsC1gml4NVAM2o= github.com/ipfs/go-metrics-interface v0.0.1 h1:j+cpbjYvu4R8zbleSs36gvB7jR+wsL2fGD6n0jO4kdg= github.com/ipfs/go-metrics-interface v0.0.1/go.mod h1:6s6euYU4zowdslK0GKHmqaIZ3j/b/tL7HTWtJ4VPgWY= github.com/ipfs/go-metrics-prometheus v0.0.2 h1:9i2iljLg12S78OhC6UAiXi176xvQGiZaGVF1CUVdE+s= github.com/ipfs/go-metrics-prometheus v0.0.2/go.mod h1:ELLU99AQQNi+zX6GCGm2lAgnzdSH3u5UVlCdqSXnEks= -github.com/ipfs/go-mfs v0.1.2 h1:DlelNSmH+yz/Riy0RjPKlooPg0KML4lXGdLw7uZkfAg= -github.com/ipfs/go-mfs v0.1.2/go.mod h1:T1QBiZPEpkPLzDqEJLNnbK55BVKVlNi2a+gVm4diFo0= -github.com/ipfs/go-namesys v0.3.1 h1:DqmeXlVODejOyECAqoqhSB5JGRv8aRFhtG0oPDmxsMc= -github.com/ipfs/go-namesys v0.3.1/go.mod h1:/BL4xk8LP5Lq82AmaRKyxZv/eYRlumNiU9SZUe1Hlps= +github.com/ipfs/go-mfs v0.1.3-0.20211025170123-e41b40a71677 h1:6BjfrUgvsu25jNxnJCN7icyPSMH2mzVM59uQWC0mQtw= +github.com/ipfs/go-mfs v0.1.3-0.20211025170123-e41b40a71677/go.mod h1:YV7gpQTnnRseqpAfbx1vNmDaYc/J8LaFevx22mriY1M= +github.com/ipfs/go-namesys v0.3.2-0.20211025145726-331d6bea5fc9 h1:ad38haT8r6HSrO1QMKgCB1E/6KI2auF8VHna8ZmfdQo= +github.com/ipfs/go-namesys v0.3.2-0.20211025145726-331d6bea5fc9/go.mod h1:fV5uYdxMWXSWvhD3HTMrC/xCLqxpRnY45FlXUWSJN/o= github.com/ipfs/go-path v0.0.7/go.mod h1:6KTKmeRnBXgqrTvzFrPV3CamxcgvXX/4z79tfAd2Sno= -github.com/ipfs/go-path v0.0.9/go.mod h1:VpDkSBKQ9EFQOUgi54Tq/O/tGi8n1RfYNks13M3DEs8= -github.com/ipfs/go-path v0.1.1/go.mod h1:vC8q4AKOtrjJz2NnllIrmr2ZbGlF5fW2OKKyhV9ggb0= -github.com/ipfs/go-path v0.1.2 h1:yQxN9JNhO4KbaaYtVgVpIH0BQDzn5Zpl5A6to93O7Ck= -github.com/ipfs/go-path v0.1.2/go.mod h1:3DdbxZb0PtT0g3UlMqyzms1UBKPc0pQ2NHx5/XScYdY= +github.com/ipfs/go-path v0.1.3-0.20211021180819-6f599234c77d h1:6YGyDvRY/FlpzSKq5zPy7RnPxNx9nsdROwANG0VrEP4= +github.com/ipfs/go-path v0.1.3-0.20211021180819-6f599234c77d/go.mod h1:DvdS+ff8kQby6pkjBl4LZQlVdM+5LTIcKoHWqf4MekI= github.com/ipfs/go-peertaskqueue v0.0.4/go.mod h1:03H8fhyeMfKNFWqzYEVyMbcPUeYrqP1MX6Kd+aN+rMQ= github.com/ipfs/go-peertaskqueue v0.1.0/go.mod h1:Jmk3IyCcfl1W3jTW3YpghSwSEC6IJ3Vzz/jUmWw8Z0U= github.com/ipfs/go-peertaskqueue v0.1.1/go.mod h1:Jmk3IyCcfl1W3jTW3YpghSwSEC6IJ3Vzz/jUmWw8Z0U= github.com/ipfs/go-peertaskqueue v0.2.0/go.mod h1:5/eNrBEbtSKWCG+kQK8K8fGNixoYUnr+P7jivavs9lY= -github.com/ipfs/go-peertaskqueue v0.4.0 h1:x1hFgA4JOUJ3ntPfqLRu6v4k6kKL0p07r3RSg9JNyHI= github.com/ipfs/go-peertaskqueue v0.4.0/go.mod h1:KL9F49hXJMoXCad8e5anivjN+kWdr+CyGcyh4K6doLc= +github.com/ipfs/go-peertaskqueue v0.6.0/go.mod h1:M/akTIE/z1jGNXMU7kFB4TeSEFvj68ow0Rrb04donIU= +github.com/ipfs/go-peertaskqueue v0.7.0 h1:VyO6G4sbzX80K58N60cCaHsSsypbUNs1GjO5seGNsQ0= +github.com/ipfs/go-peertaskqueue v0.7.0/go.mod h1:M/akTIE/z1jGNXMU7kFB4TeSEFvj68ow0Rrb04donIU= github.com/ipfs/go-pinning-service-http-client v0.1.0 h1:Au0P4NglL5JfzhNSZHlZ1qra+IcJyO3RWMd9EYCwqSY= github.com/ipfs/go-pinning-service-http-client v0.1.0/go.mod h1:tcCKmlkWWH9JUUkKs8CrOZBanacNc1dmKLfjlyXAMu4= -github.com/ipfs/go-unixfs v0.1.0/go.mod h1:lysk5ELhOso8+Fed9U1QTGey2ocsfaZ18h0NCO2Fj9s= github.com/ipfs/go-unixfs v0.2.4/go.mod h1:SUdisfUjNoSDzzhGVxvCL9QO/nKdwXdr+gbMUdqcbYw= -github.com/ipfs/go-unixfs v0.2.5 h1:irj/WzIcgTBay48mSMUYDbKlIzIocXWcuUUsi5qOMOE= -github.com/ipfs/go-unixfs v0.2.5/go.mod h1:SUdisfUjNoSDzzhGVxvCL9QO/nKdwXdr+gbMUdqcbYw= -github.com/ipfs/go-unixfsnode v1.1.2/go.mod h1:5dcE2x03pyjHk4JjamXmunTMzz+VUtqvPwZjIEkfV6s= -github.com/ipfs/go-unixfsnode v1.1.3 h1:IyqJBGIEvcHvll1wDDVIHOEVXnE+IH6tjzTWpZ6kGiI= -github.com/ipfs/go-unixfsnode v1.1.3/go.mod h1:ZZxUM5wXBC+G0Co9FjrYTOm+UlhZTjxLfRYdWY9veZ4= +github.com/ipfs/go-unixfs v0.2.7-0.20211021174028-9e137ae83d40 h1:0MM0IY/RSdihkbhNe2NbHfh5T0yRmnnqjSbAjKngrTw= +github.com/ipfs/go-unixfs v0.2.7-0.20211021174028-9e137ae83d40/go.mod h1:zjzgJ3XM2HIHlhhrxtM8oz2a3npqm69Kb04JF3o/msA= +github.com/ipfs/go-unixfsnode v1.1.4-0.20211021180004-3d0f9aae0add h1:j3rwiL5GUZFhcIioskV8WxD6l9ig07bstqo3UDp6itA= +github.com/ipfs/go-unixfsnode v1.1.4-0.20211021180004-3d0f9aae0add/go.mod h1:icRYylHN0B9rLixzxzzNOvPRiy9aRmump0QqJvOWPTA= github.com/ipfs/go-verifcid v0.0.1 h1:m2HI7zIuR5TFyQ1b79Da5N9dnnCP1vcu2QqawmWlK2E= github.com/ipfs/go-verifcid v0.0.1/go.mod h1:5Hrva5KBeIog4A+UpqlaIU+DEstipcJYQQZc0g37pY0= github.com/ipfs/interface-go-ipfs-core v0.4.0/go.mod h1:UJBcU6iNennuI05amq3FQ7g0JHUkibHFAfhfUIy927o= -github.com/ipfs/interface-go-ipfs-core v0.5.1 h1:1KMM7RkjUD8W5fSoRsa9xR6ZMzeL8fLHOUM1UEW9Y4M= -github.com/ipfs/interface-go-ipfs-core v0.5.1/go.mod h1:lNBJrdXHtWS46evMPBdWtDQMDsrKcGbxCOGoKLkztOE= +github.com/ipfs/interface-go-ipfs-core v0.5.3-0.20211022223836-cc09e6f38bc4 h1:F+g09aju6e0nktDdrTADB6uMBDzkv+I6Cdf8udsB0x0= +github.com/ipfs/interface-go-ipfs-core v0.5.3-0.20211022223836-cc09e6f38bc4/go.mod h1:TQFoEPMV5jYgITU1f17U8ijesZi/+nCOvH9k3yooDJc= github.com/ipfs/tar-utils v0.0.1 h1:8Na0KBD6GddGyXwU4rXNtVTE24iuZws8mENJQPLG7W4= github.com/ipfs/tar-utils v0.0.1/go.mod h1:ACflm9wXvV9w0eMJt6yYXxS2zuIV+yXGNwbuq1bhLeE= github.com/ipld/go-car v0.3.2 h1:V9wt/80FNfbMRWSD98W5br6fyjUAyVgI2lDOTZX16Lg= @@ -577,8 +590,9 @@ github.com/ipld/go-codec-dagpb v1.3.0/go.mod h1:ga4JTU3abYApDC3pZ00BC2RSvC3qfBb9 github.com/ipld/go-ipld-prime v0.9.0/go.mod h1:KvBLMr4PX1gWptgkzRjVZCrLmSGcZCb/jioOQwCqZN8= github.com/ipld/go-ipld-prime v0.9.1-0.20210324083106-dc342a9917db/go.mod h1:KvBLMr4PX1gWptgkzRjVZCrLmSGcZCb/jioOQwCqZN8= github.com/ipld/go-ipld-prime v0.11.0/go.mod h1:+WIAkokurHmZ/KwzDOMUuoeJgaRQktHtEaLglS3ZeV8= -github.com/ipld/go-ipld-prime v0.12.3 h1:furVobw7UBLQZwlEwfE26tYORy3PAK8VYSgZOSr3JMQ= github.com/ipld/go-ipld-prime v0.12.3/go.mod h1:PaeLYq8k6dJLmDUSLrzkEpoGV4PEfe/1OtFN/eALOc8= +github.com/ipld/go-ipld-prime v0.12.4-0.20211014180653-3ba656a3bc6b h1:rrGbdP3zuD8NmVJ/FKju8zSaskYNMXhgjJ2DsgKSdY4= +github.com/ipld/go-ipld-prime v0.12.4-0.20211014180653-3ba656a3bc6b/go.mod h1:PaeLYq8k6dJLmDUSLrzkEpoGV4PEfe/1OtFN/eALOc8= github.com/jackpal/gateway v1.0.5/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= github.com/jackpal/go-nat-pmp v1.0.1/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus= @@ -677,11 +691,11 @@ github.com/libp2p/go-libp2p v0.7.4/go.mod h1:oXsBlTLF1q7pxr+9w6lqzS1ILpyHsaBPniV github.com/libp2p/go-libp2p v0.8.1/go.mod h1:QRNH9pwdbEBpx5DTJYg+qxcVaDMAz3Ee/qDKwXujH5o= github.com/libp2p/go-libp2p v0.12.0/go.mod h1:FpHZrfC1q7nA8jitvdjKBDF31hguaC676g/nT9PgQM0= github.com/libp2p/go-libp2p v0.13.0/go.mod h1:pM0beYdACRfHO1WcJlp65WXyG2A6NqYM+t2DTVAJxMo= -github.com/libp2p/go-libp2p v0.14.0/go.mod h1:dsQrWLAoIn+GkHPN/U+yypizkHiB9tnv79Os+kSgQ4Q= github.com/libp2p/go-libp2p v0.14.3/go.mod h1:d12V4PdKbpL0T1/gsUNN8DfgMuRPDX8bS2QxCZlwRH0= github.com/libp2p/go-libp2p v0.14.4/go.mod h1:EIRU0Of4J5S8rkockZM7eJp2S0UrCyi55m2kJVru3rM= -github.com/libp2p/go-libp2p v0.16.0-dev.0.20211021081216-db8f9c6fddb5 h1:0/PN8zyD0sYDPPE3mEVTJtzXZo1xG0QJ5moceb3iBEM= -github.com/libp2p/go-libp2p v0.16.0-dev.0.20211021081216-db8f9c6fddb5/go.mod h1:P+WgjkSS2d8eBj+NvkyKo0nb8fJAC04G+cCex0ZMcvI= +github.com/libp2p/go-libp2p v0.15.0-rc.1.0.20211021143439-bd397678454c/go.mod h1:fi0wsTNHo+DmuAEdtyi64XK0FzEXzr65HzDdl6kTnCM= +github.com/libp2p/go-libp2p v0.16.0-dev.0.20211114124005-3c4b16f2dbf6 h1:FjApBwLeEa4+aUbIW3fYUR15RcogWWHKoQUcweeQyi4= +github.com/libp2p/go-libp2p v0.16.0-dev.0.20211114124005-3c4b16f2dbf6/go.mod h1:FD8rjfPcFVABY1DZDt9zKVRhNDiPdEfCrFnAJzjt6A4= github.com/libp2p/go-libp2p-asn-util v0.0.0-20200825225859-85005c6cf052/go.mod h1:nRMRTab+kZuk0LnKZpxhOVH/ndsdr2Nr//Zltc/vwgo= github.com/libp2p/go-libp2p-asn-util v0.1.0 h1:rABPCO77SjdbJ/eJ/ynIo8vWICy1VEnL5JAxJbQLo1E= github.com/libp2p/go-libp2p-asn-util v0.1.0/go.mod h1:wu+AnM9Ii2KgO5jMmS1rz9dvzTdj8BXqsPR9HR0XB7I= @@ -693,8 +707,9 @@ github.com/libp2p/go-libp2p-autonat v0.2.1/go.mod h1:MWtAhV5Ko1l6QBsHQNSuM6b1sRk github.com/libp2p/go-libp2p-autonat v0.2.2/go.mod h1:HsM62HkqZmHR2k1xgX34WuWDzk/nBwNHoeyyT4IWV6A= github.com/libp2p/go-libp2p-autonat v0.4.0/go.mod h1:YxaJlpr81FhdOv3W3BTconZPfhaYivRdf53g+S2wobk= github.com/libp2p/go-libp2p-autonat v0.4.2/go.mod h1:YxaJlpr81FhdOv3W3BTconZPfhaYivRdf53g+S2wobk= -github.com/libp2p/go-libp2p-autonat v0.5.0 h1:/+3+4NcQV47DQ/duvRyFDP8oxv6CQTvSKYD5iWoPcYs= -github.com/libp2p/go-libp2p-autonat v0.5.0/go.mod h1:085tmmuXn0nXgFwuF7a2tt4UxgTjuapbuml27v4htKY= +github.com/libp2p/go-libp2p-autonat v0.5.1-0.20211021135006-7e970eb3f79e/go.mod h1:vCoV/wUhEYLdopC/y7cTgjtPG2MD/LSk/JhEWUQ7qsI= +github.com/libp2p/go-libp2p-autonat v0.6.0 h1:+vbQ1pMzMGjE/RJopiQKK2FRjdCKHPNPrkPm8u+luQU= +github.com/libp2p/go-libp2p-autonat v0.6.0/go.mod h1:bFC6kY8jwzNNWoqc8iGE57vsfwyJ/lP4O4DOV1e0B2o= github.com/libp2p/go-libp2p-blankhost v0.0.1/go.mod h1:Ibpbw/7cPPYwFb7PACIWdvxxv0t0XCCI10t7czjAjTc= github.com/libp2p/go-libp2p-blankhost v0.1.1/go.mod h1:pf2fvdLJPsC1FsVrNP3DUUvMzUts2dsLLBEpo1vW1ro= github.com/libp2p/go-libp2p-blankhost v0.1.4/go.mod h1:oJF0saYsAXQCSfDq254GMNmLNz6ZTHTOvtF4ZydUvwU= @@ -704,8 +719,9 @@ github.com/libp2p/go-libp2p-circuit v0.0.9/go.mod h1:uU+IBvEQzCu953/ps7bYzC/D/R0 github.com/libp2p/go-libp2p-circuit v0.1.0/go.mod h1:Ahq4cY3V9VJcHcn1SBXjr78AbFkZeIRmfunbA7pmFh8= github.com/libp2p/go-libp2p-circuit v0.1.4/go.mod h1:CY67BrEjKNDhdTk8UgBX1Y/H5c3xkAcs3gnksxY7osU= github.com/libp2p/go-libp2p-circuit v0.2.1/go.mod h1:BXPwYDN5A8z4OEY9sOfr2DUQMLQvKt/6oku45YUmjIo= -github.com/libp2p/go-libp2p-circuit v0.4.0 h1:eqQ3sEYkGTtybWgr6JLqJY6QLtPWRErvFjFDfAOO1wc= github.com/libp2p/go-libp2p-circuit v0.4.0/go.mod h1:t/ktoFIUzM6uLQ+o1G6NuBl2ANhBKN9Bc8jRIk31MoA= +github.com/libp2p/go-libp2p-circuit v0.4.1-0.20211021135405-9f62fc48c966 h1:9zHQhVLjbRrAtjMse5g92vjk10koeduLmEMjuVUsLJc= +github.com/libp2p/go-libp2p-circuit v0.4.1-0.20211021135405-9f62fc48c966/go.mod h1:4KQmMdXxsQS+xoCjAX9Ed1d4PP6UFSxnZ1qrB+4w82Q= github.com/libp2p/go-libp2p-connmgr v0.2.4 h1:TMS0vc0TCBomtQJyWr7fYxcVYYhx+q/2gF++G5Jkl/w= github.com/libp2p/go-libp2p-connmgr v0.2.4/go.mod h1:YV0b/RIm8NGPnnNWM7hG9Q38OeQiQfKhHCCs1++ufn0= github.com/libp2p/go-libp2p-core v0.0.1/go.mod h1:g/VxnTZ/1ygHxH3dKok7Vno1VfpvGcGip57wjTU4fco= @@ -746,8 +762,9 @@ github.com/libp2p/go-libp2p-discovery v0.1.0/go.mod h1:4F/x+aldVHjHDHuX85x1zWoFT github.com/libp2p/go-libp2p-discovery v0.2.0/go.mod h1:s4VGaxYMbw4+4+tsoQTqh7wfxg97AEdo4GYBt6BadWg= github.com/libp2p/go-libp2p-discovery v0.3.0/go.mod h1:o03drFnz9BVAZdzC/QUQ+NeQOu38Fu7LJGEOK2gQltw= github.com/libp2p/go-libp2p-discovery v0.5.0/go.mod h1:+srtPIU9gDaBNu//UHvcdliKBIcr4SfDcm0/PfPJLug= -github.com/libp2p/go-libp2p-discovery v0.5.1 h1:CJylx+h2+4+s68GvrM4pGNyfNhOYviWBPtVv5PA7sfo= -github.com/libp2p/go-libp2p-discovery v0.5.1/go.mod h1:+srtPIU9gDaBNu//UHvcdliKBIcr4SfDcm0/PfPJLug= +github.com/libp2p/go-libp2p-discovery v0.5.2-0.20211021135804-b6a744d6c24a/go.mod h1:oYfiX/Fkr/JPvg2o1tfZzIEtPwyf2xizt//LvSI77sA= +github.com/libp2p/go-libp2p-discovery v0.6.0 h1:1XdPmhMJr8Tmj/yUfkJMIi8mgwWrLUsCB3bMxdT+DSo= +github.com/libp2p/go-libp2p-discovery v0.6.0/go.mod h1:/u1voHt0tKIe5oIA1RHBKQLVCWPna2dXmPNHc2zR9S8= github.com/libp2p/go-libp2p-gostream v0.3.0 h1:rnas//vRdHYCr7bjraZJISPwZV8OGMjeX5k5fN5Ax44= github.com/libp2p/go-libp2p-gostream v0.3.0/go.mod h1:pLBQu8db7vBMNINGsAwLL/ZCE8wng5V1FThoaE5rNjc= github.com/libp2p/go-libp2p-host v0.0.1/go.mod h1:qWd+H1yuU0m5CwzAkvbSjqKairayEHdR5MMl7Cwa7Go= @@ -758,9 +775,9 @@ github.com/libp2p/go-libp2p-interface-connmgr v0.0.1/go.mod h1:GarlRLH0LdeWcLnYM github.com/libp2p/go-libp2p-interface-connmgr v0.0.4/go.mod h1:GarlRLH0LdeWcLnYM/SaBykKFl9U5JFnbBGruAk/D5k= github.com/libp2p/go-libp2p-interface-connmgr v0.0.5/go.mod h1:GarlRLH0LdeWcLnYM/SaBykKFl9U5JFnbBGruAk/D5k= github.com/libp2p/go-libp2p-interface-pnet v0.0.1/go.mod h1:el9jHpQAXK5dnTpKA4yfCNBZXvrzdOU75zz+C6ryp3k= -github.com/libp2p/go-libp2p-kad-dht v0.11.1/go.mod h1:5ojtR2acDPqh/jXf5orWy8YGb8bHQDS+qeDcoscL/PI= -github.com/libp2p/go-libp2p-kad-dht v0.13.1 h1:wQgzOpoc+dcPVDb3h0HNWUjon5JiYEqsA4iNBUtIA7A= -github.com/libp2p/go-libp2p-kad-dht v0.13.1/go.mod h1:iVdxmsKHVPQSCGPP4V/A+tDFCLsxrREZUBX8ohOcKDw= +github.com/libp2p/go-libp2p-kad-dht v0.13.2-0.20211014221008-25acc6fe85ba/go.mod h1:2BZq2cJMIUA57fig8UYbBgmaOUYyPAheb3bgMCYRL1E= +github.com/libp2p/go-libp2p-kad-dht v0.15.0 h1:Ke+Oj78gX5UDXnA6HBdrgvi+fStJxgYTDa51U0TsCLo= +github.com/libp2p/go-libp2p-kad-dht v0.15.0/go.mod h1:rZtPxYu1TnHHz6n1RggdGrxUX/tA1C2/Wiw3ZMUDrU0= github.com/libp2p/go-libp2p-kbucket v0.3.1/go.mod h1:oyjT5O7tS9CQurok++ERgc46YLwEpuGoFq9ubvoUOio= github.com/libp2p/go-libp2p-kbucket v0.4.7 h1:spZAcgxifvFZHBD8tErvppbnNiKA5uokDu3CV7axu70= github.com/libp2p/go-libp2p-kbucket v0.4.7/go.mod h1:XyVo99AfQH0foSf176k4jY1xUJ2+jUJIZCSDm7r2YKk= @@ -805,17 +822,17 @@ github.com/libp2p/go-libp2p-peerstore v0.2.2/go.mod h1:NQxhNjWxf1d4w6PihR8btWIRj github.com/libp2p/go-libp2p-peerstore v0.2.6/go.mod h1:ss/TWTgHZTMpsU/oKVVPQCGuDHItOpf2W8RxAi50P2s= github.com/libp2p/go-libp2p-peerstore v0.2.7/go.mod h1:ss/TWTgHZTMpsU/oKVVPQCGuDHItOpf2W8RxAi50P2s= github.com/libp2p/go-libp2p-peerstore v0.2.8/go.mod h1:gGiPlXdz7mIHd2vfAsHzBNAMqSDkt2UBFwgcITgw1lA= -github.com/libp2p/go-libp2p-peerstore v0.3.0 h1:wp/G0+37+GLr7tu+wE+4GWNrA3uxKg6IPRigIMSS5oQ= -github.com/libp2p/go-libp2p-peerstore v0.3.0/go.mod h1:fNX9WlOENMvdx/YD7YO/5Hkrn8+lQIk5A39BHa1HIrM= +github.com/libp2p/go-libp2p-peerstore v0.3.1-0.20211018221143-8fa6ed334f72/go.mod h1:0LM3VLpA9RdKOdX3f4bCJm2cmdEwF9aHt9jGGroodlQ= +github.com/libp2p/go-libp2p-peerstore v0.4.0 h1:DOhRJLnM9Dc9lIXi3rPDZBf789LXy1BrzwIs7Tj0cKA= +github.com/libp2p/go-libp2p-peerstore v0.4.0/go.mod h1:rDJUFyzEWPpXpEwywkcTYYzDHlwza8riYMaUzaN6hX0= github.com/libp2p/go-libp2p-pnet v0.2.0 h1:J6htxttBipJujEjz1y0a5+eYoiPcFHhSYHH6na5f0/k= github.com/libp2p/go-libp2p-pnet v0.2.0/go.mod h1:Qqvq6JH/oMZGwqs3N1Fqhv8NVhrdYcO0BW4wssv21LA= github.com/libp2p/go-libp2p-protocol v0.0.1/go.mod h1:Af9n4PiruirSDjHycM1QuiMi/1VZNHYcK8cLgFJLZ4s= github.com/libp2p/go-libp2p-protocol v0.1.0/go.mod h1:KQPHpAabB57XQxGrXCNvbL6UEXfQqUgC/1adR2Xtflk= -github.com/libp2p/go-libp2p-pubsub v0.4.0/go.mod h1:izkeMLvz6Ht8yAISXjx60XUQZMq9ZMe5h2ih4dLIBIQ= -github.com/libp2p/go-libp2p-pubsub v0.5.4 h1:rHl9/Xok4zX3zgi0pg0XnUj9Xj2OeXO8oTu85q2+YA8= -github.com/libp2p/go-libp2p-pubsub v0.5.4/go.mod h1:gVOzwebXVdSMDQBTfH8ACO5EJ4SQrvsHqCmYsCZpD0E= -github.com/libp2p/go-libp2p-pubsub-router v0.4.0 h1:KjzTLIOBCt0+/4wH6epTxD/Qu4Up/IyeKHlj9MhWRJI= -github.com/libp2p/go-libp2p-pubsub-router v0.4.0/go.mod h1:hs0j0ugcBjMOMgJ6diOlZM2rZEId/w5Gg86E+ac4SmQ= +github.com/libp2p/go-libp2p-pubsub v0.5.6-0.20211022213958-eb85e0b9a30f h1:meKGZEUbWu/r3tyh4Vc4efmRwkViErFy2hf2iN1yvDA= +github.com/libp2p/go-libp2p-pubsub v0.5.6-0.20211022213958-eb85e0b9a30f/go.mod h1:6Q4UEwRxR3eCNCWxOvL5HlKHVQ3E8g3BzG0pcuatmDY= +github.com/libp2p/go-libp2p-pubsub-router v0.4.1-0.20211025173248-17875e5a4465 h1:JdxGWOxr5yLZIfLGkClOaQr/dGxlYFYq0IVqZKoFysw= +github.com/libp2p/go-libp2p-pubsub-router v0.4.1-0.20211025173248-17875e5a4465/go.mod h1:i9qce45RmRK8B1RNrnwgNytBwHxKNYR+5gOYMqohd1Y= github.com/libp2p/go-libp2p-quic-transport v0.10.0/go.mod h1:RfJbZ8IqXIhxBRm5hqUEJqjiiY8xmEuq3HUDS993MkA= github.com/libp2p/go-libp2p-quic-transport v0.11.2/go.mod h1:wlanzKtIh6pHrq+0U3p3DY9PJfGqxMgPaGKaK5LifwQ= github.com/libp2p/go-libp2p-quic-transport v0.13.0/go.mod h1:39/ZWJ1TW/jx1iFkKzzUg00W6tDJh73FC0xYudjr7Hc= @@ -823,7 +840,6 @@ github.com/libp2p/go-libp2p-quic-transport v0.14.0 h1:sBjT/8zKv8otFZh3Uhdxl91Bhw github.com/libp2p/go-libp2p-quic-transport v0.14.0/go.mod h1:/W4njiXIRowKk62w6j4y4dVpBZvEk9WtGOtOYh2M6J8= github.com/libp2p/go-libp2p-record v0.0.1/go.mod h1:grzqg263Rug/sRex85QrDOLntdFAymLDLm7lxMgU79Q= github.com/libp2p/go-libp2p-record v0.1.0/go.mod h1:ujNc8iuE5dlKWVy6wuL6dd58t0n7xI4hAIl8pE6wu5Q= -github.com/libp2p/go-libp2p-record v0.1.1/go.mod h1:VRgKajOyMVgP/F0L5g3kH7SVskp17vFi2xheb5uMJtg= github.com/libp2p/go-libp2p-record v0.1.2/go.mod h1:pal0eNcT5nqZaTV7UGhqeGqxFgGdsU/9W//C8dqjQDk= github.com/libp2p/go-libp2p-record v0.1.3 h1:R27hoScIhQf/A8XJZ8lYpnqh9LatJ5YbHs28kCIfql0= github.com/libp2p/go-libp2p-record v0.1.3/go.mod h1:yNUff/adKIfPnYQXgp6FQmNu3gLJ6EMg7+/vv2+9pY4= @@ -845,8 +861,9 @@ github.com/libp2p/go-libp2p-swarm v0.3.1/go.mod h1:hdv95GWCTmzkgeJpP+GK/9D9puJeg github.com/libp2p/go-libp2p-swarm v0.4.0/go.mod h1:XVFcO52VoLoo0eitSxNQWYq4D6sydGOweTOAjJNraCw= github.com/libp2p/go-libp2p-swarm v0.5.0/go.mod h1:sU9i6BoHE0Ve5SKz3y9WfKrh8dUat6JknzUehFx8xW4= github.com/libp2p/go-libp2p-swarm v0.5.3/go.mod h1:NBn7eNW2lu568L7Ns9wdFrOhgRlkRnIDg0FLKbuu3i8= -github.com/libp2p/go-libp2p-swarm v0.7.0 h1:ZohJ/XtPP0O73Y1BeCvRRfBcoBfZkqRiKmBwKQfnYGg= -github.com/libp2p/go-libp2p-swarm v0.7.0/go.mod h1:Ii3RNGBC+CMIO3BzK/hmzzriJUOkCVT7viOd+alyEPY= +github.com/libp2p/go-libp2p-swarm v0.7.1-0.20211021134106-2c0e1828d1fa/go.mod h1:inyD4FY4DNYEzsVSEnsUXe4HVJrvV/1MkGSFruNZzgo= +github.com/libp2p/go-libp2p-swarm v0.8.0 h1:nRHNRhi86L7jhka02N4MoV+PSFFPoJFkHNQwCTFxNhw= +github.com/libp2p/go-libp2p-swarm v0.8.0/go.mod h1:sOMp6dPuqco0r0GHTzfVheVBh6UEL0L1lXUZ5ot2Fvc= github.com/libp2p/go-libp2p-testing v0.0.1/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= github.com/libp2p/go-libp2p-testing v0.0.2/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= github.com/libp2p/go-libp2p-testing v0.0.3/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= @@ -887,7 +904,6 @@ github.com/libp2p/go-libp2p-yamux v0.2.8/go.mod h1:/t6tDqeuZf0INZMTgd0WxIRbtK2Ez github.com/libp2p/go-libp2p-yamux v0.4.0/go.mod h1:+DWDjtFMzoAwYLVkNZftoucn7PelNoy5nm3tZ3/Zw30= github.com/libp2p/go-libp2p-yamux v0.5.0/go.mod h1:AyR8k5EzyM2QN9Bbdg6X1SkVVuqLwTGf0L4DFq9g6po= github.com/libp2p/go-libp2p-yamux v0.5.1/go.mod h1:dowuvDu8CRWmr0iqySMiSxK+W0iL5cMVO9S94Y6gkv4= -github.com/libp2p/go-libp2p-yamux v0.5.3/go.mod h1:Vy3TMonBAfTMXHWopsMc8iX/XGRYrRlpUaMzaeuHV/s= github.com/libp2p/go-libp2p-yamux v0.5.4 h1:/UOPtT/6DHPtr3TtKXBHa6g0Le0szYuI33Xc/Xpd7fQ= github.com/libp2p/go-libp2p-yamux v0.5.4/go.mod h1:tfrXbyaTqqSU654GTvK3ocnSZL3BuHoeTSqhcel1wsE= github.com/libp2p/go-maddr-filter v0.0.1/go.mod h1:6eT12kSQMA9x2pvFQa+xesMKUBlj9VImZbj3B9FBH/Q= @@ -978,7 +994,6 @@ github.com/libp2p/go-yamux v1.4.0/go.mod h1:fr7aVgmdNGJK+N1g+b6DW6VxzbRCjCOejR/h github.com/libp2p/go-yamux v1.4.1 h1:P1Fe9vF4th5JOxxgQvfbOHkrGqIZniTLf+ddhZp8YTI= github.com/libp2p/go-yamux v1.4.1/go.mod h1:fr7aVgmdNGJK+N1g+b6DW6VxzbRCjCOejR/hkmpooHE= github.com/libp2p/go-yamux/v2 v2.0.0/go.mod h1:NVWira5+sVUIU6tu1JWvaRn1dRnG+cawOJiflsAM+7U= -github.com/libp2p/go-yamux/v2 v2.1.1/go.mod h1:3So6P6TV6r75R9jiBpiIKgU/66lOarCZjqROGxzPpPQ= github.com/libp2p/go-yamux/v2 v2.2.0 h1:RwtpYZ2/wVviZ5+3pjC8qdQ4TKnrak0/E01N1UWoAFU= github.com/libp2p/go-yamux/v2 v2.2.0/go.mod h1:3So6P6TV6r75R9jiBpiIKgU/66lOarCZjqROGxzPpPQ= github.com/libp2p/zeroconf/v2 v2.1.1 h1:XAuSczA96MYkVwH+LqqqCUZb2yH3krobMJ1YE+0hG2s= @@ -1068,8 +1083,9 @@ github.com/mr-tron/base58 v1.1.2/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjW github.com/mr-tron/base58 v1.1.3/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= -github.com/multiformats/go-base32 v0.0.3 h1:tw5+NhuwaOjJCC5Pp82QuXbrmLzWg7uxlMFp8Nq/kkI= github.com/multiformats/go-base32 v0.0.3/go.mod h1:pLiuGC8y0QR3Ue4Zug5UzK9LjgbkL8NSQj0zQ5Nz/AA= +github.com/multiformats/go-base32 v0.0.4 h1:+qMh4a2f37b4xTNs6mqitDinryCI+tfO2dRVMN9mjSE= +github.com/multiformats/go-base32 v0.0.4/go.mod h1:jNLFzjPZtp3aIARHbJRZIaPuspdH0J6q39uUM5pnABM= github.com/multiformats/go-base36 v0.1.0 h1:JR6TyF7JjGd3m6FbLU2cOxhC0Li8z8dLNGQ89tUg4F4= github.com/multiformats/go-base36 v0.1.0/go.mod h1:kFGE83c6s80PklsHO9sRn2NCoffoRdUUOENyW/Vv6sM= github.com/multiformats/go-multiaddr v0.0.1/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= @@ -1115,8 +1131,10 @@ github.com/multiformats/go-multihash v0.0.9/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa github.com/multiformats/go-multihash v0.0.10/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa63epEDmG8nTduyAew= github.com/multiformats/go-multihash v0.0.13/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= github.com/multiformats/go-multihash v0.0.14/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= -github.com/multiformats/go-multihash v0.0.15 h1:hWOPdrNqDjwHDx82vsYGSDZNyktOJJ2dzZJzFkOV1jM= github.com/multiformats/go-multihash v0.0.15/go.mod h1:D6aZrWNLFTV/ynMpKsNtB40mJzmCl4jb1alC0OvHiHg= +github.com/multiformats/go-multihash v0.0.16/go.mod h1:zhfEIgVnB/rPMfxgFw15ZmGoNaKyNUIE4IWHG/kC+Ag= +github.com/multiformats/go-multihash v0.0.17-0.20211012170226-654b06d7912a h1:zq4kIpOSKshyuBTNmPMRG/XIP5PlH4M+kk3kz7FbSoU= +github.com/multiformats/go-multihash v0.0.17-0.20211012170226-654b06d7912a/go.mod h1:rhm8ul8hQFEC1hEgrxrvkY/k/k8aOTRKanxCPVANMQs= github.com/multiformats/go-multistream v0.0.1/go.mod h1:fJTiDfXJVmItycydCnNx4+wSzZ5NwG2FEVAI30fiovg= github.com/multiformats/go-multistream v0.0.4/go.mod h1:fJTiDfXJVmItycydCnNx4+wSzZ5NwG2FEVAI30fiovg= github.com/multiformats/go-multistream v0.1.0/go.mod h1:fJTiDfXJVmItycydCnNx4+wSzZ5NwG2FEVAI30fiovg= @@ -1461,8 +1479,10 @@ golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWP golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210506145944-38f3c27a63bf/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= -golang.org/x/crypto v0.0.0-20210813211128-0a44fdfbc16e h1:VvfwVmMH40bpMeizC9/K7ipM5Qjucuu16RWfneFPyhQ= +golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210813211128-0a44fdfbc16e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 h1:7I4JAnoQBe7ZtJcBaYHi5UtiO8tQHbUSXxL+pnGRANg= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -1496,7 +1516,6 @@ golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzB golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= 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.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2 h1:Gz96sIWK3OalVv/I/qNygP42zyoKp3xptRVCWRFEBvo= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1656,8 +1675,10 @@ golang.org/x/sys v0.0.0-20210511113859-b0526f3d8744/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912 h1:uCLL3g5wH2xjxVREVuAbP9JM5PPKjRbXKRa6IBjkzmU= +golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211025112917-711f33c9992c h1:i4MLwL3EbCgobekQtkVW94UBSPLMadfEGtKq+CAFsEU= +golang.org/x/sys v0.0.0-20211025112917-711f33c9992c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -1729,7 +1750,6 @@ golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.1-0.20210225150353-54dc8c5edb56/go.mod h1:9bzcO0MWcOuT0tm1iBGzDVPshzfwoVvREIui8C+MHqU= golang.org/x/tools v0.1.1 h1:wGiQel/hW0NnEkJUk8lbzkX2gFJU6PFxf1v5OlCfuOs= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1881,6 +1901,8 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +lukechampine.com/blake3 v1.1.6 h1:H3cROdztr7RCfoaTpGZFQsrqvweFLrqS73j7L7cmR5c= +lukechampine.com/blake3 v1.1.6/go.mod h1:tkKEOtDkNtklkXtLNEOGNq5tcV90tJiA1vAA12R78LA= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/repo/fsrepo/fsrepo.go b/repo/fsrepo/fsrepo.go index dcb09e979a7..a5152a831c9 100644 --- a/repo/fsrepo/fsrepo.go +++ b/repo/fsrepo/fsrepo.go @@ -1,6 +1,7 @@ package fsrepo import ( + "context" "errors" "fmt" "io" @@ -660,8 +661,8 @@ func (r *FSRepo) Datastore() repo.Datastore { } // GetStorageUsage computes the storage space taken by the repo in bytes -func (r *FSRepo) GetStorageUsage() (uint64, error) { - return ds.DiskUsage(r.Datastore()) +func (r *FSRepo) GetStorageUsage(ctx context.Context) (uint64, error) { + return ds.DiskUsage(ctx, r.Datastore()) } func (r *FSRepo) SwarmKey() ([]byte, error) { diff --git a/repo/mock.go b/repo/mock.go index 298a49a298d..0576498716a 100644 --- a/repo/mock.go +++ b/repo/mock.go @@ -1,6 +1,7 @@ package repo import ( + "context" "errors" filestore "github.com/ipfs/go-filestore" @@ -43,7 +44,7 @@ func (m *Mock) GetConfigKey(key string) (interface{}, error) { func (m *Mock) Datastore() Datastore { return m.D } -func (m *Mock) GetStorageUsage() (uint64, error) { return 0, nil } +func (m *Mock) GetStorageUsage(_ context.Context) (uint64, error) { return 0, nil } func (m *Mock) Close() error { return m.D.Close() } diff --git a/repo/repo.go b/repo/repo.go index 614bfa5beda..744bfdf5d57 100644 --- a/repo/repo.go +++ b/repo/repo.go @@ -1,6 +1,7 @@ package repo import ( + "context" "errors" "io" @@ -39,7 +40,7 @@ type Repo interface { Datastore() Datastore // GetStorageUsage returns the number of bytes stored. - GetStorageUsage() (uint64, error) + GetStorageUsage(context.Context) (uint64, error) // Keystore returns a reference to the key management interface. Keystore() keystore.Keystore diff --git a/thirdparty/cidv0v1/blockstore.go b/thirdparty/cidv0v1/blockstore.go index 2f098dff9fe..f28feae7560 100644 --- a/thirdparty/cidv0v1/blockstore.go +++ b/thirdparty/cidv0v1/blockstore.go @@ -1,6 +1,8 @@ package cidv0v1 import ( + "context" + blocks "github.com/ipfs/go-block-format" cid "github.com/ipfs/go-cid" bs "github.com/ipfs/go-ipfs-blockstore" @@ -15,8 +17,8 @@ func NewBlockstore(b bs.Blockstore) bs.Blockstore { return &blockstore{b} } -func (b *blockstore) Has(c cid.Cid) (bool, error) { - have, err := b.Blockstore.Has(c) +func (b *blockstore) Has(ctx context.Context, c cid.Cid) (bool, error) { + have, err := b.Blockstore.Has(ctx, c) if have || err != nil { return have, err } @@ -24,11 +26,11 @@ func (b *blockstore) Has(c cid.Cid) (bool, error) { if !c1.Defined() { return false, nil } - return b.Blockstore.Has(c1) + return b.Blockstore.Has(ctx, c1) } -func (b *blockstore) Get(c cid.Cid) (blocks.Block, error) { - block, err := b.Blockstore.Get(c) +func (b *blockstore) Get(ctx context.Context, c cid.Cid) (blocks.Block, error) { + block, err := b.Blockstore.Get(ctx, c) if err == nil { return block, nil } @@ -39,7 +41,7 @@ func (b *blockstore) Get(c cid.Cid) (blocks.Block, error) { if !c1.Defined() { return nil, bs.ErrNotFound } - block, err = b.Blockstore.Get(c1) + block, err = b.Blockstore.Get(ctx, c1) if err != nil { return nil, err } @@ -50,15 +52,15 @@ func (b *blockstore) Get(c cid.Cid) (blocks.Block, error) { } // insert the block with the original CID to avoid problems // with pinning - err = b.Blockstore.Put(block) + err = b.Blockstore.Put(ctx, block) if err != nil { return nil, err } return block, nil } -func (b *blockstore) GetSize(c cid.Cid) (int, error) { - size, err := b.Blockstore.GetSize(c) +func (b *blockstore) GetSize(ctx context.Context, c cid.Cid) (int, error) { + size, err := b.Blockstore.GetSize(ctx, c) if err == nil { return size, nil } @@ -69,7 +71,7 @@ func (b *blockstore) GetSize(c cid.Cid) (int, error) { if !c1.Defined() { return -1, bs.ErrNotFound } - return b.Blockstore.GetSize(c1) + return b.Blockstore.GetSize(ctx, c1) } func tryOtherCidVersion(c cid.Cid) cid.Cid { diff --git a/thirdparty/verifbs/verifbs.go b/thirdparty/verifbs/verifbs.go index 53b6d13ca77..7be5348a82c 100644 --- a/thirdparty/verifbs/verifbs.go +++ b/thirdparty/verifbs/verifbs.go @@ -1,6 +1,8 @@ package verifbs import ( + "context" + blocks "github.com/ipfs/go-block-format" cid "github.com/ipfs/go-cid" bstore "github.com/ipfs/go-ipfs-blockstore" @@ -11,52 +13,52 @@ type VerifBSGC struct { bstore.GCBlockstore } -func (bs *VerifBSGC) Put(b blocks.Block) error { +func (bs *VerifBSGC) Put(ctx context.Context, b blocks.Block) error { if err := verifcid.ValidateCid(b.Cid()); err != nil { return err } - return bs.GCBlockstore.Put(b) + return bs.GCBlockstore.Put(ctx, b) } -func (bs *VerifBSGC) PutMany(blks []blocks.Block) error { +func (bs *VerifBSGC) PutMany(ctx context.Context, blks []blocks.Block) error { for _, b := range blks { if err := verifcid.ValidateCid(b.Cid()); err != nil { return err } } - return bs.GCBlockstore.PutMany(blks) + return bs.GCBlockstore.PutMany(ctx, blks) } -func (bs *VerifBSGC) Get(c cid.Cid) (blocks.Block, error) { +func (bs *VerifBSGC) Get(ctx context.Context, c cid.Cid) (blocks.Block, error) { if err := verifcid.ValidateCid(c); err != nil { return nil, err } - return bs.GCBlockstore.Get(c) + return bs.GCBlockstore.Get(ctx, c) } type VerifBS struct { bstore.Blockstore } -func (bs *VerifBS) Put(b blocks.Block) error { +func (bs *VerifBS) Put(ctx context.Context, b blocks.Block) error { if err := verifcid.ValidateCid(b.Cid()); err != nil { return err } - return bs.Blockstore.Put(b) + return bs.Blockstore.Put(ctx, b) } -func (bs *VerifBS) PutMany(blks []blocks.Block) error { +func (bs *VerifBS) PutMany(ctx context.Context, blks []blocks.Block) error { for _, b := range blks { if err := verifcid.ValidateCid(b.Cid()); err != nil { return err } } - return bs.Blockstore.PutMany(blks) + return bs.Blockstore.PutMany(ctx, blks) } -func (bs *VerifBS) Get(c cid.Cid) (blocks.Block, error) { +func (bs *VerifBS) Get(ctx context.Context, c cid.Cid) (blocks.Block, error) { if err := verifcid.ValidateCid(c); err != nil { return nil, err } - return bs.Blockstore.Get(c) + return bs.Blockstore.Get(ctx, c) }