-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Restructuring py-libp2p to be more modular and developer-friendly #395
Comments
Elaboration: 1: Restructure core concepts resolve around (Transport, Connection, Protocol)A Transport takes a 2: Split functionality into InterfacesThrough this, the library gets extensiblity and modularity even across different implementations;
Or another one:
Another one:
3: Split Interface from ImplementationPy-libp2p should be a framework that provides developers the tools for as much cross-library integration as possible, and thus it should front it's own packaged implementations apart from it's advertised interfaces. |
(In no way am I saying that these proposed changes are definitive and final, I'm simply opening this for discussion on how to change py-libp2p for the better, and make it open for rapid python development within the libp2p platform and network.) (Ping for invitation to discussion; @pipermerriam, @mhchia, @NIC619, @ralexstokes, @ChihChengLiang) |
(Pinging @zixuanzh as well, I can't seem to find an email address anywhere from you) |
I'm proposing a plan of refactoring large parts of the current py-libp2p library to be more modular and developer-friendly through 3 ways:
ISecureConnection
, which denotes methods to grab the node's verified identity).TCP
protocol,Multiplexer
protocol,SecIO
protocol, etc.) implements their interface in a one-way awareness solution (implementation is aware of interface, interface is not aware of implementation)The text was updated successfully, but these errors were encountered: