Skip to content

Latest commit

 

History

History
292 lines (265 loc) · 23 KB

v0.22.md

File metadata and controls

292 lines (265 loc) · 23 KB

Kubo changelog v0.22

v0.22.0

Overview

🔦 Highlights

Gateway: support for order= and dups= parameters (IPIP-412)

The updated boxo/gateway library introduces support for ordered CAR responses through the inclusion of optional CAR content type parameters: order=dfs and dups=y|n from IPIP-412.

Previously, Kubo already provided CARs in DFS order without duplicate blocks. With the implementation of IPIP-412, this behavior is now explicitly defined rather than implied.

In the absence of dups or order in Accept request reader, the default CAR response will have the Content-Type: application/vnd.ipld.car; version=1; order=dfs; dups=n and the same blocks as Kubo 0.21.

Kubo 0.22 still only supports DFS block ordering (order=dfs). However, it is now possible to request a DFS CAR stream with duplicate blocks by opting in via Accept: application/vnd.ipld.car; order=dfs; dups=y. This opt-in feature can be beneficial for memory-constrained clients and IoT devices, as it allows for streaming large DAGs without the need to store all previously encountered blocks in memory.

ipfs name publish now supports V2 only IPNS records

When publishing an IPNS record, you are now able to create v2 only records by passing --v1compat=false. By default, we still create V1+V2 records, such that there is the highest chance of backwards compatibility. The goal is to move to V2 only in the future.

For more details, see IPIP-428 and the updated IPNS Record Verification logic.

IPNS name resolution has been fixed

IPNS name resolution had a regression where if IPNS over PubSub was enabled, but the name was not also available via IPNS over PubSub it would take 1 minute to for the lookup to complete (if the record was not yet cached).

This has been fixed and as before will give the best record from either the DHT subsystem or IPNS over PubSub, whichever comes back first.

For details see #9927 and #10020.

go-libp2p v0.29.0 update with smart dialing

We updated from go-libp2p v0.27.7 to v0.29.0. This release includes smart dialing, which is a prioritization algorithm that will try to rank addresses and protocols rather than attempting all options in parallel. Anecdotally, we have observed Kubo nodes make 30% less dials with no to low latency impact.

This includes a breaking change to ipfs id and some of the ipfs swarm commands. We no longer report ProtocolVersion. This used to be hardcoded as ipfs/0.1.0 and sent to other peers but was not providing any distinguishing value. See libp2p/go-libp2p#2294 for more information.

📝 Changelog

Full Changelog

👨‍👩‍👧‍👦 Contributors

Contributor Commits Lines ± Files Changed
Henrique Dias 14 +3735/-17889 185
Sukun 28 +5910/-957 100
Jorropo 40 +2913/-2112 205
Marten Seemann 41 +2926/-1833 163
Marco Munizaga 20 +1559/-586 81
Prem Chaitanya Prathi 1 +757/-740 61
Laurent Senta 2 +69/-1094 32
Marcin Rataj 11 +339/-198 22
Steven Allen 2 +313/-161 9
Will 2 +118/-211 9
Adin Schmahmann 4 +275/-41 8
Michael Muré 1 +113/-164 6
Rod Vagg 8 +228/-46 28
Gus Eggert 5 +156/-93 21
Adrian Sutton 1 +190/-17 4
Hlib Kanunnikov 3 +139/-40 9
VM 2 +80/-79 49
UnkwUsr 1 +0/-124 1
Piotr Galar 4 +51/-59 5
web3-bot 3 +22/-46 4
Will Scott 2 +29/-28 6
Prithvi Shahi 2 +40/-7 2
Brad Fitzpatrick 1 +42/-2 2
Steve Loeppky 1 +6/-23 2
Sahib Yar 1 +4/-4 3
Russell Dempsey 2 +4/-2 2
Mohamed MHAMDI 1 +3/-3 1
Bryan White 1 +2/-2 1
Dennis Trautwein 1 +1/-1 1
Antonio Navarro Perez 1 +0/-1 1