This release was brought to you by the Shipyard team.
- 🔦 Highlights
- AutoTLS now enabled by default for nodes with 1 hour uptime
- New WebUI features
- RPC and CLI command changes
- Bitswap improvements from Boxo
- IPNS publishing TTL change
IPFS_LOG_LEVEL
deprecated- Pebble datastore format update
- Badger datastore update
- Datastore Implementation Updates
- One Multi-error Package
- Fix hanging pinset operations during reprovides
- 📦️ Important dependency updates
- 📝 Changelog
- 👨👩👧👦 Contributors
🗣 Discuss
If you have comments, questions, or feedback on this release, please post here.
If you experienced any bugs with the release, please post an issue.
🔦 Highlights
AutoTLS now enabled by default for nodes with 1 hour uptime
Starting now, any publicly dialable Kubo node with a /tcp
listener that remains online for at least one hour will receive a TLS certificate through the AutoTLS
feature.
This occurs automatically, with no need for manual setup.
To bypass the 1-hour delay and enable AutoTLS immediately, users can explicitly opt-in by running the following commands:
$ ipfs config --json AutoTLS.Enabled true
$ ipfs config --json AutoTLS.RegistrationDelay 0
AutoTLS will remain disabled under the following conditions:
- The node already has a manually configured
/ws
(WebSocket) listener - A private network is in use with a
swarm.key
- TCP or WebSocket transports are disabled, or there is no
/tcp
listener
To troubleshoot, use GOLOG_LOG_LEVEL="error,autotls=info
.
For more details, check out the AutoTLS
configuration documentation or dive deeper with AutoTLS libp2p blog post.
New WebUI features
The WebUI, accessible at http://127.0.0.1:5001/webui/, now includes support for CAR file import and QR code sharing directly from the Files view. Additionally, the Peers screen has been updated with the latest ipfs-geoip
dataset.
RPC and CLI command changes
ipfs config
is now validating json fields (#10679).- Deprecated the
bitswap reprovide
command. Make sure to switch to modernrouting reprovide
. (#10677) - The
stats reprovide
command now shows additional stats forRouting.AcceleratedDHTClient
, indicating the last and nextreprovide
times. (#10677) ipfs files cp
now performs basic codec check and will error when source is not a valid UnixFS (onlydag-pb
andraw
codecs are allowed in MFS)
Bitswap improvements from Boxo
This release includes performance and reliability improvements and fixes for minor resource leaks. One of the performance changes greatly improves the bitswap clients ability to operate under high load, that could previously result in an out of memory condition.
IPNS publishing TTL change
Many complaints about IPNS being slow are tied to the default --ttl
in ipfs name publish
, which was set to 1 hour. To address this, we’ve lowered the default IPNS Record TTL during publishing to 5 minutes, matching similar TTL defaults in DNS. This update is now part of boxo/ipfs
(GO, boxo#859) and @helia/ipns
(JS, helia#749).
Tip
IPNS TTL recommendations when even faster update propagation is desired:
- As a Publisher: Lower the
--ttl
(e.g.,ipfs name publish --ttl=1m
) to further reduce caching delays. If using DNSLink, ensure the DNS TXT record TTL matches the IPNS record TTL. - As a Gateway Operator: Override publisher TTLs for faster updates using configurations like
Ipns.MaxCacheTTL
in Kubo orRAINBOW_IPNS_MAX_CACHE_TTL
in Rainbow.
IPFS_LOG_LEVEL
deprecated
The variable has been deprecated. Please use GOLOG_LOG_LEVEL
instead for configuring logging levels.
Pebble datastore format update
If the pebble database format is not explicitly set in the config, then automatically upgrade it to the latest format version supported by the release ob pebble used by kubo. This will ensure that the database format is sufficiently up-to-date to be compatible with a major version upgrade of pebble. This is necessary before upgrading to use pebble v2.
Badger datastore update
An update was made to the badger v1 datastore that avoids use of mmap in 32-bit environments, which has been seen to cause issues on some platforms. Please be aware that this could lead to a performance regression for users of badger in a 32-bit environment. Badger users are advised to move to the flatds or pebble datastore.
Datastore Implementation Updates
The go-ds-xxx datastore implementations have been updated to support the updated go-datastore
v0.8.2 query API. This update removes the datastore implementations' dependency on goprocess
and updates the query API.
One Multi-error Package
Kubo previously depended on multiple multi-error packages, github.com/hashicorp/go-multierror
and go.uber.org/multierr
. These have nearly identical functionality so there was no need to use both. Therefore, go.uber.org/multierr
was selected as the package to depend on. Any future code needing multi-error functionality should use go.uber.org/multierr
to avoid introducing unneeded dependencies.
Fix hanging pinset operations during reprovides
The reprovide process can be quite slow. In default settings, the reprovide process will start reading CIDs that belong to the pinset. During this operation, starvation can occur for other operations that need pinset access (see #10596).
We have now switch to buffering pinset-related cids that are going to be reprovided in memory, so that we can free pinset mutexes as soon as possible so that pinset-writes and subsequent read operations can proceed. The downside is larger pinsets will need some extra memory, with an estimation of ~1GiB of RAM memory-use per 20 million items to be reprovided.
Use Reprovider.Strategy
to balance announcement prioritization, speed, and memory utilization.
📦️ Important dependency updates
- update
go-libp2p
to v0.41.0 (incl. v0.40.0) - update
go-libp2p-kad-dht
to v0.30.2 (incl. v0.29.0, v0.29.1, v0.29.2, v0.30.0, v0.30.1) - update
boxo
to v0.29.1 (incl. v0.28.0 v0.29.0) - update
ipfs-webui
to v4.6.0 (incl. v4.5.0) - update
p2p-forge/client
to v0.4.0 - update
go-datastore
to v0.8.2 (incl. v0.7.0, v0.8.0)
📝 Changelog
Full Changelog
- github.com/ipfs/kubo:
- chore: v0.34.0
- chore: v0.34.0-rc2
- docs: mention Reprovider.Strategy config
- docs: ipns ttl change
- feat: ipfs-webui v4.6 (#10756) (ipfs/kubo#10756)
- docs(readme): update min. requirements + cleanup (#10750) (ipfs/kubo#10750)
- Upgrade to Boxo v0.29.1 (#10755) (ipfs/kubo#10755)
- Nonfunctional (#10753) (ipfs/kubo#10753)
- Update docs/changelogs/v0.34.md
- provider: buffer pin providers.
- chore: 0.34.0-rc1
- fix(mfs): basic UnixFS sanity checks in
files cp
(#10701) (ipfs/kubo#10701) - Upgrade to Boxo v0.29.0 (#10742) (ipfs/kubo#10742)
- use go-datastore without go-process (#10736) (ipfs/kubo#10736)
- docs(config): add security considerations for rpc (#10739) (ipfs/kubo#10739)
- chore: update go-libp2p to v0.41.0 (#10733) (ipfs/kubo#10733)
- feat: ipfs-webui v4.5.0 (#10735) (ipfs/kubo#10735)
- Create FUNDING.json (#10734) (ipfs/kubo#10734)
- feat(AutoTLS): enabled by default with 1h RegistrationDelay (#10724) (ipfs/kubo#10724)
- Upgrade to Boxo v0.28.0 (#10725) (ipfs/kubo#10725)
- Upgrade to go1.24 (#10726) (ipfs/kubo#10726)
- Replace go-random with random-data from go-test package (#10731) (ipfs/kubo#10731)
- Update to new go-test (#10729) (ipfs/kubo#10729)
- Update go-test and use new random-files generator (#10728) (ipfs/kubo#10728)
- docs(readme): update docker section (#10716) (ipfs/kubo#10716)
- Update go-ds-badger to v0.3.1 (#10722) (ipfs/kubo#10722)
- Update pebble db to latest format by default (#10720) (ipfs/kubo#10720)
- fix: switch away from IPFS_LOG_LEVEL (#10694) (ipfs/kubo#10694)
- Merge release v0.33.2 (ipfs/kubo#10713)
- Remove unused TimeParts struct (#10708) (ipfs/kubo#10708)
- fix(rpc): restore and reprecate
bitswap reprovide
(#10699) (ipfs/kubo#10699) - docs(release): update RELEASE_CHECKLIST.md after v0.33.1 (#10697) (ipfs/kubo#10697)
- docs: update min requirements (#10687) (ipfs/kubo#10687)
- Merge release v0.33.1 (ipfs/kubo#10698)
- fix: boxo v0.27.4 (#10692) (ipfs/kubo#10692)
- fix: Issue #9364 JSON config validation (#10679) (ipfs/kubo#10679)
- docs: RELEASE_CHECKLIST.md update for 0.33 (#10674) (ipfs/kubo#10674)
- feat: Better self-service commands for DHT providing (#10677) (ipfs/kubo#10677)
- docs: add webrtc-direct fixes to 0.33 release changelog (#10688) (ipfs/kubo#10688)
- fix: config help (#10686) (ipfs/kubo#10686)
- feat: Add CI for Spell Checking (#10637) (ipfs/kubo#10637)
- Merge release v0.33.0 (ipfs/kubo#10684)
- test: fix the socat tests after the ubuntu 24.04 upgrade (#10683) (ipfs/kubo#10683)
- fix: quic-go v0.49.0 (#10673) (ipfs/kubo#10673)
- Upgrade to Boxo v0.27.2 (#10672) (ipfs/kubo#10672)
- Upgrade to Boxo v0.27.1 (#10671) (ipfs/kubo#10671)
- fix(autotls): renewal and AutoTLS.ShortAddrs (#10669) (ipfs/kubo#10669)
- update changelog for boxo and go-libp2p (#10668) (ipfs/kubo#10668)
- Upgrade to Boxo v0.27.0 (#10665) (ipfs/kubo#10665)
- update dependencies (#10664) (ipfs/kubo#10664)
- docs(readme): add unofficial Fedora COPR (#10660) (ipfs/kubo#10660)
- fix(dns): update default DNSLink resolvers (#10655) (ipfs/kubo#10655)
- chore: p2p-forge v0.2.2 + go-libp2p-kad-dht v0.28.2 (#10663) (ipfs/kubo#10663)
- fix(cli): support HTTPS in ipfs --api (#10659) (ipfs/kubo#10659)
- chore: fix typos and comment formatting (#10653) (ipfs/kubo#10653)
- fix/gateway: escape directory redirect url (#10649) (ipfs/kubo#10649)
- Add example of setting array to config command help (ipfs/kubo#10650)
- collection of typo fixes (#10647) (ipfs/kubo#10647)
- chore: bump master to 0.34.0-dev
- github.com/ipfs/boxo (v0.27.4 -> v0.29.1):
- Release v0.29.1 (ipfs/boxo#885)
- fix(provider): call reprovider throughput callback only if reprovide is enabled (#871) (ipfs/boxo#871)
- bitswap/httpnet: do not follow redirects (#878) (ipfs/boxo#878)
- Refactor(hostname): Skip DNSLink for local IP addresses to avoid DNS queries (#880) (ipfs/boxo#880)
- Nonfunctional (#882) (ipfs/boxo#882)
- fix(bitswap/client): dont set nil for DontHaveTimeoutConfig (#872) (ipfs/boxo#872)
- provider: add a buffered KeyChanFunc. (ipfs/boxo#870)
- Release v0.29.0 (#869) (ipfs/boxo#869)
- Do not use multiple multi-error packages, pick one (#867) (ipfs/boxo#867)
- feat(bitswap/client): MinTimeout for DontHaveTimeoutConfig (#865) (ipfs/boxo#865)
- use go-datastore without go-process (#858) (ipfs/boxo#858)
- minimize peermanager lock scope (#860) (ipfs/boxo#860)
- chore(ipns): lower
DefaultRecordTTL
to 5m (#859) (ipfs/boxo#859) - httpnet: bitswap network for HTTP block retrieval over trustless gateway endpoints. (ipfs/boxo#747)
- chore: Update FUNDING.json for Optimism RPF (#857) (ipfs/boxo#857)
- Release v0.28.0 (#854) (ipfs/boxo#854)
- Update deps (#852) (ipfs/boxo#852)
- fix: gateway/blocks-backend: GetBlock should not perform IPLD decoding (#845) (ipfs/boxo#845)
- Protobuf pkg name (#850) (ipfs/boxo#850)
- Fix intermittent test failure (#849) (ipfs/boxo#849)
- move
ipld/merkledag
from gogo protobuf (#841) (ipfs/boxo#841) - move
ipld/unixfs
from gogo protobuf (#840) (ipfs/boxo#840) - Start moving from gogo protobuf (#839) (ipfs/boxo#839)
- ci: uci/update-go (#848) (ipfs/boxo#848)
- expose DontHaveTimeoutConfig (#846) (ipfs/boxo#846)
- Upgrade go-libp2p to v0.39.1 (#843) (ipfs/boxo#843)
- feat: Prevent multiple instances of "ipfs routing reprovide" running together. (#834) (ipfs/boxo#834)
- Upgrade to go-libp2p v0.39.0 (#837) (ipfs/boxo#837)
- bitswap/client/internal/messagequeue: run tests in parallel (#835) (ipfs/boxo#835)
- github.com/ipfs/go-cid (v0.4.1 -> v0.5.0):
- v0.5.0 bump (#172) (ipfs/go-cid#172)
- move _rsrch/cidiface into an internal package
- github.com/ipfs/go-datastore (v0.6.0 -> v0.8.2):
- bump version (#231) (ipfs/go-datastore#231)
- Results.Close should return error (#230) (ipfs/go-datastore#230)
- new version (#229) (ipfs/go-datastore#229)
- Update fuzz module dependencies (#228) (ipfs/go-datastore#228)
- new version (#225) (ipfs/go-datastore#225)
- No goprocess (#223) (ipfs/go-datastore#223)
- Release version 0.7.0 (#213) (ipfs/go-datastore#213)
- query result ordering does not create additional goroutine (#221) (ipfs/go-datastore#221)
- Remove unneeded dependencies (#220) (ipfs/go-datastore#220)
- Add traced datastore (#209) (ipfs/go-datastore#209)
- Add root namespace method to Key (#208) (ipfs/go-datastore#208)
- ci: uci/copy-templates (#207) (ipfs/go-datastore#207)
- test: fix fuzz commands
- fix fuzz tests by adding the missing context.Context argument (#198) (ipfs/go-datastore#198)
- sync: update CI config files (#195) (ipfs/go-datastore#195)
- github.com/ipfs/go-ds-badger (v0.3.0 -> v0.3.4):
- new version (#137) (ipfs/go-ds-badger#137)
- new version (#135) (ipfs/go-ds-badger#135)
- new version (#132) (ipfs/go-ds-badger#132)
- Update to use go-datastore without go-process (#131) (ipfs/go-ds-badger#131)
- new version (ipfs/go-ds-badger#128)
- Update dependencies and minimum go version (ipfs/go-ds-badger#127)
- ci: uci/update-go (ipfs/go-ds-badger#123)
- ci: uci/copy-templates (ipfs/go-ds-badger#122)
- chore: check PersistentDatastore conformance at build time (#120) (ipfs/go-ds-badger#120)
- github.com/ipfs/go-ds-flatfs (v0.5.1 -> v0.5.5):
- bump version (#130) (ipfs/go-ds-flatfs#130)
- new version (#128) (ipfs/go-ds-flatfs#128)
- new version (#126) (ipfs/go-ds-flatfs#126)
- Fix race condition due to concurrent use of rand source (#125) (ipfs/go-ds-flatfs#125)
- new version (ipfs/go-ds-flatfs#124)
- Use go-datastore without go-process (ipfs/go-ds-flatfs#123)
- ci: uci/update-go (#122) (ipfs/go-ds-flatfs#122)
- fix: actually use the size hint in util_windows.go
- perf: do not use virtual call when passing os.Rename as rename
- chore(logging): update go-log v2 (#117) (ipfs/go-ds-flatfs#117)
- ci: uci/copy-templates (ipfs/go-ds-flatfs#116)
- sync: update CI config files (ipfs/go-ds-flatfs#111)
- possibly fix a bug in renameAndUpdateDiskUsage
- add documentation and comment
- perf: avoid syncing directories when they already existed (#107) (ipfs/go-ds-flatfs#107)
- test: faster TestNoCluster by batching the 3200 Puts (ipfs/go-ds-flatfs#108)
- query: also teard down on ctx done (#106) (ipfs/go-ds-flatfs#106)
- github.com/ipfs/go-ds-leveldb (v0.5.0 -> v0.5.2):
- new version (#75) (ipfs/go-ds-leveldb#75)
- Results close needs to return error (#74) (ipfs/go-ds-leveldb#74)
- new version (ipfs/go-ds-leveldb#73)
- use go-datastore without go-process (ipfs/go-ds-leveldb#72)
- sync: update CI config files (#62) (ipfs/go-ds-leveldb#62)
- chore: add PersistentDatastore and Batching interface checks
- github.com/ipfs/go-ds-measure (v0.2.0 -> v0.2.2):
- new version (ipfs/go-ds-measure#54)
- new version (ipfs/go-ds-measure#52)
- github.com/ipfs/go-ds-pebble (v0.4.2 -> v0.4.4):
- new version (#51) (ipfs/go-ds-pebble#51)
- new version (#48) (ipfs/go-ds-pebble#48)
- Use go-datastore without go-process (#47) (ipfs/go-ds-pebble#47)
- github.com/ipfs/go-metrics-interface (v0.0.1 -> v0.3.0):
- CounterVec: even more ergonomic (ipfs/go-metrics-interface#22)
- Improve CounterVec abstraction (ipfs/go-metrics-interface#21)
- v0.1.0 (ipfs/go-metrics-interface#20)
- Feat: Add CounterVec type. (ipfs/go-metrics-interface#19)
- sync: update CI config files (#10) (ipfs/go-metrics-interface#10)
- sync: update CI config files (#8) (ipfs/go-metrics-interface#8)
- use a struct as a key for the context (ipfs/go-metrics-interface#4)
- github.com/ipfs/go-metrics-prometheus (v0.0.3 -> v0.1.0):
- Implement the CounterVec type. (ipfs/go-metrics-prometheus#26)
- github.com/ipfs/go-test (v0.0.4 -> v0.2.1):
- new version (#20) (ipfs/go-test#20)
- No newline at end of random raw data (#19) (ipfs/go-test#19)
- new-version (#18) (ipfs/go-test#18)
- new version (#15) (ipfs/go-test#15)
- refactor: Make go-multiaddr v0.15 forward compatible change (#16) (ipfs/go-test#16)
- Move cli apps (#17) (ipfs/go-test#17)
- Update help text (#14) (ipfs/go-test#14)
- Add package to generate random filesystem hierarchies for testing (#13) (ipfs/go-test#13)
- github.com/ipfs/go-unixfsnode (v1.9.2 -> v1.10.0):
- new version (ipfs/go-unixfsnode#81)
- upgrade to boxo v0.27.4 (ipfs/go-unixfsnode#80)
- github.com/libp2p/go-libp2p (v0.38.3 -> v0.41.0):
- Release v0.41.0 (#3210) (libp2p/go-libp2p#3210)
- fix(libp2phttp): Fix relative to absolute multiaddr URI logic (#3208) (libp2p/go-libp2p#3208)
- fix(dcutr): Fix end to end tests and add legacy behavior flag (default=true) (#3044) (libp2p/go-libp2p#3044)
- feat(libp2phttp): More ergonomic auth (#3188) (libp2p/go-libp2p#3188)
- chore(identify): move log to debug level (#3206) (libp2p/go-libp2p#3206)
- chore: Update go-multiaddr to v0.15 (#3145) (libp2p/go-libp2p#3145)
- chore: update quic-go to v0.50.0 (#3204) (libp2p/go-libp2p#3204)
- chore: move go-nat to internal package
- basichost: add certhashes to addrs in place (#3200) (libp2p/go-libp2p#3200)
- autorelay: send addresses on eventbus; dont wrap address factory (#3071) (libp2p/go-libp2p#3071)
- chore: update ci for go1.24 (#3195) (libp2p/go-libp2p#3195)
- Release v0.40.0 (#3192) (libp2p/go-libp2p#3192)
- chore: bump deps for v0.40.0 (#3191) (libp2p/go-libp2p#3191)
- autonatv2: allow multiple concurrent requests per peer (#3187) (libp2p/go-libp2p#3187)
- feat: add AutoTLS example (#3103) (libp2p/go-libp2p#3103)
- feat(swarm): logging waitForDirectConn return error (#3183) (libp2p/go-libp2p#3183)
- tcpreuse: fix Scope() for *tls.Conn (#3181) (libp2p/go-libp2p#3181)
- test(p2p/protocol/identify): fix user agent assertion in Go 1.24 (#3177) (libp2p/go-libp2p#3177)
- swarm: remove unnecessary error log (#3128) (libp2p/go-libp2p#3128)
- Implement error codes spec (#2927) (libp2p/go-libp2p#2927)
- chore: update pion/ice to v4 (#3175) (libp2p/go-libp2p#3175)
- chore: release v0.39.0 (#3174) (libp2p/go-libp2p#3174)
- feat(holepunch): add logging when DirectConnect execution fails (#3146) (libp2p/go-libp2p#3146)
- feat: Implement Custom TCP Dialers (#3166) (libp2p/go-libp2p#3166)
- Update quic-go to v0.49.0 (#3153) (libp2p/go-libp2p#3153)
- feat(transport/websocket): support SOCKS proxy with ws(s) (#3137) (libp2p/go-libp2p#3137)
- tcpreuse: fix rcmgr accounting when tcp metrics are enabled (#3142) (libp2p/go-libp2p#3142)
- fix(net/nat): data race problem of
extAddr
(#3140) (libp2p/go-libp2p#3140) - test: fix failing test (#3141) (libp2p/go-libp2p#3141)
- quicreuse: make it possible to use an application-constructed quic.Transport (#3122) (libp2p/go-libp2p#3122)
- nat: ignore mapping if external port is 0 (#3094) (libp2p/go-libp2p#3094)
- tcpreuse: error on using tcpreuse with pnet (#3129) (libp2p/go-libp2p#3129)
- chore: Update contribution guidelines (#3134) (libp2p/go-libp2p#3134)
- tcp: fix metrics test build directive (#3052) (libp2p/go-libp2p#3052)
- webrtc: upgrade pion/webrtc to v4 (#3098) (libp2p/go-libp2p#3098)
- webtransport: fix docstring comment for getCurrentBucketStartTime
- chore: release v0.38.1 (#3114) (libp2p/go-libp2p#3114)
- github.com/libp2p/go-libp2p-kad-dht (v0.28.2 -> v0.30.2):
- new version (#1059) (libp2p/go-libp2p-kad-dht#1059)
- do not use multiple multi-error packages, pick one (#1058) (libp2p/go-libp2p-kad-dht#1058)
- update version (#1057) (libp2p/go-libp2p-kad-dht#1057)
- chore: release v0.30.0 (#1054) (libp2p/go-libp2p-kad-dht#1054)
- fix: crawler polluting peerstore (#1053) (libp2p/go-libp2p-kad-dht#1053)
- new version (#1052) (libp2p/go-libp2p-kad-dht#1052)
- use go-datastore without go-process (#1051) (libp2p/go-libp2p-kad-dht#1051)
- feat: use OTEL for metrics (removes opencensus) (#1045) (libp2p/go-libp2p-kad-dht#1045)
- release v0.29.1 (#1042) (libp2p/go-libp2p-kad-dht#1042)
- fix: flaky TestInvalidServer (#1049) (libp2p/go-libp2p-kad-dht#1049)
- chore: update deps (#1048) (libp2p/go-libp2p-kad-dht#1048)
- fix addrsSoFar comparison (#1046) (libp2p/go-libp2p-kad-dht#1046)
- fix: flaky TestInvalidServer (#1043) (libp2p/go-libp2p-kad-dht#1043)
- add verbose to TestFindProviderAsync (dual) (#1040) (libp2p/go-libp2p-kad-dht#1040)
- test: cover dns addresses in TestAddrFilter (#1041) (libp2p/go-libp2p-kad-dht#1041)
- fix: flaky TestSearchValue (dual) (#1038) (libp2p/go-libp2p-kad-dht#1038)
- fix: flaky TestClientModeConnect (#1037) (libp2p/go-libp2p-kad-dht#1037)
- fix: flaky TestFindPeerQueryMinimal (#1036) (libp2p/go-libp2p-kad-dht#1036)
- fix: flaky TestInvalidServer (#1032) (libp2p/go-libp2p-kad-dht#1032)
- fix: flaky TestFindPeerWithQueryFilter (#1034) (libp2p/go-libp2p-kad-dht#1034)
- fix: Flaky TestInvalidServer (#1029) (libp2p/go-libp2p-kad-dht#1029)
- fix: flaky TestClientModeConnect (#1028) (libp2p/go-libp2p-kad-dht#1028)
- fix: increase timeout in TestProvidesMany (#1027) (libp2p/go-libp2p-kad-dht#1027)
- fix(tests): cleanup of skipped tests (#1025) (libp2p/go-libp2p-kad-dht#1025)
- fix: don't skip TestProvidesExpire (#1024) (libp2p/go-libp2p-kad-dht#1024)
- fixing flaky TestFindPeerQueryMinimal (#1020) (libp2p/go-libp2p-kad-dht#1020)
- fix flaky TestSkipRefreshOnGapCpls (#1021) (libp2p/go-libp2p-kad-dht#1021)
- fix: don't skip TestContextShutDown (#1022) (libp2p/go-libp2p-kad-dht#1022)
- comments formatting and typos (#1019) (libp2p/go-libp2p-kad-dht#1019)
- log peers rejected for diversity (#759) (libp2p/go-libp2p-kad-dht#759)
- docs: update fullrt docs (#768) (libp2p/go-libp2p-kad-dht#768)
- query cleanup (#1017) (libp2p/go-libp2p-kad-dht#1017)
- better variable names (#787) (libp2p/go-libp2p-kad-dht#787)
- release v0.29.0 (#1014) (libp2p/go-libp2p-kad-dht#1014)
- Move from gogo protobuf (#975) (libp2p/go-libp2p-kad-dht#975)
- fix: don't copy message to OnRequestHook (libp2p/go-libp2p-kad-dht#1012)
- chore: remove boxo/util deps (libp2p/go-libp2p-kad-dht#1013)
- feat: add request callback config option (libp2p/go-libp2p-kad-dht#1011)
- github.com/libp2p/go-libp2p-kbucket (v0.6.4 -> v0.6.5):
- upgrading deps (#137) (libp2p/go-libp2p-kbucket#137)
- github.com/libp2p/go-libp2p-pubsub (v0.12.0 -> v0.13.0):
- Release v0.13.0 (#593) (libp2p/go-libp2p-pubsub#593)
- Allow cancelling IWANT using IDONTWANT (#591) (libp2p/go-libp2p-pubsub#591)
- Improve IDONTWANT Flood Protection (#590) (libp2p/go-libp2p-pubsub#590)
- Fix the Router's Ability to Prune the Mesh Periodically (#589) (libp2p/go-libp2p-pubsub#589)
- Add Function to Enable Application Layer to Send Direct Control Messages (#562) (libp2p/go-libp2p-pubsub#562)
- Do not format expensive debug messages in non-debug levels in doDropRPC (#580) (libp2p/go-libp2p-pubsub#580)
- github.com/libp2p/go-libp2p-record (v0.2.0 -> v0.3.1):
- fix: missing protobuf package (#64) (libp2p/go-libp2p-record#64)
- release: v0.3.0 (#63) (libp2p/go-libp2p-record#63)
- fix: protobuf namespace conflicts (#62) (libp2p/go-libp2p-record#62)
- Remove gogo protobuf (#60) (libp2p/go-libp2p-record#60)
- github.com/libp2p/go-libp2p-routing-helpers (v0.7.4 -> v0.7.5):
- new version (libp2p/go-libp2p-routing-helpers#90)
- Consolidate multi-error packages by choosing one (libp2p/go-libp2p-routing-helpers#88)
- update dependencies (libp2p/go-libp2p-routing-helpers#89)
- github.com/multiformats/go-multiaddr (v0.14.0 -> v0.15.0):
- chore: release v0.15.0 (#266) (multiformats/go-multiaddr#266)
- refactor: Backwards compatible Encapsulate/Decapsulate/Join/NewComponent (#272) (multiformats/go-multiaddr#272)
- refactor: keep same api as v0.14.0 for SplitFirst/SplitLast (#271) (multiformats/go-multiaddr#271)
- refactor: Follows up on #261 (#264) (multiformats/go-multiaddr#264)
- refactor!: make the API harder to misuse (#261) (multiformats/go-multiaddr#261)
👨👩👧👦 Contributors
Contributor | Commits | Lines ± | Files Changed |
---|---|---|---|
Hector Sanjuan | 100 | +4777/-1495 | 200 |
Marco Munizaga | 22 | +3482/-1632 | 122 |
Andrew Gillis | 69 | +1628/-1509 | 191 |
sukun | 13 | +1240/-288 | 67 |
Simon Menke | 7 | +766/-97 | 16 |
Guillaume Michel | 33 | +438/-383 | 62 |
Marcin Rataj | 24 | +494/-266 | 47 |
Sergey Gorbunov | 4 | +384/-103 | 20 |
AvyChanna | 1 | +294/-193 | 9 |
gammazero | 22 | +208/-217 | 28 |
Dennis Trautwein | 3 | +425/-0 | 8 |
web3-bot | 18 | +193/-184 | 46 |
Steven Allen | 8 | +204/-82 | 13 |
Marten Seemann | 5 | +215/-63 | 11 |
Daniel Norman | 2 | +225/-0 | 6 |
Abhinav Prakash | 1 | +190/-2 | 4 |
guillaumemichel | 3 | +93/-56 | 15 |
youyyytrok | 1 | +84/-63 | 29 |
Nishant Das | 2 | +111/-1 | 4 |
Pop Chunhapanya | 1 | +109/-0 | 2 |
Michael Muré | 7 | +78/-29 | 15 |
Jorropo | 4 | +53/-20 | 7 |
Ryan Skidmore | 1 | +62/-0 | 2 |
GITSRC | 1 | +44/-0 | 3 |
Russell Dempsey | 1 | +22/-17 | 10 |
Adin Schmahmann | 2 | +29/-8 | 3 |
Gabriel Cruz | 1 | +13/-13 | 1 |
Wlynxg | 3 | +12/-9 | 3 |
Khaled Yakdan | 1 | +11/-10 | 1 |
Yahya Hassanzadeh, Ph.D. | 1 | +17/-0 | 1 |
Can ZHANG | 2 | +15/-2 | 3 |
Pavel Zbitskiy | 1 | +13/-1 | 2 |
Yuttakhan B. | 1 | +6/-6 | 6 |
Hlib Kanunnikov | 2 | +9/-2 | 4 |
Petar Maymounkov | 1 | +7/-2 | 1 |
Prithvi Shahi | 2 | +8/-0 | 2 |
Piotr Galar | 1 | +4/-4 | 2 |
Michael Vorburger | 1 | +6/-0 | 1 |
Gus Eggert | 2 | +6/-0 | 2 |
Raúl Kripalani | 1 | +4/-0 | 1 |
linchizhen | 1 | +1/-1 | 1 |
achingbrain | 1 | +1/-1 | 1 |
Rod Vagg | 1 | +1/-1 | 1 |
Ian Davis | 1 | +1/-1 | 1 |
Fabio Bozzo | 1 | +1/-1 | 1 |