567 Commits

Author SHA1 Message Date
Pierre Krieger
0f0ae368b8
Create the parent directory of a JSON datastore (#270) 2018-06-22 17:36:30 +02:00
Toralf Wittner
16967abda7
Use tokio-codec. (#271) 2018-06-22 16:12:23 +02:00
Pierre Krieger
75df40010b
Make secp256k1 optional (#266) 2018-06-22 13:07:57 +02:00
Pierre Krieger
ab96f7efe0
Add loops around stream polling (#251) 2018-06-22 11:02:47 +02:00
Pierre Krieger
02bf7604d0
Fix protobuf again (#269) 2018-06-21 16:53:23 +02:00
Pierre Krieger
30ffa2f256
Revert to old protobuf generation system (#268)
* Revert "Remove old protoc scripts and artifacts (#262)"

This reverts commit 32ef50b8222fa30e3706c90c24e84e821f3fd84f.

* Revert "Use pure-rust protoc (#255)"

This reverts commit 217fae405f6565d10e010e9e8b5dfd19045120d0.
2018-06-21 15:47:13 +02:00
Jef
32ef50b822 Remove old protoc scripts and artifacts (#262) 2018-06-21 15:03:58 +02:00
Pierre Krieger
2d4fe77275
Fix kademlia server end (#254) 2018-06-21 14:13:25 +02:00
Pierre Krieger
6ed518e9a5
Add logging for multistream handshake (#260) 2018-06-21 13:44:07 +02:00
Toralf Wittner
8aa719c532
Return WouldBlock if flushing did not complete. (#265) 2018-06-21 11:57:15 +02:00
Jef
217fae405f Use pure-rust protoc (#255) 2018-06-20 13:40:01 +02:00
Pierre Krieger
1607fcb3f4
Add support for secp256k1 in secio (#258) 2018-06-20 09:47:43 +02:00
Pierre Krieger
fd4c5fad44
Remove the observed address from identify protocol (#253) 2018-06-19 16:14:27 +02:00
Pierre Krieger
7b375798a5
The Multiaddr of the remote is now a Future (#249)
* The Multiaddr of the remote is now a Future

* The multiaddress future in swarm is now a Box
2018-06-19 14:38:55 +02:00
Pierre Krieger
8fb919321b
Fix exchange algorithm in secio (#257) 2018-06-19 13:57:47 +02:00
Pierre Krieger
f74cf9f126
Don't unwrap in Kademlia protocol (#252)
* Don't unwrap in Kademlia protocol

* Debug assert that the alloc is correct

* Ignore non-peer CIDs

* Fix concerns
2018-06-14 16:34:07 +02:00
Pierre Krieger
51471fe2e4
Minor Future simplification in dns (#248) 2018-06-11 11:33:45 +02:00
Pierre Krieger
6897eca91f
Lots of improvements to kademlia code (#243)
* No longer panic when updating self peer ID in kbuckets

* Minor code improvement in flush()

* Small improvement to handle_find_node_req

* expected_pongs no longer mut

* Clean up KadServerInterface trait

* find_node() returns an impl Future

* Rework kad_server's API to remove the interface

* Remove the error mapping in kad_bistream.split()

* Use a name type in protocol.rs

* respond() now takes an iter of Peers + add tests

* Use concrete Future type in kad_server upgrade

* Let the high level code decide the TTL of the addrs

* Replace QueryInterface::send with find_node_rpc

* Replace KademliaProcessingFuture with KademliaPeerReqStream

* requested_peers() now returns an iter

* gen_random_id() only requires &PeerId

* Remove QueryInterface and return stream of events

* Remove add_peer_addrs from query

* Remove the peer_store and record_store params

* Tweak multiaddresses reportin

* Remove dependency on peerstore

* Fix tests
2018-06-07 17:15:19 +02:00
James Ray
c4a92e2493 Update summary of crates with missing crates (#242)
* Update summary of crates with missing crates

* Add relay and fix line breaks (use soft wrap in the editor)

* Readd an extra at EOF
2018-06-06 13:18:59 +02:00
Pierre Krieger
28fdf23d67
Add some regression tests in libp2p-core (#237) 2018-06-05 19:01:18 +02:00
Pierre Krieger
dbbee5756e
Use stronger typing for the public key of identify (#236)
* Use stronger typing for the public key of identify

* Add PartialEq/Eq implementations

* Fix tests

* Also change is_public_key()
2018-06-05 12:29:59 +02:00
Pierre Krieger
be2fa0e531
Turn warn! into debug! (#235) 2018-06-04 15:53:58 +02:00
Pierre Krieger
57c3103f78
Integrate the multiformats crates (#231)
* Remove the multihash patch

* Integrate the multiformats crates

* Fix not compiling on emscripten
2018-06-01 10:10:00 +02:00
Pierre Krieger
9e2dfd3fa5
Add SecioKeyPair::to_public_key and as_public_key_bytes (#232)
* Add SecioKeyPair::to_public_key and as_public_key_bytes

* Add to_peer_id instead
2018-05-31 18:35:18 +02:00
Pierre Krieger
4da47b4c72
Turn an info! into a debug! (#230) 2018-05-31 17:38:12 +02:00
Pierre Krieger
f193a2eb0c
Fix CommonTransport not accepting TCP/IP (#229) 2018-05-31 17:16:23 +02:00
Pierre Krieger
4c2cabca93
Add support for Ed25519 in secio (#226)
* Add support for Ed25519 in secio

* Add SecioPublicKey::to_peer_id()
2018-05-31 14:50:24 +02:00
Pierre Krieger
2a2ad77d28
Remove the ring override (#227) 2018-05-31 14:24:49 +02:00
Pierre Krieger
6b95414161
Update kademlia for the removing of From (#220)
* Update kademlia for the removing From

* Fix the kad example

* Some documentation
2018-05-29 17:32:40 +02:00
Pierre Krieger
7d6ad230ea
Update the PeerId import paths (#217) 2018-05-24 18:00:47 +02:00
Pierre Krieger
c1cd10c034
upgrade::or() requires same Output (#218) 2018-05-24 16:37:12 +02:00
Pierre Krieger
c7f654a815
Put secio behind a feature flag in the facade (#219)
* Put secio behind a feature flag in the facade

* Define the features required by examples

* Test both with and without Cargo features
2018-05-24 16:24:20 +02:00
Pierre Krieger
89087f021d
Move PeerId to libp2p-core (#214) 2018-05-24 00:54:08 +02:00
Pierre Krieger
b5db91a075
Restore ratelimit in libp2p facade (#213) 2018-05-23 17:03:42 +02:00
Toralf Wittner
445ae17904 Move SimpleProtocol from core to libp2p. (#212)
cf. issue #200
2018-05-23 16:27:55 +02:00
Pierre Krieger
56ca46eb7a
Rename integration_test to integration-test (#209) 2018-05-23 14:01:16 +02:00
Pierre Krieger
ea322f461d
Test libp2p-core for wasm on circle-ci (#208) 2018-05-23 13:45:32 +02:00
Toralf Wittner
740efd31ad Depend on tokio-io and tokio-executor. (#210)
Addresses issue #204.
2018-05-23 13:28:40 +02:00
Pierre Krieger
41753d8c8e
Build libp2p on emscripten on circle-ci (#207) 2018-05-23 13:10:54 +02:00
Pierre Krieger
a163e81e30
Rename EitherSocket to EitherOutput (#201) 2018-05-23 11:45:35 +02:00
Pierre Krieger
b7065de672
Make the libp2p facade compilable for emscripten (#205) 2018-05-23 11:22:49 +02:00
Pierre Krieger
e5f23c74c0
Remove dial_custom_handler (#203)
* Remove dial_custom_handler

* Rename dial_to_handler to dial
2018-05-22 18:58:27 +02:00
Pierre Krieger
6d41923ca5
Update num-bigint (#202) 2018-05-22 16:35:13 +02:00
Pierre Krieger
d51321f5dd
Move the examples to the facade crate (#197) 2018-05-21 18:49:02 +02:00
Toralf Wittner
5f6e215ec1
Update to protobuf >= 2 (#199) 2018-05-21 17:32:59 +02:00
Toralf Wittner
250af629ee
Use loop to poll FuturesUnordered after push. (#198)
Fixes #190.
2018-05-21 16:27:03 +02:00
Pierre Krieger
3dacc9009e
Add the two missing libraries from the facade (#196) 2018-05-20 10:11:42 +02:00
Pierre Krieger
a282434d5d
Add a libp2p facade crate (#191)
* Add a libp2p facade crate

* Remove secio for now

* Reexport peerstore and PeerId

* Also reexport swarm()
2018-05-18 14:56:11 +02:00
Toralf Wittner
d394ea0e19
Add /libp2p/circuit/relay/0.1.0 protocol support. (#175)
Add `/libp2p/circuit/relay/0.1.0` protocol support.
2018-05-18 13:13:05 +02:00
Toralf Wittner
15540a34c2
Add missing check for read of 0 bytes. (#194)
Forgot this one in PR #178.
2018-05-17 15:29:27 +02:00