Skip to content

Conversation

@gammazero
Copy link
Contributor

  • Update dependencied
  • Update test code to use equivalents in github.com/ipfs/go-test
  • Replace go.uber.org/multierr with stdlib errors package

@gammazero gammazero marked this pull request as draft October 17, 2025 21:16
@gammazero gammazero force-pushed the update-dependencies branch from 353e18f to 472d488 Compare October 18, 2025 16:42
@rvagg
Copy link
Member

rvagg commented Oct 20, 2025

failures all look like the bitswap errors we've been dealing with forever

previously solved by using a fork that had this on top of it: ipfs/boxo@894484c but now we're using main releases we don't have that so we just get failures

@parkan
Copy link

parkan commented Oct 27, 2025

what's the latest boxo we can use? in singularity we are stuck on quite old (v0.24.3 at the latest) boxo because we also depend on lassie, I'm trying to decide whether to remove the lassie dependency

@rvagg
Copy link
Member

rvagg commented Oct 28, 2025

@parkan you can use a more recent boxo, our tests fail with boxo versions other than the one you're probably using but it may be more indicative of the tight test environment we run than production-level typical bitswap interactions. This PR is probably OK to merge, but for the test failures isolated to bitswap making everything red.

Also, bitswap is gone from Filecoin SPs these days so less of an issue I think, I'm not sure who's publishing bitswap records to IPNI?

@parkan
Copy link

parkan commented Oct 28, 2025

with boxo v0.25.0 or higher we get:

 /home/vscode/go/pkg/mod/github.com/ipfs/go-log@v1.0.5/levels.go:29:14: undefined: log2.LevelFromString
 # github.com/filecoin-project/lassie/pkg/retriever
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/bitswapretriever.go:86:19: undefined: network.NewFromIpfsHost
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/bitswapretriever.go:87:36: cannot use bstore (variable of type *bitswaphelpers.MultiBlockstore) as routing.ContentDiscovery 
 value in argument to client.New: *bitswaphelpers.MultiBlockstore does not implement routing.ContentDiscovery (missing method FindProvidersAsync)
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/bitswapretriever.go:87:44: cannot use client.ProviderSearchDelay(shortenedDelay) (value of func type client.Option) as 
 blockstore.Blockstore value in argument to client.New: client.Option does not implement blockstore.Blockstore (missing method AllKeysChan)
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/directcandidatesource.go:179:9: undefined: bsnet.ProtocolBitswap
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/directcandidatesource.go:180:9: undefined: bsnet.ProtocolBitswapOneOne
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/directcandidatesource.go:181:9: undefined: bsnet.ProtocolBitswapOneZero
 /home/vscode/go/pkg/mod/github.com/filecoin-project/lassie@v0.24.0/pkg/retriever/directcandidatesource.go:182:9: undefined: bsnet.ProtocolBitswapNoVers

@parkan
Copy link

parkan commented Oct 28, 2025

I'm able to get it building with boxo@v0.35.0 by removing all bitswap code, fixing bsnetwork.NewFromIpfsHost to remove the routing parameter (this probably needs to be actually passed in some other way though) and upgrading go-graphsync to v0.18.0

to me this is actually all fine since bitswap is, as you said, not useful

I might vendor this for now so we can bring singularity up to date

@parkan
Copy link

parkan commented Oct 28, 2025

quick n dirty version here: main...parkan:lassie:main

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants