NIC619
1c54c38ca7
Fix lint and add signing_strict
to interop tests
2019-11-29 17:24:40 +08:00
NIC619
a262b94836
Apply PR feedback:
...
check if signing key and ID match
2019-11-29 14:12:42 +08:00
NIC619
064c109b64
Fix signature validator:
...
Add prefix and return verify result
2019-11-28 18:45:00 +08:00
NIC619
d5d6962dce
Update Pubsub fixture and test
2019-11-27 17:15:24 +08:00
NIC619
0fd400fdf8
Sign and verify in Pubsub
2019-11-27 17:15:24 +08:00
NIC619
f3c9972159
Implement Pubsub signature validator
2019-11-27 17:15:24 +08:00
NIC619
683710573e
Add strict_signing: bool and sign_key
to Pubsub
2019-11-27 17:15:23 +08:00
NIC619
e355cb2600
Apply PR feedback:
...
Only use pop method if error handling is in place
2019-11-23 16:04:22 +08:00
NIC619
501eef59de
Apply PR feedback:
...
Only use pop method if graceful failure handling is desired
2019-11-21 14:48:03 +08:00
NIC619
19907e18ec
Replace (check and) del pattern with pop method
2019-11-20 23:06:37 +08:00
NIC619
c0522c1bd9
Check if entry exists in dictionary before delete
2019-11-17 21:52:05 +08:00
NIC619
ace5ef69a8
Apply PR feedback:
...
handle pubsub dead peer when stream closed in gossipsub
2019-11-16 17:03:04 +08:00
NIC619
ccc7879422
Add stream.write error handling in gossipsub
2019-11-16 16:57:11 +08:00
NIC619
9be9b4bbfc
Handle StreamClosed
in pub/gossip/flood-sub
2019-11-16 16:56:59 +08:00
NIC619
b8c7f0cfff
Fix lint
2019-11-09 23:55:35 +08:00
NIC619
5dfa29a0df
Track tasks created in pubsub and add close()
2019-11-09 23:24:09 +08:00
NIC619
93ef36bd86
Clean up peer record if pubsub stream fail
2019-11-09 23:24:09 +08:00
NIC619
eeb87848af
Apply PR feedback:
...
- fix await stream close/reset
- make `_handle_dead_peer` a sync function
2019-11-09 23:24:09 +08:00
NIC619
d36e323703
Update error handling of pubsub stream handler
2019-11-09 23:24:08 +08:00
NIC619
a8d9536b08
Spin up handle_dead_peer_queue
task
2019-11-09 23:24:08 +08:00
NIC619
84f5210220
Implement handle_dead_peer_queue
2019-11-09 23:24:08 +08:00
NIC619
4b15cb1af5
Implement PubsubNotifee.disconnected
2019-11-09 23:24:08 +08:00
NIC619
c6c9393f2b
Add dead_peer_queue
to pubsub
2019-11-09 23:24:08 +08:00
Piper Merriam
ded3792924
Merge pull request #331 from dmuhs/fix/docs-format
...
Add automatic docstring formatting
2019-10-28 09:39:52 -06:00
Alex Stokes
f2bfc68f6d
Re-generate protobufs
2019-10-25 18:51:57 +09:00
Dominik Muhs
bafdd8512d
Enforce pre-summary newline in docstrings
2019-10-24 20:10:45 +02:00
Dominik Muhs
afb79da9f8
Fix typo
2019-10-24 19:12:15 +02:00
Dominik Muhs
eef505f2d9
Add automatic docstring formatter and apply
2019-10-24 08:41:10 +02:00
Moshe Malawach
986a852e7e
Remove forced debug level
2019-10-01 11:17:05 +02:00
Kevin Mai-Husan Chia
dbc35e8b9d
Merge pull request #310 from mhchia/fix/missing_await_for_stream_reset_in_pubsub
...
Add the missing `await` for `stream.reset` in pubsub
2019-09-24 14:04:25 +08:00
mhchia
da34b086d5
Merge branch 'master' into fix/change-notifee-and-add-tests-for-swarm-conn-and-mplex
2019-09-24 13:50:54 +08:00
mhchia
b0c919aab7
Add the missing await
2019-09-24 13:34:26 +08:00
mhchia
d1c25b8b1e
Fix interop pubsub tests and PR feedback
...
- Use `from_id`, the changed field name in `PSMessage`.
- PR feedbacks
- Add label `test` in `testenv` in tox.ini, to avoid wrong
dispatching an environment's command in the future.
- Use `pytest` over `py.test`.
2019-09-24 11:30:52 +08:00
mhchia
92deae41dc
Change SwarmConn.conn
to muxed_conn
2019-09-23 15:46:50 +08:00
mhchia
6f8394e4bd
Merge branch 'master' into fix/change-notifee-and-add-tests-for-swarm-conn-and-mplex
2019-09-21 18:34:12 +08:00
mhchia
b8b5ac5e06
Add test for notifee disconnected
2019-09-19 16:31:41 +08:00
mhchia
5307c0506b
Change IMuxedConn
to INetConn
in Notifee
2019-09-19 16:31:41 +08:00
NIC619
f253152858
Handle protocol negotiation failure in swarm new_stream
2019-09-17 16:17:41 +08:00
NIC619
879f193aa1
Handle errors from
...
- `read_delim`
- `read_varint_prefixed_bytes`
- `decode_uvarint_from_stream`
2019-09-15 16:58:08 +08:00
NIC619
9bad7a61f0
Add some loggings to pubsub
2019-09-14 21:54:26 +08:00
Alex Stokes
f128c746f0
Write data payload as hex to log
2019-09-10 16:17:40 -04:00
Alex Stokes
68e75707e4
Enhance logs
2019-09-10 16:04:18 -04:00
mhchia
6c1f77dc1a
Fix: Change the event.close
to event.set
...
And add missing parts.
2019-09-06 21:35:15 +08:00
mhchia
1cd969a2d5
Fix: Add typing in functions
2019-09-06 20:02:35 +08:00
mhchia
0e3d4508d6
PR feedback
...
- Use `Sequence` instead of `List`
- Add note
- Remove redundant words in docstring
2019-09-04 20:52:18 +08:00
Kevin Mai-Husan Chia
5113785543
Update libp2p/pubsub/pubsub.py
...
Co-Authored-By: NIC Lin <twedusuck@gmail.com>
2019-09-04 20:32:43 +08:00
mhchia
677531db76
Fix pubsub tests
2019-09-04 15:33:07 +08:00
mhchia
961e51fa2e
Remove leftover prints
2019-09-03 23:39:29 +08:00
mhchia
7f20ab781d
Fix gosssipsub tests
2019-09-03 23:37:34 +08:00
mhchia
7385a7a677
Add is_gossipsub
fixture in interop test
...
To use the same code to test against both routers: floodsub and
gossipsub.
2019-09-03 16:49:00 +08:00
mhchia
33dae87c35
Add pubsub test for gossipsub
2019-09-03 16:07:44 +08:00
mhchia
194b494057
Tested against subscriptions and publish
2019-09-02 23:21:57 +08:00
mhchia
3717dc9adf
Add helper functions
2019-09-02 21:01:13 +08:00
mhchia
1b5d064a8d
Add utility functions for libp2p bindings
...
To prepare for pubsub interop test
2019-09-02 14:30:25 +08:00
mhchia
5192944724
Update pb
2019-08-22 22:53:46 +08:00
mhchia
4358a4bc89
Negotiate multiselect version for Muxer
...
`MuxerMultistream` is introduced to negotiate `Multiselect` version
before negotiating Multiplexer's version. This is required by
multistream 1.x
2019-08-21 11:43:24 +08:00
Alex Stokes
0f81ca42a6
Add mypy
protobufs plugin and regenerate protobufs
2019-08-15 16:01:44 -07:00
Alex Stokes
3debd2c808
Run black
and isort
w/ the new config
2019-08-13 14:36:42 -07:00
Chih Cheng Liang
28f6de37ee
Fix the rest of the typing hints ( #232 )
...
* ignore kad
* fix swarm, and minor
* fix init and swarm
* ignore pb
* enable mypy
* fix basic host
* fix tcp
* fix mplex
* add typing for pb
* skip format pyi
* [mypy] no need to ignore pb now
* add typing to chat
2019-08-11 16:47:54 +08:00
Chih Cheng Liang
c536aa3e07
flake8
2019-08-08 16:09:02 +08:00
NIC Lin
b26426214e
Update libp2p/pubsub/pubsub.py
...
Co-Authored-By: Kevin Mai-Husan Chia <mhchia@users.noreply.github.com>
2019-08-07 11:43:32 +08:00
NIC619
d4febea469
Message was not enforced to carry signature yet
2019-08-06 13:05:31 +08:00
NIC619
1cea1264a4
Raise exception when topic validation failed
2019-08-06 12:38:31 +08:00
NIC619
47643a67c6
Apply PR feedback
2019-08-06 12:32:18 +08:00
NIC619
b96ef0e6c7
Fix:
...
`_is_subscribed_to_msg` need only subscribe to one of the topics
2019-08-05 18:20:04 +08:00
NIC619
a2efd03dfa
Schedule push_msg
into a task
2019-08-05 18:19:32 +08:00
NIC619
2bb7f42c20
Add validators to push_msg
2019-08-05 18:19:32 +08:00
NIC619
19ce5bb420
Add signature_validator
stub and docstring
2019-08-05 18:19:32 +08:00
NIC619
e1b86904e3
Add validate_msg
and test
2019-08-05 18:19:32 +08:00
NIC619
ec2c566e5a
Fix validator return type and add docstring
2019-08-05 18:19:32 +08:00
NIC619
f8ca4fa1ef
Add get_msg_validators
and test
2019-08-05 18:19:32 +08:00
NIC619
cf69f7e800
Rename to set_topic_validator
and add test
2019-08-05 18:19:31 +08:00
NIC619
b1f4813195
Add add/remove topic validator functions
2019-08-05 18:19:31 +08:00
NIC619
3973f1d13c
Add pubsub.topic_validators
2019-08-05 18:19:31 +08:00
Chih Cheng Liang
9e0a806218
move stream and connection interfaces to abc
2019-08-05 11:17:38 +08:00
Alex Stokes
7477b29508
run black w/ extended line length
2019-08-04 12:37:41 +08:00
Alex Stokes
cb301fcc51
Opt-out of linting on the special cases we have, given new ignore rules
2019-08-04 12:37:27 +08:00
Alex Stokes
69ec86c871
Remove grpc
dependency
2019-08-03 11:17:28 -07:00
Alex Stokes
c8005c8113
Run isort
in repo
2019-08-03 17:50:14 +08:00
Alex Stokes
e55d9f2e60
restore generated protobuf files
2019-08-02 12:09:27 -07:00
Alex Stokes
7b7c8ad30d
run black over dangling files
2019-08-02 11:47:08 -07:00
mhchia
2e94fcf56c
Remove pylint:disable
2019-08-02 23:26:06 +08:00
NIC619
924e965537
Change argument name of Network.listen
and blakc format
2019-08-02 14:45:59 +08:00
NIC619
cd684aad9e
Update peer_id to type peer.ID in pubsub folder
2019-08-02 14:45:23 +08:00
NIC619
b928bdb356
Convert from base58/pubkey/privkey to class method
2019-08-02 14:42:10 +08:00
Alex Stokes
0ae9840928
Run black
over repo
2019-07-31 15:00:12 -07:00
mhchia
9683d5e8ac
Add tests for Pubsub
...
- `test_handle_subscription`
- `test_handle_talk`
- `test_message_all_peers`
2019-07-31 14:15:11 +08:00
mhchia
3a42d72cd9
Fix a minor bug for pb optional field
...
In `Pubsub.continuously_read_stream`, it checks whether this is a
control message enclosed in RPC message with `if rpc_incoming.control:`.
However, in pb2, the condition is always true because a default value is
returned when a field is not set. Solved it by changing it to
`if rpc_incoming.HasField("control"):`.
2019-07-31 14:15:11 +08:00
mhchia
550289a439
Combine test_subscription.py to test_pubsub.py
...
And add a bunch of tests for pubsub
2019-07-31 14:15:10 +08:00
mhchia
96563c0d84
Add fixtures for pubsub and router
...
And a starting `test_pubsub.py`
2019-07-31 14:14:13 +08:00
NIC619
5e215901c0
Apply PR feedback
2019-07-30 23:41:28 +08:00
NIC619
437b7665c4
Fix:
...
type object not subscriptable
2019-07-30 18:00:30 +08:00
NIC619
c4105688d1
Fix after rebase
2019-07-30 17:31:08 +08:00
NIC619
e53727d301
Apply PR feedback: fix type hints
2019-07-30 16:28:25 +08:00
NIC619
2d4e23cfe2
Fix cyclic import and lint
2019-07-30 16:28:05 +08:00
NIC619
a4a0d79f6d
Improve import layout
2019-07-30 16:27:29 +08:00
NIC619
e7ac09cb94
Fix:
...
Add Gossipsub attribute `peers_protocol` and do cleanup when peer removed
2019-07-30 16:26:21 +08:00
NIC619
d716e90e17
Fix on type hints
2019-07-30 16:25:33 +08:00
NIC619
b2f496d081
Fix type hints except pb msg in pubsub folder
2019-07-30 16:24:34 +08:00
NIC619
a0aa105867
Add type hint to pubsub notifee/interface
2019-07-30 16:23:15 +08:00