Skip to content

v0.8.0

Latest

Choose a tag to compare

@sumanjeet0012 sumanjeet0012 released this 26 Sep 13:00
· 7 commits to main since this release
50952f7

What's Changed

  • feat(examples): Add P2P Calc, EtherCalc-powered collaborative spreadsheet example using py-libp2p by @seetadev in #1382
  • fix(tcp): re-enable stale IPv6 listen/dial integration test by @yashksaini-coder in #1375
  • fix: stabilize identify integration tests under parallel xdist load by @acul71 in #1378
  • refactor(pubsub-test): predicate-based readiness in subscribed_mesh fixture by @yashksaini-coder in #1315
  • Prometheus metrics for libp2p protocols by @lla-dane in #1199
  • fix(bootstrap): unconditionally support websocket, quic, and tcp multiaddrs by @sumanjeet0012 in #1392
  • fix(quic): resolve double-start race condition in QUICConnection lifecycle by @sumanjeet0012 in #1393
  • fix(pubsub): replay recent messages once a peer's outbound stream is registered by @gmelodie in #1398
  • fix(kad-dht): don't dial ourselves on FIND_NODE, and return the target per the spec exception by @gmelodie in #1387
  • build(deps): bump fast-uri from 3.1.2 to 3.1.4 in /examples/request_response/synapse_sidecar by @dependabot[bot] in #1410
  • fix typo: recieved -> received by @SAY-5 in #1330
  • build(deps): bump ws and viem in /examples/request_response/synapse_sidecar by @dependabot[bot] in #1412
  • Audit and comprehensive stability improvements in py-libp2p by @sumanjeet0012 in #1411
  • fix(pubsub): disconnect hygiene and once-per-subscription mcache replay by @gmelodie in #1407
  • mDNS Discovery: Spec Compliance, IPv6 Support, and Bug Fixes by @sumanjeet0012 in #1420
  • Bootstrap: Spec Compliance and bug fixes by @sumanjeet0012 in #1418
  • build(deps): bump fast-uri from 3.1.4 to 3.1.5 in /examples/request_response/synapse_sidecar by @dependabot[bot] in #1427
  • test(pubsub): de-flake test_gossip_gate_filters_peers (#1401) by @yashksaini-coder in #1402
  • feat(kad_dht): enforce IP subnet diversity in k-buckets (#1383) by @yashksaini-coder in #1399
  • test(timed_cache): de-flake test_expiry_removal (#1408) by @yashksaini-coder in #1409
  • test(timed_cache): de-flake sibling expiry waits (#1428) by @acul71 in #1429
  • feat(kad-dht): add RoutingTableDiagnostics for routing health inspection by @bhuvan-somisetty in #1332
  • test(quic): join nurseries instead of sleeping in listener race tests by @yashksaini-coder in #1431
  • refactor(webrtc): deduplicate _varint.py — use libp2p.utils.varint by @yashksaini-coder in #1395
  • fix(webrtc): harden /sdp HTTP server against memory-amplification DoS by @yashksaini-coder in #1396
  • feat(webrtc): add UdpMux for shared-port WebRTC-Direct inbound dispatch by @yashksaini-coder in #1397
  • fix: bound varint-prefixed DHT and Rendezvous message sizes by @acul71 in #1439
  • test(pubsub): de-flake identify-aware publish waits by @acul71 in #1444
  • fix: allow reading buffered mplex data after remote reset by @acul71 in #1445
  • Health monitoring (continues closed PR #915) by @acul71 in #1203
  • test(kad-dht): wait for routing-table readiness by @acul71 in #1457
  • fix: networking stack hardening — DHT spec compliance, QUIC/bitswap leaks, connmgr bugs by @sumanjeet0012 in #1426
  • test(relay): de-flake circuit-v2 message-routing test with readiness polls by @yashksaini-coder in #1443
  • feat(webrtc): STUN-dispatch WebRTC-Direct listener (v1) + v1 dialer, /sdp harness opt-in by @yashksaini-coder in #1449
  • ci: install webrtc extra in tox so WebRTC tests run in CI by @yashksaini-coder in #1446
  • fix(webrtc): wire the WebRTC-Direct inbound path; spec Noise roles; real loopback test by @yashksaini-coder in #1447
  • feat(webrtc): run aiortc RTCPeerConnection over UdpMux (attach_muxed_connection) by @yashksaini-coder in #1448
  • fix(varint): reject truncated and over-long varints by @yashksaini-coder in #1441
  • feat(kad_dht): configurable subnet-diversity limits + table-wide IP-group cap by @yashksaini-coder in #1442
  • fix(varint): reject 10-byte terminator overflow and align error types by @acul71 in #1462
  • test(kad_dht): cover the per-query FIND_NODE timeout against a silent peer by @yashksaini-coder in #1435
  • fix: migrate ControlIHave/ControlIWant messageIDs to bytes by @barnabasbusa in #1146
  • fix(tcp): wrap ProtocolLookupError on dial + #391 regression tests by @acul71 in #1465
  • fix(peerstore): load persisted keypairs on restore by @acul71 in #1467
  • fix(network): wrap ConnectionResetError in RawConnError for read/write by @acul71 in #1469
  • feat(webrtc): WebRTC-Direct v2 flow (libp2p/specs#715) — listener accepts v2, dialer opt-in by @yashksaini-coder in #1459
  • fix(anyio): event-driven cancel for Windows lifecycle flake by @acul71 in #1473
  • feat(health): /ipfs/ping/1.0.0 probe, docs, real-network tests, and GUI (#1453) by @acul71 in #1455
  • fix(pubsub): event-driven mesh GRAFT on peer subscription by @acul71 in #1475
  • feat(host): addrs_factory and DisableIdentifyAddressDiscovery by @acul71 in #1477
  • docs(examples): extend announce_addrs for addrs_factory and disable discovery by @acul71 in #1479
  • docs(filecoin): add protocol support matrix and pubsub compatibility snapshot by @acul71 in #1480
  • docs(filecoin): add network parity audit and interop matrix by @acul71 in #1484
  • fix(relay): new HOP stream for CONNECT after RESERVE (hole-punch interop) by @acul71 in #1476
  • test(interop): go-libp2p WebRTC-Direct interop tests by @yashksaini-coder in #1471
  • feat(filecoin): capture negotiated transport/security/muxer metadata by @acul71 in #1488
  • test(pubsub): de-flake gossipsub direct-peer waits (#1491) by @acul71 in #1492
  • test(pubsub): replace trio.sleep readiness waits with event-driven helpers by @acul71 in #1494
  • fix(webrtc): complete go->py WebRTC-Direct inbound dials (#1470) by @yashksaini-coder in #1495
  • fix(swarm): close connections on shutdown so their sockets are released by @yashksaini-coder in #1486
  • chore(deps): bump github.com/pion/stun/v3 from 3.1.1 to 3.1.5 in /tests/interop/go_libp2p/webrtc_direct by @dependabot[bot] in #1489
  • chore(deps): bump fast-uri from 3.1.5 to 3.1.7 in /examples/request_response/synapse_sidecar by @dependabot[bot] in #1464
  • Revert #1464: undo fast-uri bump merged with failing CI by @acul71 in #1496
  • fix(mplex): close secured connection on shutdown so its socket is released by @yashksaini-coder in #1497
  • fix(host): make BasicHost.close() stop services and tear down tests by @acul71 in #1499
  • fix: include nim-libp2p interop tests in pyrefly (#1145) by @acul71 in #1500
  • fix(webrtc): harden /sdp harness bind on Windows + event-driven WebRTC tests (#1501) by @acul71 in #1502
  • fix: improve mplex warning logs and QUIC/Mplex type annotations by @acul71 in #1503
  • test(pubsub): de-flake test_fanout_maintenance (#1504) by @acul71 in #1505
  • feat: add DHT Peer-ID chat example (issue #880) by @acul71 in #1506
  • feat(webtransport): HTTP/3-camouflaged WebTransport transport (#1507) by @acul71 in #1508
  • fix(webtransport): mint Chrome-compatible self-signed certs by @acul71 in #1515
  • fix: quiet host.run/close on expected connection teardown by @acul71 in #1517
  • fix(interop): unindent listener Redis publish after host.run by @acul71 in #1519
  • docs(webrtc): STUN listener vs /sdp harness, and v1/v2 dial guidance by @yashksaini-coder in #1513
  • fix: bound remote pubsub subscriptions to prevent memory exhaustion by @acul71 in #1350
  • chore(deps): raise pycryptodome and pynacl minimums (#654) by @acul71 in #1524
  • chore(deps): bump github.com/pion/stun/v3 from 3.1.1 to 3.1.5 in /tests/interop/go_libp2p/webtransport by @dependabot[bot] in #1509
  • chore(deps): bump github.com/pion/dtls/v3 from 3.1.2 to 3.1.4 in /tests/interop/go_libp2p/webtransport by @dependabot[bot] in #1510
  • fix(quic): preserve half-close FIN for request/response streams by @acul71 in #1522
  • fix(quic): send-side write backpressure for honest throughput by @acul71 in #1523
  • Feat/persist peer identity 312 by @Smartdevs17 in #1185
  • fix(mplex/tls): unblock teardown when SecureSession EOF is quiet-exited by @acul71 in #1527
  • fix(quic): improve honest throughput via event loop, MTU wiring, CC knobs by @acul71 in #1529
  • fix(mplex): enforce MaxMessageSize and go-mplex flow control by @acul71 in #1525
  • fix(quic): ignore late inbound FIN-only events (#1530) by @acul71 in #1531
  • fix: clear residual ResourceWarnings and enable CI guard by @acul71 in #1533
  • test(examples): reap echo subprocess cleanly in test_echo_thin_waist (fixes #1541) by @yashksaini-coder in #1542
  • refactor(identify): strip /p2p via decapsulate_code(P_P2P) (refs #1223) by @yashksaini-coder in #1539
  • fix(rendezvous): strip /p2p suffix from REGISTER addrs by @sumanjeet0012 in #1536
  • fix(relay): circuit relay v2 + DCUtR spec compliance for go/rust interop by @sumanjeet0012 in #1538
  • Fix bumpversion sync to v0.7.0 by @sumanjeet0012 in #1547

New Contributors

Full Changelog: v0.7.0...v0.8.0