Skip to content

Conversation

@lexnv
Copy link
Collaborator

@lexnv lexnv commented Jan 16, 2026

This PR improves the connection management robustness by ensuring that the closed connections are reported.

If a registered protocol could not receive the InnerTransportEvent::ConnectionClosed the function would fail to inform the transport manager. This would cause litep2p to think that the connection is still active, while the async task of the raw socket would exit immediately after the function call.

The PR makes sure are not returning on the first encountered error and switch to a best-effort approach.

@lexnv lexnv self-assigned this Jan 16, 2026
@lexnv lexnv merged commit 8aaeba4 into master Jan 21, 2026
8 checks passed
@lexnv lexnv deleted the lexnv/rep-con-closed branch January 21, 2026 10:08
dmitry-markin added a commit that referenced this pull request Jan 21, 2026
## [0.13.0] - 2026-01-21

This release brings multiple fixes to both the transport and
application-level protocols.

Specifically, it enhances WebSocket stability by resolving AsyncWrite
errors and ensuring that partial writes during the negotiation phase no
longer trigger connection failures.

At the same time, Bitswap client functionality is introduced, which
makes this release semver breaking.

### Added

- Add Bitswap client
([#501](#501))

### Fixed

- notif/fix: Avoid CPU busy loops on litep2p full shutdown
([#521](#521))
- protocol: Ensure transport manager knows about closed connections
([#515](#515))
- substream: Decrement the bytes counter to avoid excessive flushing
([#511](#511))
- crypto/noise: Improve stability of websockets by fixing AsyncWrite
implementation ([#518](#518))
- bitswap: Split block responses into batches under 2 MiB
([#516](#516))
- crypto/noise: Fix connection negotiation logic on partial writes
([#519](#519))
- substream/fix: Fix partial reads for ProtocolCodec::Identity
([#512](#512))
- webrtc: Avoid panics returning error instead
([#509](#509))
- bitswap: e2e test & max payload fix
([#508](#508))
- tcp: Exit connections when events fail to propagate to protocols
([#506](#506))
- webrtc: Avoid future being dropped when channel is full
([#483](#483))

---------

Co-authored-by: Alexandru Vasile <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants