@cryptotaxi247 / kubo / commits / 710953446

Upgrade to Boxo v0.34.0 (#10917)

* Use ValidatingBlockstore when HashOnRead is configured * fix ValidatingBlockstore creation * upgrade to boxo v0.34.0 * Use tagged boxo release

Andrew Gillis committed Aug 15, 2025 at 14:43 UTC 710953446434db286921c29b7c2f1651915114d4
8 files changed +12 -13
core/commands/repo.go
+1 -2
@@ -283,8 +283,7 @@ var repoVerifyCmd = &cmds.Command{
283 return err
284 }
285
286 - bs := bstore.NewBlockstore(nd.Repo.Datastore())
287 - bs.HashOnRead(true)
286 + bs := &bstore.ValidatingBlockstore{Blockstore: bstore.NewBlockstore(nd.Repo.Datastore())}
287
288 keys, err := bs.AllKeysChan(req.Context)
289 if err != nil {
core/node/storage.go
+2 -2
@@ -62,8 +62,8 @@ func BaseBlockstoreCtor(
62
63 bs = blockstore.NewIdStore(bs)
64
65 - if hashOnRead { // TODO: review: this is how it was done originally, is there a reason we can't just pass this directly?
66 - bs.HashOnRead(true)
65 + if hashOnRead {
66 + bs = &blockstore.ValidatingBlockstore{Blockstore: bs}
67 }
68
69 return
docs/examples/kubo-as-a-library/go.mod
+1 -1
@@ -7,7 +7,7 @@ go 1.25
7 replace github.com/ipfs/kubo => ./../../..
8
9 require (
10 - github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf
10 + github.com/ipfs/boxo v0.34.0
11 github.com/ipfs/kubo v0.0.0-00010101000000-000000000000
12 github.com/libp2p/go-libp2p v0.43.0
13 github.com/multiformats/go-multiaddr v0.16.1
docs/examples/kubo-as-a-library/go.sum
+2 -2
@@ -287,8 +287,8 @@ github.com/ipfs-shipyard/nopfs/ipfs v0.25.0 h1:OqNqsGZPX8zh3eFMO8Lf8EHRRnSGBMqcd
287 github.com/ipfs-shipyard/nopfs/ipfs v0.25.0/go.mod h1:BxhUdtBgOXg1B+gAPEplkg/GpyTZY+kCMSfsJvvydqU=
288 github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs=
289 github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0=
290 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf h1:W3iHiK3PaaayhoQQUgh3zvz7nbVfi/srJSgWi7HyM9s=
291 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
290 +github.com/ipfs/boxo v0.34.0 h1:pMP9bAsTs4xVh8R0ZmxIWviV7kjDa60U24QrlGgHb1g=
291 +github.com/ipfs/boxo v0.34.0/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
292 github.com/ipfs/go-bitfield v1.1.0 h1:fh7FIo8bSwaJEh6DdTWbCeZ1eqOaOkKFI74SCnsWbGA=
293 github.com/ipfs/go-bitfield v1.1.0/go.mod h1:paqf1wjq/D2BBmzfTVFlJQ9IlFOZpg422HL0HqsGWHU=
294 github.com/ipfs/go-block-format v0.0.3/go.mod h1:4LmD4ZUw0mhO+JSKdpWwrzATiEfM7WWgQ8H5l6P8MVk=
go.mod
+1 -1
@@ -22,7 +22,7 @@ require (
22 github.com/hashicorp/go-version v1.7.0
23 github.com/ipfs-shipyard/nopfs v0.0.14
24 github.com/ipfs-shipyard/nopfs/ipfs v0.25.0
25 - github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf
25 + github.com/ipfs/boxo v0.34.0
26 github.com/ipfs/go-block-format v0.2.2
27 github.com/ipfs/go-cid v0.5.0
28 github.com/ipfs/go-cidutil v0.1.0
go.sum
+2 -2
@@ -354,8 +354,8 @@ github.com/ipfs-shipyard/nopfs/ipfs v0.25.0 h1:OqNqsGZPX8zh3eFMO8Lf8EHRRnSGBMqcd
354 github.com/ipfs-shipyard/nopfs/ipfs v0.25.0/go.mod h1:BxhUdtBgOXg1B+gAPEplkg/GpyTZY+kCMSfsJvvydqU=
355 github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs=
356 github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0=
357 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf h1:W3iHiK3PaaayhoQQUgh3zvz7nbVfi/srJSgWi7HyM9s=
358 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
357 +github.com/ipfs/boxo v0.34.0 h1:pMP9bAsTs4xVh8R0ZmxIWviV7kjDa60U24QrlGgHb1g=
358 +github.com/ipfs/boxo v0.34.0/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
359 github.com/ipfs/go-bitfield v1.1.0 h1:fh7FIo8bSwaJEh6DdTWbCeZ1eqOaOkKFI74SCnsWbGA=
360 github.com/ipfs/go-bitfield v1.1.0/go.mod h1:paqf1wjq/D2BBmzfTVFlJQ9IlFOZpg422HL0HqsGWHU=
361 github.com/ipfs/go-block-format v0.0.3/go.mod h1:4LmD4ZUw0mhO+JSKdpWwrzATiEfM7WWgQ8H5l6P8MVk=
test/dependencies/go.mod
+1 -1
@@ -134,7 +134,7 @@ require (
134 github.com/huin/goupnp v1.3.0 // indirect
135 github.com/inconshreveable/mousetrap v1.1.0 // indirect
136 github.com/ipfs/bbloom v0.0.4 // indirect
137 - github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf // indirect
137 + github.com/ipfs/boxo v0.34.0 // indirect
138 github.com/ipfs/go-bitfield v1.1.0 // indirect
139 github.com/ipfs/go-block-format v0.2.2 // indirect
140 github.com/ipfs/go-cid v0.5.0 // indirect
test/dependencies/go.sum
+2 -2
@@ -332,8 +332,8 @@ github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2
332 github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
333 github.com/ipfs/bbloom v0.0.4 h1:Gi+8EGJ2y5qiD5FbsbpX/TMNcJw8gSqr7eyjHa4Fhvs=
334 github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0=
335 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf h1:W3iHiK3PaaayhoQQUgh3zvz7nbVfi/srJSgWi7HyM9s=
336 -github.com/ipfs/boxo v0.33.2-0.20250814210825-54b62d4eccbf/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
335 +github.com/ipfs/boxo v0.34.0 h1:pMP9bAsTs4xVh8R0ZmxIWviV7kjDa60U24QrlGgHb1g=
336 +github.com/ipfs/boxo v0.34.0/go.mod h1:kzdH/ewDybtO3+M8MCVkpwnIIc/d2VISX95DFrY4vQA=
337 github.com/ipfs/go-bitfield v1.1.0 h1:fh7FIo8bSwaJEh6DdTWbCeZ1eqOaOkKFI74SCnsWbGA=
338 github.com/ipfs/go-bitfield v1.1.0/go.mod h1:paqf1wjq/D2BBmzfTVFlJQ9IlFOZpg422HL0HqsGWHU=
339 github.com/ipfs/go-block-format v0.2.2 h1:uecCTgRwDIXyZPgYspaLXoMiMmxQpSx2aq34eNc4YvQ=