ljedrz
0d74cea3df
feat: add a bitswap stress test
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-31 15:52:56 +02:00
ljedrz
dc4cea6df5
refactor: less noisy upgrade_outbound
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-31 14:45:49 +02:00
ljedrz
d865c00278
fix: only report actually finished subscriptions
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-31 12:28:31 +02:00
bors[bot]
d92f56264e
Merge #273
...
273: improved tracing r=koivunej a=ljedrz
An attempt to have enhanced tracing capabilities, especially for test purposes; not everything is nicely assigned to a specific node, but it is definitely an improvement over what we have now.
This change allows us to see the following output in e.g. `exchange_block`:
```
running 1 test
Jul 30 16:13:42.567 INFO start{node="a"}: ipfs::p2p::behaviour: net: starting with peer id 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox
Jul 30 16:13:42.577 DEBUG start{node="a"}: bitswap::behaviour: bitswap: new_handler
Jul 30 16:13:42.577 TRACE start{node="a"}: ipfs::p2p::swarm: new_handler
Jul 30 16:13:42.578 DEBUG bgtask{node="a"}: libp2p_tcp: Listening on "/ip4/127.0.0.1/tcp/35821"
Jul 30 16:13:42.579 INFO start{node="b"}: ipfs::p2p::behaviour: net: starting with peer id 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc
Jul 30 16:13:42.579 DEBUG bgtask{node="a"}: libp2p_swarm: Listener ListenerId(1); New address: "/ip4/127.0.0.1/tcp/35821"
Jul 30 16:13:42.589 DEBUG start{node="b"}: bitswap::behaviour: bitswap: new_handler
Jul 30 16:13:42.589 TRACE start{node="b"}: ipfs::p2p::swarm: new_handler
Jul 30 16:13:42.590 DEBUG bgtask{node="b"}: libp2p_tcp: Listening on "/ip4/127.0.0.1/tcp/43797"
Jul 30 16:13:42.590 DEBUG bgtask{node="b"}: libp2p_swarm: Listener ListenerId(1); New address: "/ip4/127.0.0.1/tcp/43797"
Jul 30 16:13:42.590 TRACE bgtask{node="a"}: ipfs::p2p::swarm: starting to connect to /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.590 DEBUG bgtask{node="a"}: ipfs::subscription: Creating subscription 0 to Connect to /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.590 DEBUG bgtask{node="a"}: bitswap::behaviour: bitswap: new_handler
Jul 30 16:13:42.590 TRACE bgtask{node="a"}: ipfs::p2p::swarm: new_handler
Jul 30 16:13:42.590 DEBUG bgtask{node="a"}: libp2p_tcp: Dialing /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.591 TRACE bgtask{node="b"}: libp2p_tcp: Incoming connection from /ip4/127.0.0.1/tcp/51178 at /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.591 DEBUG bgtask{node="b"}: bitswap::behaviour: bitswap: new_handler
Jul 30 16:13:42.591 TRACE bgtask{node="b"}: ipfs::p2p::swarm: new_handler
Jul 30 16:13:42.591 TRACE bgtask{node="b"}: ipfs: IncomingConnection { local_addr: "/ip4/127.0.0.1/tcp/43797", send_back_addr: "/ip4/127.0.0.1/tcp/51178" }
Jul 30 16:13:42.595 DEBUG bgtask{node="b"}: libp2p_swarm: Connection established: Connected { endpoint: Listener { local_addr: "/ip4/127.0.0.1/tcp/43797", send_back_addr: "/ip4/127.0.0.1/tcp/51178" }, info: PeerId("12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox") }; Total (peer): 1.
Jul 30 16:13:42.595 TRACE bgtask{node="b"}: ipfs::p2p::swarm: inject_connected 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox Listener { local_addr: "/ip4/127.0.0.1/tcp/43797", send_back_addr: "/ip4/127.0.0.1/tcp/51178" }
Jul 30 16:13:42.595 DEBUG bgtask{node="b"}: ipfs::subscription: Finishing the subscription to Connect to /ip4/127.0.0.1/tcp/51178
Jul 30 16:13:42.595 DEBUG bgtask{node="b"}: bitswap::behaviour: bitswap: inject_connected 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox
Jul 30 16:13:42.595 TRACE bgtask{node="b"}: ipfs: ConnectionEstablished { peer_id: PeerId("12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox"), endpoint: Listener { local_addr: "/ip4/127.0.0.1/tcp/43797", send_back_addr: "/ip4/127.0.0.1/tcp/51178" }, num_established: 1 }
Jul 30 16:13:42.595 DEBUG bgtask{node="a"}: libp2p_swarm: Connection established: Connected { endpoint: Dialer { address: "/ip4/127.0.0.1/tcp/43797" }, info: PeerId("12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc") }; Total (peer): 1.
Jul 30 16:13:42.595 TRACE bgtask{node="b"}: ipfs::p2p::behaviour: kad: peer 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox is unroutable
Jul 30 16:13:42.595 TRACE bgtask{node="a"}: ipfs::p2p::swarm: inject_connected 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc Dialer { address: "/ip4/127.0.0.1/tcp/43797" }
Jul 30 16:13:42.596 DEBUG bgtask{node="a"}: ipfs::subscription: Finishing the subscription to Connect to /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.596 TRACE ipfs::subscription: Dropping subscription 0 to Connect to /ip4/127.0.0.1/tcp/43797
Jul 30 16:13:42.596 DEBUG bgtask{node="a"}: bitswap::behaviour: bitswap: inject_connected 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc
Jul 30 16:13:42.596 TRACE facade{node="a"}: ipfs::repo::mem: new block
Jul 30 16:13:42.596 TRACE bgtask{node="a"}: ipfs: ConnectionEstablished { peer_id: PeerId("12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc"), endpoint: Dialer { address: "/ip4/127.0.0.1/tcp/43797" }, num_established: 1 }
Jul 30 16:13:42.596 DEBUG facade{node="a"}: ipfs::subscription: Finishing the subscription to Obtain block bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.596 DEBUG facade{node="b"}: ipfs::subscription: Creating subscription 1 to Obtain block bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.596 TRACE bgtask{node="a"}: ipfs::p2p::behaviour: kad: routing updated; 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc: ["/ip4/127.0.0.1/tcp/43797"]
Jul 30 16:13:42.597 TRACE bgtask{node="b"}: libp2p_kad::behaviour: Query QueryId(0) finished.
Jul 30 16:13:42.597 DEBUG bgtask{node="b"}: ipfs::subscription: Finishing the subscription to Kad request QueryId(0)
Jul 30 16:13:42.597 WARN bgtask{node="b"}: ipfs::p2p::behaviour: kad: could not find a provider for bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.600 TRACE bgtask{node="a"}: ipfs::p2p::behaviour: ping: pong from 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc
Jul 30 16:13:42.601 TRACE bgtask{node="b"}: ipfs::p2p::behaviour: ping: pong from 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox
Jul 30 16:13:42.602 DEBUG bitswap::protocol: upgrade_outbound: /ipfs/bitswap/1.1.0
Jul 30 16:13:42.602 DEBUG bgtask{node="a"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc: (empty message)
Jul 30 16:13:42.603 TRACE bgtask{node="a"}: ipfs::p2p::behaviour: ping: rtt to 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc is 4 ms
Jul 30 16:13:42.603 DEBUG bgtask{node="b"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox: cancel: bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.604 TRACE bgtask{node="b"}: ipfs::p2p::behaviour: ping: rtt to 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox is 3 ms
Jul 30 16:13:42.604 TRACE bgtask{node="a"}: libp2p_kad::behaviour: Request to PeerId("12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc") in query QueryId(0) succeeded.
Jul 30 16:13:42.604 TRACE bgtask{node="a"}: libp2p_kad::behaviour: Query QueryId(0) finished.
Jul 30 16:13:42.604 TRACE bgtask{node="a"}: libp2p_kad::behaviour: Query QueryId(0) finished.
Jul 30 16:13:42.604 DEBUG bgtask{node="a"}: ipfs::subscription: Finishing the subscription to Kad request QueryId(0)
Jul 30 16:13:42.604 INFO bgtask{node="a"}: ipfs::p2p::behaviour: kad: providing bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.605 TRACE libp2p_kad::handler: Inbound substream: EOF
Jul 30 16:13:42.605 DEBUG bitswap::protocol: upgrade_outbound: /ipfs/bitswap/1.1.0
Jul 30 16:13:42.605 DEBUG bgtask{node="b"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox: (empty message)
Jul 30 16:13:42.606 DEBUG bgtask{node="a"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc: want: bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i 1
Jul 30 16:13:42.606 INFO bgtask{node="a"}: ipfs::p2p::behaviour: Peer 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc wants block bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i with priority 1
Jul 30 16:13:42.607 TRACE bgtask{node="a"}: bitswap::behaviour: queueing block to be sent to 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc: bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.608 DEBUG bitswap::protocol: upgrade_outbound: /ipfs/bitswap/1.1.0
Jul 30 16:13:42.609 DEBUG bgtask{node="a"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWMYo2VuqaAE4pajBEs6mrPYND6WQrCkTF7NP1JoeQvwpc: (empty message)
Jul 30 16:13:42.609 DEBUG bgtask{node="b"}: bitswap::behaviour: bitswap: inject_event from 12D3KooWKnZGUipX95ZGzqpQhPQ637euKNJ6b57H99mQcTt1hvox: block: bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.610 TRACE ipfs::repo::mem: new block
Jul 30 16:13:42.610 DEBUG ipfs::subscription: Finishing the subscription to Obtain block bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
Jul 30 16:13:42.610 TRACE facade{node="b"}: ipfs::subscription: Dropping subscription 1 to Obtain block bafkreidisjp6jmjonhw67p4j2cwwr2lohkce3lqrkjwcngr6lqgsjb6g2i
test exchange_block ... ok
```
Co-authored-by: ljedrz <ljedrz@gmail.com>
Co-authored-by: ljedrz <ljedrz@users.noreply.github.com>
2020-07-31 09:40:39 +00:00
ljedrz
1615640b05
apply review comment
...
Co-authored-by: Joonas Koivunen <joonas.koivunen@gmail.com>
2020-07-31 11:14:31 +02:00
ljedrz
97487d2868
feat: apply the tracing Span to everything the Swarm spawns
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-31 11:08:36 +02:00
ljedrz
ae17a11d7b
fix: update README
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 18:07:24 +02:00
ljedrz
533e569b66
feat: use tracing in Ipfs methods
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 17:55:52 +02:00
ljedrz
e820e7a5e8
feat: keep a node's Span instead of its name
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 17:32:25 +02:00
bors[bot]
02beb5f46b
Merge #263
...
263: move bitswap Stats directly under Bitswap r=koivunej a=ljedrz
This makes the bitswap `Stats` persistent between peer disconnects.
In addition, remove the unused and no longer compatible `Ledger` tests.
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-30 14:04:16 +00:00
ljedrz
0abe1b4aa4
refactor: improve node init in some tests
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 15:59:14 +02:00
ljedrz
e0d43ed861
feat: more logs
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 15:21:03 +02:00
ljedrz
0140c673b8
feat: attach tracing to nodes
...
Co-authored-by: Joonas Koivunen <joonas@equilibrium.co>
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 14:53:38 +02:00
ljedrz
c1b30ff89f
fix: persist the bitswap peer stats
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-30 12:50:36 +02:00
bors[bot]
c55298b6a4
Merge #271
...
271: Adjust subscription locking r=ljedrz a=koivunej
Fixes the number of critical sections in SubscriptionFuture from 2 to 1, helping out with the hangs in exchange_block which have been recorded in #134 . Also backports the `related_subs` cleanup from #264 .
Co-authored-by: Joonas Koivunen <joonas@equilibrium.co>
2020-07-30 08:49:00 +00:00
Joonas Koivunen
7b71137eb8
fix: cleanup also the Pending related subs
...
earlier commit already included cleanup for the Ready and Cancelled
cases and this will do the same for Pending cases. the end result
doesn't change but as is apparent from the test changes: a single
Some(0) becomes None. however this does remove leaking and potential
bugs when a previously completed subscription would be reused.
2020-07-30 11:10:20 +03:00
Joonas Koivunen
19f79dd690
fix: replace two critical sections with one
...
merging these two together has the benefit of never removing
Subscription from the registry while polling as it seemed quite frequent
to *miss* the completion notice by trying to juggle the two critical
sections. this seems to have at least made the exchange_block test
failure reproduction locally difficult.
2020-07-30 11:08:28 +03:00
bors[bot]
39feb8eeb9
Merge #270
...
270: Replace log with tracing r=koivunej a=ljedrz
The latter is better suited for `async` applications.
This is mostly a very basic 1:1 change with a few extra improvements.
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-29 15:42:41 +00:00
ljedrz
e52108d564
feat: improve some Debug impls and add a few extra logs
...
Co-authored-by: Joonas Koivunen <joonas@equilibrium.co>
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-29 14:54:38 +02:00
ljedrz
a284c1f841
feat: replace log with tracing
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-29 14:50:00 +02:00
bors[bot]
cb002eb642
Merge #269
...
269: Remove unwrap usage in continue_walk r=koivunej a=c410-f3r
This is a first step towards #200
Co-authored-by: Caio <c410.f3r@gmail.com>
2020-07-29 06:11:55 +00:00
Caio
eb99452664
Remove unwrap usage in continue_walk
2020-07-28 15:04:41 -03:00
bors[bot]
fca34088c3
Merge #261
...
261: update remaining deps r=koivunej a=ljedrz
In order to tackle the test timeout issue I decided to update the remaining dependencies to make sure the root cause is not already fixed upstream.
The only direct dependency that couldn't be updated is `unsigned-varint`, because `cid` depends on the version we are currently using.
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-28 12:32:40 +00:00
ljedrz
3b6ad52d85
chore: update remaining deps
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 13:44:45 +02:00
bors[bot]
f60ac1a8c2
Merge #267
...
267: ci: use vcpkg for openssl on windows r=ljedrz a=koivunej
Hoping to find something to help with #261 :
- switch to using [lukka/run-vcpkg](https://github.com/lukka/run-vcpkg )
- get rid of the llvm dependency on windows (it was not needed)
- update openssl dep to 0.10.30
Co-authored-by: Joonas Koivunen <joonas@equilibrium.co>
2020-07-28 10:50:00 +00:00
Joonas Koivunen
2bd1f588a0
chore: update openssl dep
2020-07-28 13:34:25 +03:00
Joonas Koivunen
4a9390f85a
ci: use run-vcpkg for openssl
...
run-vcpkg should handle caching properly for us. See #261 for it not
working properly, there were linker errors with latest openssl-sys.
This also gets rid of the llvm dependency on windows which wasn't
eventually needed. I guess there is such thing as binary compatibility
after all!
2020-07-28 13:32:51 +03:00
bors[bot]
7ebe1a6365
Merge #260
...
260: Initial content discovery r=koivunej a=ljedrz
An initial implementation of content discovery via DHT, where a `get_block` request that doesn't succeed locally results in a call to `Kademlia::get_providers`. It also fixes (AKA fixes in most cases) the previously prototyped display of Kademlia content keys, in this case `Cid`s.
cc https://github.com/rs-ipfs/rust-ipfs/issues/10
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-28 08:16:13 +00:00
ljedrz
a4be9cddd6
refactor: change the ipfs.docs Cid to the logo one
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
ljedrz
d0908104a3
fix: don't initialize the global test logger twice
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
ljedrz
443bfad372
fix: remove a stray clone
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
ljedrz
e98e86b188
fix: set up the kad protocol in the content discovery test
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
ljedrz
49390676bf
feat: rename the variables in the kad test, add a new content discovery one
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
ljedrz
10974f8918
feat: enable content discovery features
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-28 09:58:40 +02:00
bors[bot]
9e491a68f3
Merge #259
...
259: Multihash-based repo r=koivunej a=ljedrz
We currently have an ad-hoc `Cid`-upgrading mechanism in place for the legacy `v0` version that is complicated and error-prone; when working on the `SubscriptionRegistry` I had to disable some of those upgrades, but some of them were still applied in the `Repo` (and necessary in order for the conformance tests to pass), making it hard to work on further functionalities like content discovery.
The solution I came up with is to introduce a `RepoCid` wrapper in order to make the keys in `Repo` objects operate on the associated `Multihash` instead of the whole `Cid`. Changing them to plain `Multihash`es wouldn't work, as we are still expected to return `Cid`s for the purposes of e.g. `Ipfs::local_refs` and I'm pretty sure some of the conformance tests still expect the full `Cid` to be available.
The only drawback is some extra `clone()`ing, but the improvement in code clarity and the unblocking of further changes is well worth it. This change also simplifies one of our conformance test patches (local refs).
~~I'm marking this PR as a draft in hopes that I can still come up with some solution to the extra cloning.~~ This is hard; I'm not able to do this at the moment, but this shouldn't be a blocker.
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-28 07:30:09 +00:00
bors[bot]
1367a30a8c
Merge #265
...
265: Use async macro for tests r=ljedrz a=c410-f3r
Fixes #248
Co-authored-by: Caio <c410.f3r@gmail.com>
2020-07-27 18:09:01 +00:00
Caio
1107b29114
Rustfmt
2020-07-27 13:16:54 -03:00
Caio
e42b88c6a6
Use async macro for tests
2020-07-27 13:00:40 -03:00
ljedrz
6188425c59
chore: remove unused Ledger tests
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-27 11:14:32 +02:00
ljedrz
b1aa5a2a7d
refactor: move bitswap stats directly under the Bitswap object
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-27 11:11:56 +02:00
ljedrz
af3e539444
fix: adjust the existing local_refs conformance test patch
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-23 14:28:12 +02:00
ljedrz
7201b1b82f
fix: adjust test_inner_local
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-23 13:58:49 +02:00
ljedrz
fc5d63319e
perf: make Block equality depend only on its Multihash
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-23 12:52:23 +02:00
ljedrz
e9e788fce2
feat: disregard Cid upgrades; only care about the Multihash in the Repo
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-23 12:52:23 +02:00
bors[bot]
6bee0b57e6
Merge #256
...
256: some groundwork for peer/content discovery r=koivunej a=ljedrz
Some groundwork for peer and content discovery using `libp2p::kad`.
~~Very much a WIP with plenty of prototyping and wild `println!`s.~~
Cc https://github.com/rs-ipfs/rust-ipfs/issues/10
Co-authored-by: ljedrz <ljedrz@gmail.com>
2020-07-22 14:23:42 +00:00
ljedrz
5b02b62b85
fix: move bootstrap and add_peer methods to Node
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-22 15:59:58 +02:00
ljedrz
b41490fe31
fix: classic Default::default() fun plus remove explicit kad protocol names
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-22 15:47:25 +02:00
ljedrz
c14f9e60cb
chore: document new DHT-related Ipfs methods
...
Co-authored-by: Joonas Koivunen <joonas.koivunen@gmail.com>
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-22 15:40:13 +02:00
ljedrz
962f389e46
fix: move get_closest_peers from Ipfs to Node
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-22 15:37:37 +02:00
ljedrz
ff1765ba10
fix: remove unused params in Node::new and IpfsOptions::inmemory_with_generated_keys
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-07-22 15:35:25 +02:00