From 474c448033b7e4dec71f576cfb45d47e33c47a84 Mon Sep 17 00:00:00 2001 From: Richard Ramos Date: Fri, 15 May 2026 09:03:01 -0400 Subject: [PATCH] chore: update assignees and remove refactor as it wont be implemented this quarter --- .../p2p/ift/2026q2-nimlibp2p-maintenance.md | 2 +- .../p2p/ift/2026q2-nimlibp2p-nat-traversal.md | 4 +- ...q2-nimlibp2p-stream-connection-refactor.md | 55 ------------------- content/p2p/index.md | 1 - 4 files changed, 3 insertions(+), 59 deletions(-) delete mode 100644 content/p2p/ift/2026q2-nimlibp2p-stream-connection-refactor.md diff --git a/content/p2p/ift/2026q2-nimlibp2p-maintenance.md b/content/p2p/ift/2026q2-nimlibp2p-maintenance.md index e17a0fb73b..0a52ab967b 100644 --- a/content/p2p/ift/2026q2-nimlibp2p-maintenance.md +++ b/content/p2p/ift/2026q2-nimlibp2p-maintenance.md @@ -256,7 +256,7 @@ implement the agreed changes. ### WSS handler socket leak * fully qualified name: `ift-ts:p2p:ift:2026q2-nimlibp2p-maintenance:wss-socket-leak` -* owner: not assigned yet +* owner: richard * status: not started * start-date: 2026/04/01 * end-date: 2026/06/30 diff --git a/content/p2p/ift/2026q2-nimlibp2p-nat-traversal.md b/content/p2p/ift/2026q2-nimlibp2p-nat-traversal.md index e6350583da..d0c54c3cd4 100644 --- a/content/p2p/ift/2026q2-nimlibp2p-nat-traversal.md +++ b/content/p2p/ift/2026q2-nimlibp2p-nat-traversal.md @@ -30,7 +30,7 @@ the library instead of duplicating efforts downstream. ### NAT Address Setup API * fully qualified name: `ift-ts:p2p:ift:2026q2-nimlibp2p-nat-traversal:address-setup-api` -* owner: not assigned yet +* owner: gabe * status: not started * start-date: 2026/05/01 * end-date: 2026/06/30 @@ -51,7 +51,7 @@ explicit external IP configuration. ### UPnP and NAT-PMP Integration * fully qualified name: `ift-ts:p2p:ift:2026q2-nimlibp2p-nat-traversal:upnp-pmp` -* owner: not assigned yet +* owner: gabe * status: not started * start-date: 2026/04/01 * end-date: 2026/06/30 diff --git a/content/p2p/ift/2026q2-nimlibp2p-stream-connection-refactor.md b/content/p2p/ift/2026q2-nimlibp2p-stream-connection-refactor.md deleted file mode 100644 index fb4eaec994..0000000000 --- a/content/p2p/ift/2026q2-nimlibp2p-stream-connection-refactor.md +++ /dev/null @@ -1,55 +0,0 @@ ---- - -title: nim-libp2p Stream and Connection Refactor -tags: - - "2026q2" - - "p2p" - - "ift" -draft: false -description: Refactor nim-libp2p stream and connection abstractions - ---- - -`ift-ts:p2p:ift:2026q2-nimlibp2p-stream-connection-refactor` - -Refactor nim-libp2p stream and connection abstractions so peer connections and protocol streams are represented by distinct types. - -## Description - -The current nim-libp2p implementation uses `Connection` both for actual peer -connections and for streams opened over multiplexed connections. In the current -code shape `Connection` inherits from `LPStream`, muxers return `Connection` -from `newStream`, and protocol handlers receive `Connection` even when they are -handling a single protocol stream. This makes the abstraction harder to -understand, increases the cost of onboarding contributors, and complicates -resource lifecycle work such as close/reset behavior and stream ownership. - -This commitment separates the concepts so `Connection` refers to peer-level -connections and a new stream abstraction is used for protocol streams. The -refactor should preserve downstream compatibility during the migration and -reduce ambiguity in code, tests, metrics, and documentation. - -## Task List - -### Stream and Connection Abstractions - -* fully qualified name: `ift-ts:p2p:ift:2026q2-nimlibp2p-stream-connection-refactor:abstractions` -* owner: not assigned yet -* status: not started -* start-date: 2026/05/01 -* end-date: 2026/06/30 - -#### Description -Introduce a clear stream abstraction for protocol streams and narrow -`Connection` to represent actual peer connections. Update muxer and connection -manager interfaces so opening a stream returns the stream type, while peer-level -connection state remains on connection objects. - - -#### Deliverables -- New stream-level abstraction used by muxers and protocol handlers -- `Connection` narrowed to peer-level connection state and behavior -- Compatibility shims or migration aliases for existing downstream users -- Updated close/reset lifecycle behavior for streams and connections -- Tests covering stream creation, close/reset semantics, and protocol handler usage -- Documentation and examples using the new names consistently diff --git a/content/p2p/index.md b/content/p2p/index.md index 129e859755..51367c0b81 100644 --- a/content/p2p/index.md +++ b/content/p2p/index.md @@ -27,7 +27,6 @@ Major future work items on nim-libp2p (also beyond this reporting period are cap * [[p2p/ift/2026q2-nimlibp2p-maintenance|nimlibp2p-maintenance]] * [[p2p/ift/2026q2-nimlibp2p-nat-traversal|nimlibp2p-nat-traversal]] * [[p2p/ift/2026q2-nimlibp2p-stream-budgets|nimlibp2p-stream-budgets]] -* [[p2p/ift/2026q2-nimlibp2p-stream-connection-refactor|nimlibp2p-stream-connection-refactor]] ## 2026q1 `ift-ts:p2p:`