95 Commits

Author SHA1 Message Date
Pierre Krieger
2c2fc8bfd3
Don't allow handlers::poll() to return None (#811) 2019-01-02 14:22:23 +01:00
Pierre Krieger
f903e2b744
Add version numbers of multi* deps (#810) 2019-01-02 13:45:23 +01:00
Pierre Krieger
36c8e9e3f1
Some improvements to k-buckets (#791)
* Rework the KBucketsPeerId trait

* Remove interior mutability from k-buckets

* Reexport the kbuckets module

* Fix tests

* Apply suggestions from code review

Co-Authored-By: tomaka <pierre.krieger1708@gmail.com>
2019-01-02 13:33:44 +01:00
Pierre Krieger
7798e23e78
Add an error associated type to ProtocolsHandler (#795) 2018-12-28 15:11:35 +01:00
Pierre Krieger
d10cafa804
Make deriving the NetworkBehaviour more ergonomic (#782) 2018-12-20 15:21:13 +01:00
Toralf Wittner
6be3aca768
Cleanup. (#803)
- Use `Error::source` instead of `Error::cause`.
- Remove unused import.
2018-12-20 13:41:11 +01:00
James Ray
f541df391a Chore/semi colons (#799)
* Add helpers for easier Transports creation (#777)

* Add helpers for easier Transports creation

* Fix doctests

* Fix ' ;' occurrences
2018-12-19 23:22:39 +01:00
Pierre Krieger
83320e0347
More precise error passed to inject_dial_upgrade_error (#771)
* More precise error passed to inject_dial_upgrade_error

* Fix concerns

* Fix panic proof
2018-12-18 11:23:13 +01:00
Pierre Krieger
40a503fd63
Store information about the local node in the topology (#772)
* Store information about the local node in the topology

* Fix build

* Store the external addresses in the topology
2018-12-13 19:06:13 +01:00
Pierre Krieger
e2ff74994c
Upgrade secio to the 2018 edition (#774)
* Upgrade secio to the 2018 edition

* Fix build with features on

* Fix emscripten build
2018-12-13 18:54:28 +01:00
Pierre Krieger
7b8e3dd613
Switch ping to edition 2018 (#780) 2018-12-13 15:34:35 +01:00
Pierre Krieger
0803e36d5a
Remove PeriodicIdentifyListen and IdentifyListen (#769)
* Remove PeriodicIdentifyListen and IdentifyListen

* Fix tests

* Fix core-derive
2018-12-13 13:53:19 +01:00
Pierre Krieger
7da651bf32
Add an IdentifyTopology (#770) 2018-12-11 17:00:29 +01:00
Toralf Wittner
a152e18821
Simplify handling of upgrade information. (#761) 2018-12-11 15:13:10 +01:00
Pierre Krieger
2dce4294a0
Add version numbers in the deps in Cargo.toml (#768) 2018-12-11 14:54:44 +01:00
Pierre Krieger
a8a6438fbc
Rename libp2p-tcp-transport to libp2p-tcp (#762) 2018-12-10 13:39:11 +01:00
Pierre Krieger
05e4a84da3
Rename PeriodicIdentification to PeriodicIdHandler (#757)
* Rename PeriodicIdentification to PeriodicIdentificationHandler

* Concern
2018-12-07 19:21:02 +01:00
Pierre Krieger
d94a768bd9
Rename multiaddr and mulithash to parity-* (#737)
* Rename multiaddr and mulithash to parity-*

* Fix doctests
2018-12-07 15:40:02 +01:00
James Ray
2fc2a8c918 Add a crate doc comment for floodsub (#748) 2018-12-07 10:39:21 +01:00
Pierre Krieger
6b93f02f6d
Add an Identify behaviour (#741)
* Add an Identify behaviour

* Report observed address in PeriodicIdentify

* Reexport IdentifyEvent

* Concerns

* Concerns
2018-12-07 10:23:38 +01:00
Pierre Krieger
2ef4d779ca
Add metadata to all the Cargo.toml (#743) 2018-12-06 19:22:06 +01:00
Daogang Tang
371905c876 rename PeriodicIdentifyBehaviour to PeriodicIdentify. (#738)
* rename PeriodicIdentifyBehaviour to PeriodicIdentify.

Signed-off-by: Daogang Tang <daogangtang@gmail.com>

* fix renaming PeriodicIdentifyBehaviour to PeriodicIdentify in misc/core-derive/tests/test.rs.

Signed-off-by: Daogang Tang <daogangtang@gmail.com>
2018-12-06 13:30:55 +01:00
Pierre Krieger
9102266d70
Rename all the network behaviours to more basic names (#726)
* Rename FloodsubBehaviour to Floodsub

* Rename Ping behaviours

* Rename identify
2018-12-05 17:04:25 +01:00
Toralf Wittner
4140047f34 Avoid some warnings. (#733)
- mdns: unused `Result` which must be used
- kad: unused import
- mplex: use of deprecated item
2018-12-05 15:01:17 +01:00
Pierre Krieger
9e0f110e47
Remove relay, peerstore and datastore (#723) 2018-12-04 14:52:14 +01:00
Toralf Wittner
acfa1c9c79
Remove some boxed futures. (#718) 2018-12-04 11:24:59 +01:00
Toralf Wittner
a5766fdfac
Fix several errors reported by clippy. (#715) 2018-12-04 11:12:49 +01:00
James Ray
1c247a5914 substream -> substreams (#720) 2018-12-04 10:32:51 +01:00
Pierre Krieger
c5d08ab48c
Enhance the swarm a bit (#711)
* Replace the &mut TTopology with a &mut PollParameters

* Add supported_protocols

* Add external_addresses

* Report out addresses in Kademlia

* Fix the custom derive

* Some comments

* Fix compilation on stable
2018-12-01 13:34:57 +01:00
James Ray
fceaf2293b Chore/grammar (#701)
* Add a space.

* qed -> QED and ' ; qed' -> '; QED'

* ' ; QED' -> '; QED'
2018-11-29 16:38:52 +01:00
Pierre Krieger
3aa1fcbdc6
Add a KademliaHandler (#580)
* Rework Kademlia for the new design

* Minor work on protocol.rs

* More work

* Remove QueryTarget::FindValue

* Finish work on query

* Query timeout test

* Work on topology

* More work

* Update protocols/kad/src/topology.rs

Co-Authored-By: tomaka <pierre.krieger1708@gmail.com>

* Fix trailing whitespaces

* Use if let
2018-11-29 12:11:35 +01:00
Pierre Krieger
45114aef46
Move the Swarm in its own module (#681) 2018-11-27 11:22:55 +01:00
Pierre Krieger
95ebee5841
Update some dependencies (#686)
* Update many dependencies

* Upgrade some secio deps
2018-11-27 10:35:47 +01:00
Pierre Krieger
177c6cf842
Remove _priv from IdentifyInfo (#669) 2018-11-22 14:36:48 +01:00
Toralf Wittner
a5fee2dbac
secio: Defer nonce verification. (#667) 2018-11-21 10:39:48 +01:00
David
31962f5920 A few typos (#666) 2018-11-20 21:31:09 +01:00
Toralf Wittner
938b91742f
Add EitherUpgrade and generalise OrUpgrade. (#662) 2018-11-20 15:09:59 +01:00
Pierre Krieger
b213fd7bd7
Add PeerId::random() (#661) 2018-11-20 13:44:36 +01:00
Pierre Krieger
2c1807b646
Remove Send/Sync/'static requirements in identify (#649) 2018-11-16 13:59:56 +01:00
Pierre Krieger
37994b34e7
Behavior -> Behaviour (#650) 2018-11-16 12:59:57 +01:00
Pierre Krieger
23bcd44f18
Remove Send/Sync/'static reqs from ping (#652) 2018-11-16 12:49:55 +01:00
Pierre Krieger
373b05347a
Remove the Send + 'static requirements for floodsub (#637) 2018-11-15 19:00:57 +01:00
Pierre Krieger
1c9091655b
Move protocols_handler to the root (#643) 2018-11-15 18:39:20 +01:00
Pierre Krieger
ded89b4be3
Use a random sequence number in floodsub (#634)
* Use a random sequence number in floodsub

* Comment
2018-11-15 18:03:09 +01:00
Toralf Wittner
2e549884ef Split ConnectionUpgrade. (#642)
Introduce `InboundUpgrade` and `OutboundUpgrade`.
2018-11-15 17:41:11 +01:00
isan_rivkin
0eef1948e5 minor typo in docs (#640) 2018-11-15 11:06:58 +01:00
David
37e2ec38a7 Update connected peers' topics on NodeEvent (#638)
* Update connected peers' topics on NodeEvent

After a peer connects they send us the list of the topics they're subscribed to. This causes a NodeEvent to be emitted. This PR makes sure we update the subscription info we have on the newly connected peer.

* Formatting

* Update protocols/floodsub/src/layer.rs

Co-Authored-By: dvdplm <dvdplm@gmail.com>

* whiespace
2018-11-14 22:03:00 +01:00
Pierre Krieger
24ccefbbc6
Fix the concerns of #603 (#635) 2018-11-14 14:07:54 +01:00
Pierre Krieger
f8ccb0af36
Rewrite floodsub to use the ProtocolsHandler (#603)
* Move lib.rs to protocol.rs

* Rewrite floodsub for ProtocolsHandler

* Add a FloodsubBehaviour

* Fix closing floodsub after a message

* Address concern

* Make it conform to the protocol

* Make it really conformant

* Address concerns
2018-11-13 14:46:57 +01:00
Pierre Krieger
b3b5a4bdfd
Add an IdentifyListen behaviour (#626)
* Add an IdentifyListen behaviour

* Use infos() and infos_mut() instead
2018-11-12 17:23:20 +01:00