v0.8.1
[0.8.1] - 2024-11-14
This release includes key fixes that enhance the stability and performance of the litep2p library, focusing on long-running stability and improvements to polling mechanisms.
Long Running Stability Improvements
This issue caused long-running nodes to reject all incoming connections, impacting overall stability.
Addressed a bug in the connection limits functionality that incorrectly tracked connections due for rejection.
This issue caused an artificial increase in inbound peers, which were not being properly removed from the connection limit count.
This fix ensures more accurate tracking and management of peer connections #286.
Polling implementation fixes
This release provides multiple fixes to the polling mechanism, improving how connections and events are processed:
- Resolved an overflow issue in TransportContext's polling index for streams, preventing potential crashes.
- Fixed a delay in the manager's
poll_next
function that prevented immediate polling of newly added futures. - Corrected an issue where the listener did not return Poll::Ready(None) when it was closed, ensuring proper signal handling.
Fixed
- manager: Fix connection limits tracking of rejected connections (#286)
- transport: Fix waking up on filtered events from
poll_next
(#287) - transports: Fix missing Poll::Ready(None) event from listener (#285)
- manager: Avoid overflow on stream implementation for
TransportContext
(#283) - manager: Log when polling returns Ready(None) (#284)