Commit Graph

1295 Commits

Author SHA1 Message Date
stuckinaboot
9c6d441f9f [WIP] PubSub and FloodSub development (#133)
* Add notifee interface

* Add notify function to network interface

* Implement notify feature

* Add tests for notify

* Make notifee functions all async

* Fix linting issue

* Fix linting issue

* Scaffold pubsub router interface

* Scaffold pubsub directory

* Store peer_id in muxed connection

* Implement pubsub notifee

* Remove outdated files

* Implement pubsub first attempt

* Prepare pubsub for floodsub

* Add mplex conn to net stream and add conn in notify tests

* Implement floodsub

* Use NetStream in generic protocol handler

* Debugging async issues

* Modify test to perform proper assert. Test passes

* Remove callbacks. Reduce sleep time

* Add simple three node test

* Clean up code. Add message classes

* Add test for two topics

* Add conn to net stream and conn tests

* Refactor test setup to remove duplicate code

* Fix linting issues

* Fix linting issue

* Fix linting issue

* Fix outstanding unrelated lint issue in multiselect_client

* Add connect function

* Remove debug prints

* Remove debug prints from floodsub

* Use MessageTalk in place of direct message breakdown

* Remove extra prints

* Remove outdated function

* Add message to queues for all topics in message

* Debugging

* Add message self delivery

* Increase read timeout to 5 to get pubsub tests passing

* Refactor testing helper func. Add tests

* Add tests and increase timeout to get tests passing

* Add dummy account demo scaffolding

* Attempt to use threads. Test fails

* Implement basic dummy node tests using threads

* Add generic testing function

* Add simple seven node tree test

* Add more complex seven node tree tests

* Add five node ring tests

* Remove unnecessary get_message_type func

* Add documentation to classes

* Add message id to messages

* Add documentation to test helper func

* Add docs to dummy account node helper func

* Add more docs to dummy account node test helper func

* fixed linting errors in floodsub

* small notify bugfix

* move pubsub into libp2p

* fixed pubsub linting

* fixing pubsub test failures

* linting
2019-04-03 15:13:56 -04:00
zixuanzh
fee905ace2 fix linting issues 2019-04-03 15:13:56 -04:00
zixuanzh
2e437e5b8b add test for listen event 2019-04-03 15:13:56 -04:00
zixuanzh
2cb0279b57 fix existing tests 2019-04-03 15:13:56 -04:00
zixuanzh
4c89a59406 refactor host setup helper 2019-04-03 15:13:56 -04:00
zixuanzh
fca5782d01 refactor new_node 2019-04-03 15:13:56 -04:00
Stuckinaboot
ed3c5f4b51 Add additional initiator and non-initiator notifee tests 2019-04-03 15:13:56 -04:00
Stuckinaboot
dfe2b0e7e7 Add return value to Notify 2019-04-03 15:13:56 -04:00
Stuckinaboot
4b9327c5a3 Add opened_stream call for non-initiator 2019-04-03 15:13:56 -04:00
Stuckinaboot
a0ef64fff7 Fix outstanding unrelated lint issue in multiselect_client 2019-04-03 15:13:56 -04:00
Stuckinaboot
92bfd816b9 Fix linting issue 2019-04-03 15:13:56 -04:00
Stuckinaboot
5cabc11687 Fix linting issue 2019-04-03 15:13:56 -04:00
Stuckinaboot
f58afc0eac Fix linting issues 2019-04-03 15:13:56 -04:00
Stuckinaboot
fa97b97748 Refactor test setup to remove duplicate code 2019-04-03 15:13:56 -04:00
Stuckinaboot
86ce7530d5 Add conn to net stream and conn tests 2019-04-03 15:13:56 -04:00
Stuckinaboot
66703bd414 Fix linting issue 2019-04-03 15:13:56 -04:00
Stuckinaboot
4298b0631f Fix linting issue 2019-04-03 15:13:56 -04:00
Stuckinaboot
1ecdcf7df4 Make notifee functions all async 2019-04-03 15:13:56 -04:00
Stuckinaboot
3beec9d4ae Add tests for notify 2019-04-03 15:13:56 -04:00
Stuckinaboot
c465141331 Implement notify feature 2019-04-03 15:13:56 -04:00
Stuckinaboot
1701fba42e Add notify function to network interface 2019-04-03 15:13:56 -04:00
Stuckinaboot
204c103d92 Add notifee interface 2019-04-03 15:13:56 -04:00
Stuckinaboot
005ea67e82 Merge branch 'seqno' of https://github.com/libp2p/py-libp2p into seqno 2019-04-03 14:45:51 -04:00
Stuckinaboot
0713cddbd1 Add test for ring topology multiple messages from two origins 2019-04-03 14:24:40 -04:00
Stuckinaboot
db53976a6a Add test for multiple messages from two origins 2019-04-03 14:24:40 -04:00
Stuckinaboot
62d1bff888 Add dummy node test 2019-04-03 14:24:40 -04:00
Stuckinaboot
60fe42bf60 Fix seen messages bug 2019-04-03 14:24:40 -04:00
Stuckinaboot
547e7b3546 Modify pubsub to have seen message check incorporate seqno and node id 2019-04-03 14:24:40 -04:00
Stuckinaboot
2934f93fc9 Adjust floodsub tests for new seqno util 2019-04-03 14:24:40 -04:00
Stuckinaboot
56fbdf3f2f Add priority queues to handle seqno 2019-04-03 14:24:40 -04:00
zixuanzh
0de028a236 clean up 2019-04-03 14:24:40 -04:00
zixuanzh
f50ba04178 fix all tests 2019-04-03 14:24:40 -04:00
zixuanzh
f287c73236 remove message from test dummy 2019-04-03 14:24:40 -04:00
zixuanzh
974cb0b06f update dummy account node 2019-04-03 14:24:40 -04:00
zixuanzh
87269a9524 reworked floodsub logic 2019-04-03 14:24:40 -04:00
zixuanzh
1cbd909dc2 fix encoding issue 2019-04-03 14:24:40 -04:00
zixuanzh
a2e22159b2 remove Message from dummy account 2019-04-03 14:24:40 -04:00
zixuanzh
2183bada41 remove message.py 2019-04-03 14:24:40 -04:00
zixuanzh
598b6b257f reworked subscribe unsubsrcibe 2019-04-03 14:24:40 -04:00
Alex Haynes
75c12d4aed RPC conversion progress 2019-04-03 14:24:40 -04:00
zixuanzh
adce7f0a05 update dependencies 2019-04-03 14:24:40 -04:00
zixuanzh
b297aa9576 rewrote get_hello_packet 2019-04-03 14:24:40 -04:00
zixuanzh
2b41818561 update from to from_id in proto 2019-04-03 14:24:40 -04:00
zixuanzh
f2de3735ee add generated rpc code 2019-04-03 14:24:40 -04:00
zixuanzh
2aa7c4a106 add pubsub proto 2019-04-03 14:24:40 -04:00
Alex Haynes
1c08e9e55c added rpc.proto from go repo 2019-04-03 14:24:39 -04:00
stuckinaboot
8d0f40a378 [WIP] PubSub and FloodSub development (#133)
* Add notifee interface

* Add notify function to network interface

* Implement notify feature

* Add tests for notify

* Make notifee functions all async

* Fix linting issue

* Fix linting issue

* Scaffold pubsub router interface

* Scaffold pubsub directory

* Store peer_id in muxed connection

* Implement pubsub notifee

* Remove outdated files

* Implement pubsub first attempt

* Prepare pubsub for floodsub

* Add mplex conn to net stream and add conn in notify tests

* Implement floodsub

* Use NetStream in generic protocol handler

* Debugging async issues

* Modify test to perform proper assert. Test passes

* Remove callbacks. Reduce sleep time

* Add simple three node test

* Clean up code. Add message classes

* Add test for two topics

* Add conn to net stream and conn tests

* Refactor test setup to remove duplicate code

* Fix linting issues

* Fix linting issue

* Fix linting issue

* Fix outstanding unrelated lint issue in multiselect_client

* Add connect function

* Remove debug prints

* Remove debug prints from floodsub

* Use MessageTalk in place of direct message breakdown

* Remove extra prints

* Remove outdated function

* Add message to queues for all topics in message

* Debugging

* Add message self delivery

* Increase read timeout to 5 to get pubsub tests passing

* Refactor testing helper func. Add tests

* Add tests and increase timeout to get tests passing

* Add dummy account demo scaffolding

* Attempt to use threads. Test fails

* Implement basic dummy node tests using threads

* Add generic testing function

* Add simple seven node tree test

* Add more complex seven node tree tests

* Add five node ring tests

* Remove unnecessary get_message_type func

* Add documentation to classes

* Add message id to messages

* Add documentation to test helper func

* Add docs to dummy account node helper func

* Add more docs to dummy account node test helper func

* fixed linting errors in floodsub

* small notify bugfix

* move pubsub into libp2p

* fixed pubsub linting

* fixing pubsub test failures

* linting
2019-04-03 14:24:39 -04:00
zixuanzh
fa53c5a866 fix linting issues 2019-04-03 14:24:39 -04:00
zixuanzh
cc7c08bac4 add test for listen event 2019-04-03 14:24:39 -04:00
zixuanzh
3e0d6ea126 fix existing tests 2019-04-03 14:24:39 -04:00