refactored and moved all interfaces to abc.py (#504)

* refactored : host_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored : network_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored : notifee_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored : net_connection_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored: raw_connection_interface, secure_conn_interface and stream_muxer abc.py

* refactored: addrbook_interface

* refactored :peerdata_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :peermetadata_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :multiselect_client_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :multiselect_communicator_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :multiselect_muxer_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :interfaces

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :security_transport_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* refactored :listener_interface

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* moved all interfaces and typing files

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>

* fixed documentation and moved pubsub abc.py

Co-authored-by: Khwahish Patel <khwahish.p1@ahduni.edu.in>

* added exclude-members in custom_types docs

* added : newsfragment for moving all interfaces to libp2p.abc

---------

Co-authored-by: mystical-prog <jdgt.vd.0405@gmail.com>
Co-authored-by: Mystical <125946525+mystical-prog@users.noreply.github.com>
This commit is contained in:
Khwahish Patel
2025-02-22 04:31:45 +05:30
committed by GitHub
parent 4e64347f1e
commit d7eab27564
77 changed files with 1338 additions and 1883 deletions

152
README.md
View File

@ -29,94 +29,94 @@ py-libp2p aims for conformity with [the standard libp2p modules](https://libp2p.
> Legend: ✅: Done   🛠️: In Progress   🚫: Missing   ❌: Not planned
| libp2p Node | Status |
| ------------ | :-----------: |
| **`libp2p`** | |
| libp2p Node | Status |
| ------------ | :----: |
| **`libp2p`** | |
| Core Protocols | Status |
| -------------- | :-----------: |
| **`Ping`** | |
| **`Identify`** | |
| Core Protocols | Status |
| -------------- | :----: |
| **`Ping`** | |
| **`Identify`** | |
| Transport Protocols | Status |
| ------------------- | :-----------: |
| **`TCP`** | |
| **`QUIC`** | 🛠️ |
| Transport Protocols | Status |
| ------------------- | :----: |
| **`TCP`** | |
| **`QUIC`** | 🛠️ |
| **`UDP`** | 🚫 |
| **`WebSockets`** | |
| **`UTP`** | |
| **`WebRTC`** | |
| **`SCTP`** | |
| **`Tor`** | |
| **`i2p`** | |
| **`cjdns`** | |
| **`Bluetooth LE`** | |
| **`Audio TP`** | |
| **`Zerotier`** | |
| **`WebSockets`** | |
| **`UTP`** | |
| **`WebRTC`** | |
| **`SCTP`** | |
| **`Tor`** | |
| **`i2p`** | |
| **`cjdns`** | |
| **`Bluetooth LE`** | |
| **`Audio TP`** | |
| **`Zerotier`** | |
| Stream Muxers | Status |
| ---------------- | :-----------: |
| **`multiplex`** | |
| **`yamux`** | 🚫 |
| **`benchmarks`** | |
| **`muxado`** | |
| **`spdystream`** | |
| **`spdy`** | |
| **`http2`** | |
| **`QUIC`** | |
| Stream Muxers | Status |
| ---------------- | :----: |
| **`multiplex`** | |
| **`yamux`** | 🚫 |
| **`benchmarks`** | |
| **`muxado`** | |
| **`spdystream`** | |
| **`spdy`** | |
| **`http2`** | |
| **`QUIC`** | |
| Protocol Muxers | Status |
| ----------------- | :-----------: |
| **`multiselect`** | |
| Protocol Muxers | Status |
| ----------------- | :----: |
| **`multiselect`** | |
| Switch (Swarm) | Status |
| ------------------ | :-----------: |
| **`Switch`** | |
| **`Dialer stack`** | |
| Switch (Swarm) | Status |
| ------------------ | :----: |
| **`Switch`** | |
| **`Dialer stack`** | |
| Peer Discovery | Status |
| -------------------- | :--------: |
| **`bootstrap list`** | 🚫 |
| **`Kademlia DHT`** | |
| **`mDNS`** | |
| **`PEX`** | |
| **`DNS`** | |
| Peer Discovery | Status |
| -------------------- | :----: |
| **`bootstrap list`** | 🚫 |
| **`Kademlia DHT`** | |
| **`mDNS`** | |
| **`PEX`** | |
| **`DNS`** | |
| Content Routing | Status |
| ------------------ | :-----------: |
| **`Kademlia DHT`** | |
| **`floodsub`** | |
| **`gossipsub`** | |
| **`PHT`** | |
| Content Routing | Status |
| ------------------ | :----: |
| **`Kademlia DHT`** | |
| **`floodsub`** | |
| **`gossipsub`** | |
| **`PHT`** | |
| Peer Routing | Status |
| ------------------ | :-----------: |
| **`Kademlia DHT`** | |
| **`floodsub`** | |
| **`gossipsub`** | |
| **`PHT`** | |
| Peer Routing | Status |
| ------------------ | :----: |
| **`Kademlia DHT`** | |
| **`floodsub`** | |
| **`gossipsub`** | |
| **`PHT`** | |
| NAT Traversal | Status |
| ------------------------ | :--------: |
| **`nat-pmp`** | |
| **`upnp`** | |
| **`ext addr discovery`** | |
| **`STUN-like`** | |
| **`line-switch relay`** | |
| **`pkt-switch relay`** | |
| NAT Traversal | Status |
| ------------------------ | :----: |
| **`nat-pmp`** | |
| **`upnp`** | |
| **`ext addr discovery`** | |
| **`STUN-like`** | |
| **`line-switch relay`** | |
| **`pkt-switch relay`** | |
| Exchange | Status |
| ---------------- | :--------: |
| **`HTTP`** | |
| **`Bitswap`** | |
| **`Bittorrent`** | |
| Exchange | Status |
| ---------------- | :----: |
| **`HTTP`** | |
| **`Bitswap`** | |
| **`Bittorrent`** | |
| Consensus | Status |
| -------------- | :--------: |
| **`Paxos`** | |
| **`Raft`** | |
| **`PBTF`** | |
| **`Nakamoto`** | |
| Consensus | Status |
| -------------- | :----: |
| **`Paxos`** | |
| **`Raft`** | |
| **`PBTF`** | |
| **`Nakamoto`** | |
## Explanation of Basic Two Node Communication