Commit Graph

48 Commits

Author SHA1 Message Date
Alex Stokes
17ba328e1a
Add pytest-xdist plugin to parallelize tests 2019-11-05 17:50:11 -08:00
Dominik Muhs
eef505f2d9 Add automatic docstring formatter and apply 2019-10-24 08:41:10 +02:00
mhchia
b8963e4433
Fix: version released mismatches setup.py 2019-10-02 16:16:52 +08:00
Alex Stokes
b142964d31
Adds support for verifying ed25519 signatures, for secio 2019-09-24 09:51:31 -07: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
006002f687
Move interop tests out of tests
It is moved to the top level package `tests_interop`, to avoid circular
dependency, with the dependency moved to `tox`.
2019-09-23 22:00:40 +08:00
Kevin Mai-Husan Chia
e9ca372fb5
Merge pull request #271 from mhchia/fix/pubsub-interop
Pubsub interop with go-libp2p-daemon
2019-09-04 22:28:14 +08:00
Alex Stokes
30456f8018
Use a different ECC backend with a compatible serializer
This library has the ``SEC1`` encoder which is compatible
with the serialization of ECC keys/points used in the Go libp2p impl
2019-09-03 13:44:25 -07:00
mhchia
d1b0340164
Update bindings version 2019-09-03 21:55:07 +08:00
mhchia
2ba7948f95
Update bindings version 2019-09-03 18:52:55 +08:00
mhchia
56ef0b962c
Add test for host connect and disconnect 2019-09-02 17:32:15 +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
b726d7c9da
Add tox and CI for interop 2019-08-28 23:39:33 +08:00
NIC619
87f5a86950
Adjust coincurve version 2019-08-22 18:01:41 +08:00
Alex Stokes
0f81ca42a6
Add mypy protobufs plugin and regenerate protobufs 2019-08-15 16:01:44 -07:00
Alex Stokes
2c68814bae
Add coincurve dep for secp256k1 keys 2019-08-14 09:00:39 -07:00
Alex Stokes
9bff7b8ebf
Remove code coverage check from CI 2019-08-13 21:25:22 -07:00
Alex Stokes
3debd2c808
Run black and isort w/ the new config 2019-08-13 14:36:42 -07:00
Alex Stokes
7477b29508 run black w/ extended line length 2019-08-04 12:37:41 +08:00
Alex Stokes
986da458e9
Directly use protobuf dep 2019-08-03 12:17:09 -07:00
Alex Stokes
69ec86c871
Remove grpc dependency 2019-08-03 11:17:28 -07:00
mhchia
1cc7e38846
Add flake8 to lint deps 2019-08-04 00:27:02 +08:00
Alex Stokes
c8005c8113 Run isort in repo 2019-08-03 17:50:14 +08:00
Alex Stokes
201850397a Add isort as a lint dep 2019-08-03 17:50:14 +08:00
mhchia
2e94fcf56c
Remove pylint:disable 2019-08-02 23:26:06 +08:00
mhchia
33d233f5df
Add missing comma 2019-08-01 13:31:02 +08:00
mhchia
c72dfe1dd3
Use factories and fixtures in pubsub tests
Done
- Add factories using factory-boy
- Modify fixtures and tests to use factories
- Modify tests to use fixtures and factories
- Clean up
2019-08-01 13:30:08 +08:00
Alex Stokes
51cc710dc0
remove pylint 2019-07-31 15:14:56 -07:00
Alex Stokes
0ae9840928
Run black over repo 2019-07-31 15:00:12 -07:00
Alex Stokes
936369aa5e
Add black as a lint dependency 2019-07-31 14:53:28 -07:00
mhchia
ecf4e373da
Remove unused aio_timers 2019-07-24 18:49:51 +08:00
mhchia
381f5ddc3a
Replace click with argparse 2019-07-24 18:43:49 +08:00
mhchia
1ae306ae8f
Fix mypy command
- Remove requirements_dev.txt
- Add detailed versions
2019-07-24 16:34:55 +08:00
mhchia
9497c3180f
Add tox
- Put extras_require to setup.py
- Add mypy
2019-07-24 15:54:30 +08:00
mhchia
0fbf45d8ca
Pin the versions
Especially, use the latest multiaddr
2019-07-20 22:42:18 +08:00
mhchia
0188985918
Change packages in setup
Previously, only the top level `libp2p` is included.
This left only `__init__.py` in the built distribution.
Use `setuptools.find_packages` with `exclude` instead, to avoid tiringly
list all of the subpackages.
2019-07-09 23:29:03 +08:00
Alex Stokes
c934100526
Pin the version of multiaddr we require.
Temporary workaround for https://github.com/multiformats/py-multiaddr/issues/47
2019-05-16 11:15:23 -04:00
Robert Zajac
9052e8f8bd
The Gossipsub PR (#162)
* Add handle_rpc call to pubsub

* Scaffold gossipsub functions

* Add timer

* Implement most of mesh construction

* Implement emit and handle

* Implement fanout heartbeat

* Refactor emit

* some gossipsub cleanup and test

* minor lint stuff, more to come

* Implement publish

* Fix comment

* Modify pubsub/gossipsub so that floodsub tests pass using gossipsub router

* Add floodsub tests to gossipsub

* Handle case where select_from_minus, num_to_select > size(pool-minus)

* Add topic membership

* Implement handle ihave

* Implement most of iwant

* Add mcache.add and comments

* Refactor handle_ihave

* Implement stream write in handle_iwant

* Implement gossip heartbeat

* unresolved vars

* initial mcache code

* documenting mcache

* writing test/debugging mcache

* finished mcache test and debugged

* Make gossipsub backward compatibility its own file

* remove mcache prints

* DEBUGGING

* Add sender_peer_id to handle_rpc to get gossip test passing

* Modify gossipsub to make fanout work

* fanout maintenance test

* debugging gsub GOSSIP

* DEBUGGING

* debugged sender seen cachce

* adding lru, removing prints

* pylint cleanup

* Fix github comments in PR

* minor floodsub possible bugfix
2019-05-06 23:44:13 -04:00
Robert Zajac
db7f890e93
remove unused umsgpack (#155) 2019-04-21 12:16:24 -04:00
zixuanzh
002a46f0d4 add dependencies 2019-04-17 21:25:02 -04:00
ZX
14da7d49fe
Merge branch 'master' into peer_routing 2019-04-17 21:22:37 -04:00
zixuanzh
3c6ad886bb add dependencies 2019-04-17 21:21:17 -04:00
zixuanzh
1f3aaded1d add lru-dict as requirement 2019-04-05 21:45:31 -04:00
zixuanzh
a81628f99d update dependencies 2019-03-28 15:42:55 -04:00
ZX
732a15ec93 Bump version to Python 3.7 (#121)
* bump version

* enable 3.7 in travis
2019-02-09 21:40:05 -05:00
Alexander Koshkin
d629a0c85e Fix examples/chat/chat.py. Extract test requirements to .travis.yaml file. 2019-01-09 22:01:46 +03:00
Alexander Koshkin
ce6ddb27a9 Migrate to new project structure. 2019-01-09 21:38:56 +03:00
Alexander Koshkin
880ae748d1 Delete requirements.txt file, add setup.py instead. 2019-01-09 20:57:41 +03:00