mirror of
https://github.com/varun-r-mallya/py-libp2p.git
synced 2026-02-12 16:10:57 +00:00
Compile release notes for v0.2.10
This commit is contained in:
@ -3,6 +3,69 @@ Release Notes
|
|||||||
|
|
||||||
.. towncrier release notes start
|
.. towncrier release notes start
|
||||||
|
|
||||||
|
py-libp2p v0.2.10 (2025-08-12)
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
Breaking Changes
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
- 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>`__)
|
||||||
|
|
||||||
|
|
||||||
|
Bugfixes
|
||||||
|
~~~~~~~~
|
||||||
|
|
||||||
|
- Improved type safety in ``get_mux()`` and ``get_protocols()`` by returning properly typed values instead
|
||||||
|
of ``Any``. Also updated ``identify.py`` and ``discovery.py`` to handle ``None`` values safely and
|
||||||
|
compare protocols correctly. (`#746 <https://github.com/libp2p/py-libp2p/issues/746>`__)
|
||||||
|
- fixed malformed PeerId in test_peerinfo (`#757 <https://github.com/libp2p/py-libp2p/issues/757>`__)
|
||||||
|
- 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>`__)
|
||||||
|
- 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>`__)
|
||||||
|
- 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>`__)
|
||||||
|
|
||||||
|
|
||||||
|
Improved Documentation
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
- 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>`__)
|
||||||
|
- Clarified the requirement for a trailing newline in newsfragments to pass lint checks. (`#775 <https://github.com/libp2p/py-libp2p/issues/775>`__)
|
||||||
|
|
||||||
|
|
||||||
|
Features
|
||||||
|
~~~~~~~~
|
||||||
|
|
||||||
|
- 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>`__)
|
||||||
|
- Add lock for read/write to avoid interleaving receiving messages in mplex_stream.py (`#748 <https://github.com/libp2p/py-libp2p/issues/748>`__)
|
||||||
|
- Add logic to clear_peerdata method in peerstore (`#750 <https://github.com/libp2p/py-libp2p/issues/750>`__)
|
||||||
|
- Added the ``Certified Addr-Book`` interface supported by ``Envelope`` and ``PeerRecord`` class.
|
||||||
|
Integrated the signed-peer-record transfer in the identify/push protocols. (`#753 <https://github.com/libp2p/py-libp2p/issues/753>`__)
|
||||||
|
- add length-prefixed support to identify protocol (`#761 <https://github.com/libp2p/py-libp2p/issues/761>`__)
|
||||||
|
|
||||||
|
|
||||||
|
Internal Changes - for py-libp2p Contributors
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
- 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>`__)
|
||||||
|
- Add comprehensive tests for relay_discovery method in circuit_relay_v2 (`#749 <https://github.com/libp2p/py-libp2p/issues/749>`__)
|
||||||
|
- [mplex] Add timeout and error handling during stream close (`#752 <https://github.com/libp2p/py-libp2p/issues/752>`__)
|
||||||
|
- fixed a typecheck error using cast in peerinfo.py (`#757 <https://github.com/libp2p/py-libp2p/issues/757>`__)
|
||||||
|
- 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>`__)
|
||||||
|
- Pin py-multiaddr dependency to specific git commit db8124e2321f316d3b7d2733c7df11d6ad9c03e6 (`#766 <https://github.com/libp2p/py-libp2p/issues/766>`__)
|
||||||
|
- Replace the libp2p.peer.ID cache attributes with functools.cached_property functional decorator. (`#772 <https://github.com/libp2p/py-libp2p/issues/772>`__)
|
||||||
|
- Yamux RawConnError Logging Refactor - Improved error handling and debug logging (`#784 <https://github.com/libp2p/py-libp2p/issues/784>`__)
|
||||||
|
- 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>`__)
|
||||||
|
- Remove the already completed TODO tasks in Peerstore:
|
||||||
|
TODO: Set up an async task for periodic peer-store cleanup for expired addresses and records.
|
||||||
|
TODO: Make proper use of this function (`#819 <https://github.com/libp2p/py-libp2p/issues/819>`__)
|
||||||
|
|
||||||
|
|
||||||
|
Performance Improvements
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
- Added throttling for async topic validators in validate_msg, enforcing a
|
||||||
|
concurrency limit to prevent resource exhaustion under heavy load. (`#755 <https://github.com/libp2p/py-libp2p/issues/755>`__)
|
||||||
|
|
||||||
|
|
||||||
py-libp2p v0.2.9 (2025-07-09)
|
py-libp2p v0.2.9 (2025-07-09)
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
|
|||||||
@ -1 +0,0 @@
|
|||||||
remove FIXME comment since it's obsolete and 32-byte prefix support is there but not enabled by default
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Added `Bootstrap` peer discovery module that allows nodes to connect to predefined bootstrap peers for network discovery.
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
Improved type safety in `get_mux()` and `get_protocols()` by returning properly typed values instead
|
|
||||||
of `Any`. Also updated `identify.py` and `discovery.py` to handle `None` values safely and
|
|
||||||
compare protocols correctly.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Add lock for read/write to avoid interleaving receiving messages in mplex_stream.py
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Add comprehensive tests for relay_discovery method in circuit_relay_v2
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Add logic to clear_peerdata method in peerstore
|
|
||||||
@ -1 +0,0 @@
|
|||||||
[mplex] Add timeout and error handling during stream close
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
Added the `Certified Addr-Book` interface supported by `Envelope` and `PeerRecord` class.
|
|
||||||
Integrated the signed-peer-record transfer in the identify/push protocols.
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
Added throttling for async topic validators in validate_msg, enforcing a
|
|
||||||
concurrency limit to prevent resource exhaustion under heavy load.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
fixed malformed PeerId in test_peerinfo
|
|
||||||
@ -1 +0,0 @@
|
|||||||
fixed a typecheck error using cast in peerinfo.py
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Improve error message under the function decode_uvarint_from_stream in libp2p/utils/varint.py file
|
|
||||||
@ -1 +0,0 @@
|
|||||||
identify protocol use now prefix-length messages by default. use use_varint_format param for old raw messages
|
|
||||||
@ -1 +0,0 @@
|
|||||||
add length-prefixed support to identify protocol
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Fix raw format reading in identify/push protocol and add comprehensive test coverage for both varint and raw formats
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Pin py-multiaddr dependency to specific git commit db8124e2321f316d3b7d2733c7df11d6ad9c03e6
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Replace the libp2p.peer.ID cache attributes with functools.cached_property functional decorator.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Clarified the requirement for a trailing newline in newsfragments to pass lint checks.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
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.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
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.
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Yamux RawConnError Logging Refactor - Improved error handling and debug logging
|
|
||||||
@ -1 +0,0 @@
|
|||||||
The TODO IK patterns in Noise has been deprecated in specs: https://github.com/libp2p/specs/tree/master/noise#handshake-pattern
|
|
||||||
@ -1 +0,0 @@
|
|||||||
Recompiled protobufs that were out of date and added a `make` rule so that protobufs are always up to date.
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
Remove the already completed TODO tasks in Peerstore:
|
|
||||||
TODO: Set up an async task for periodic peer-store cleanup for expired addresses and records.
|
|
||||||
TODO: Make proper use of this function
|
|
||||||
Reference in New Issue
Block a user