Skip to content

Commit 2730db4

Browse files
committed
Compile release notes for v0.2.10
1 parent bb896da commit 2730db4

25 files changed

+63
-30
lines changed

docs/release_notes.rst

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,69 @@ Release Notes
33

44
.. towncrier release notes start
55
6+
py-libp2p v0.2.10 (2025-08-12)
7+
------------------------------
8+
9+
Breaking Changes
10+
~~~~~~~~~~~~~~~~
11+
12+
- identify protocol use now prefix-length messages by default. use use_varint_format param for old raw messages (`#761 <https://github.com/libp2p/py-libp2p/issues/761>`__)
13+
14+
15+
Bugfixes
16+
~~~~~~~~
17+
18+
- Improved type safety in ``get_mux()`` and ``get_protocols()`` by returning properly typed values instead
19+
of ``Any``. Also updated ``identify.py`` and ``discovery.py`` to handle ``None`` values safely and
20+
compare protocols correctly. (`#746 <https://github.com/libp2p/py-libp2p/issues/746>`__)
21+
- fixed malformed PeerId in test_peerinfo (`#757 <https://github.com/libp2p/py-libp2p/issues/757>`__)
22+
- Fixed incorrect handling of raw protobuf format in identify protocol. The identify example now properly handles both raw and length-prefixed (varint) message formats, provides better error messages, and displays connection status with peer IDs. Replaced mock-based tests with comprehensive real network integration tests for both formats. (`#778 <https://github.com/libp2p/py-libp2p/issues/778>`__)
23+
- Fixed incorrect handling of raw protobuf format in identify push protocol. The identify push example now properly handles both raw and length-prefixed (varint) message formats, provides better error messages, and displays connection status with peer IDs. Replaced mock-based tests with comprehensive real network integration tests for both formats. (`#784 <https://github.com/libp2p/py-libp2p/issues/784>`__)
24+
- Recompiled protobufs that were out of date and added a ``make`` rule so that protobufs are always up to date. (`#818 <https://github.com/libp2p/py-libp2p/issues/818>`__)
25+
26+
27+
Improved Documentation
28+
~~~~~~~~~~~~~~~~~~~~~~
29+
30+
- Improve error message under the function decode_uvarint_from_stream in libp2p/utils/varint.py file (`#760 <https://github.com/libp2p/py-libp2p/issues/760>`__)
31+
- Clarified the requirement for a trailing newline in newsfragments to pass lint checks. (`#775 <https://github.com/libp2p/py-libp2p/issues/775>`__)
32+
33+
34+
Features
35+
~~~~~~~~
36+
37+
- Added ``Bootstrap`` peer discovery module that allows nodes to connect to predefined bootstrap peers for network discovery. (`#711 <https://github.com/libp2p/py-libp2p/issues/711>`__)
38+
- Add lock for read/write to avoid interleaving receiving messages in mplex_stream.py (`#748 <https://github.com/libp2p/py-libp2p/issues/748>`__)
39+
- Add logic to clear_peerdata method in peerstore (`#750 <https://github.com/libp2p/py-libp2p/issues/750>`__)
40+
- Added the ``Certified Addr-Book`` interface supported by ``Envelope`` and ``PeerRecord`` class.
41+
Integrated the signed-peer-record transfer in the identify/push protocols. (`#753 <https://github.com/libp2p/py-libp2p/issues/753>`__)
42+
- add length-prefixed support to identify protocol (`#761 <https://github.com/libp2p/py-libp2p/issues/761>`__)
43+
44+
45+
Internal Changes - for py-libp2p Contributors
46+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
47+
48+
- remove FIXME comment since it's obsolete and 32-byte prefix support is there but not enabled by default (`#592 <https://github.com/libp2p/py-libp2p/issues/592>`__)
49+
- Add comprehensive tests for relay_discovery method in circuit_relay_v2 (`#749 <https://github.com/libp2p/py-libp2p/issues/749>`__)
50+
- [mplex] Add timeout and error handling during stream close (`#752 <https://github.com/libp2p/py-libp2p/issues/752>`__)
51+
- fixed a typecheck error using cast in peerinfo.py (`#757 <https://github.com/libp2p/py-libp2p/issues/757>`__)
52+
- Fix raw format reading in identify/push protocol and add comprehensive test coverage for both varint and raw formats (`#761 <https://github.com/libp2p/py-libp2p/issues/761>`__)
53+
- Pin py-multiaddr dependency to specific git commit db8124e2321f316d3b7d2733c7df11d6ad9c03e6 (`#766 <https://github.com/libp2p/py-libp2p/issues/766>`__)
54+
- Replace the libp2p.peer.ID cache attributes with functools.cached_property functional decorator. (`#772 <https://github.com/libp2p/py-libp2p/issues/772>`__)
55+
- Yamux RawConnError Logging Refactor - Improved error handling and debug logging (`#784 <https://github.com/libp2p/py-libp2p/issues/784>`__)
56+
- The TODO IK patterns in Noise has been deprecated in specs: https://github.com/libp2p/specs/tree/master/noise#handshake-pattern (`#816 <https://github.com/libp2p/py-libp2p/issues/816>`__)
57+
- Remove the already completed TODO tasks in Peerstore:
58+
TODO: Set up an async task for periodic peer-store cleanup for expired addresses and records.
59+
TODO: Make proper use of this function (`#819 <https://github.com/libp2p/py-libp2p/issues/819>`__)
60+
61+
62+
Performance Improvements
63+
~~~~~~~~~~~~~~~~~~~~~~~~
64+
65+
- Added throttling for async topic validators in validate_msg, enforcing a
66+
concurrency limit to prevent resource exhaustion under heavy load. (`#755 <https://github.com/libp2p/py-libp2p/issues/755>`__)
67+
68+
669
py-libp2p v0.2.9 (2025-07-09)
770
-----------------------------
871

newsfragments/592.internal.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/711.feature.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/746.bugfix.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

newsfragments/748.feature.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/749.internal.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/750.feature.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/752.internal.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/753.feature.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

newsfragments/755.performance.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

0 commit comments

Comments
 (0)