1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-30 09:59:13 +08:00

2736 Commits

Author SHA1 Message Date
ad14d6c561 refac(bitswap:interface) GetBlock, HaveBlock -> Block, HasBlock 2014-09-22 04:05:17 -07:00
d91955b412 moved handlers to own file 2014-09-22 04:05:17 -07:00
c4536d127d comment out diagnostic
it'll have to change lots since the listener is gone
2014-09-22 04:05:17 -07:00
69ed45c555 refactor peer distance search + handleGetProviders 2014-09-22 04:05:17 -07:00
9eb41e7237 ping + find peer 2014-09-22 04:05:17 -07:00
2522625bc6 lint nit 2014-09-22 04:05:17 -07:00
e872482aa7 refactor symbol 2014-09-22 04:05:17 -07:00
2f2808e9d8 handleGetValue 2014-09-22 04:05:17 -07:00
9c5c49b690 starting on dht-- msg handler 2014-09-22 04:05:17 -07:00
1461feec3f simpler, clearer dht message 2014-09-22 04:05:17 -07:00
bccb3e871b goroutine note comment 2014-09-22 04:05:16 -07:00
27d0e692ed core dht setup 2014-09-22 04:05:16 -07:00
865109f562 expose handler in inet 2014-09-22 04:05:16 -07:00
b0d0b5fc20 better protobuf Makefile with wildcard. 2014-09-22 04:05:16 -07:00
9849794b07 Move Sender interface to network pkg
@perfmode sender is exactly what we need to pass in to dht/bitswap.
2014-09-22 04:05:16 -07:00
c7148cd83c Service: remove RequestID from SendMessage 2014-09-22 04:05:16 -07:00
cb230b69a2 bugfix: service has a Start func
We were issuing handling goroutines in both NewService and Start
2014-09-22 04:05:16 -07:00
f9650a7906 allow service to have nil handler
@perfmode this means we can create a Service first, give it to
the network and protocol (removing interdep).
2014-09-22 04:05:16 -07:00
5426a1b512 refactor(blockservice) use bitswap.Exchange interface 2014-09-22 04:05:16 -07:00
2738d72095 feat(bitswap) add interface 2014-09-22 04:05:16 -07:00
dde6ad495e todo(blockservice, core) add notes
* to wrap datastore for ease of use
* to pass a non-responsive bitswap mock rather than performing nil
* checks internally
2014-09-22 04:05:16 -07:00
b17bc2d54c feat(net:service) add sender interface 2014-09-22 04:05:15 -07:00
ab460ed882 refactor(bs, core) rename bitswap objects 2014-09-22 04:05:15 -07:00
0075a47df0 fix(bs) remove concrete refs to swarm and dht 2014-09-22 04:05:15 -07:00
6aecb80395 chore(core) add TODOs to use contexts 2014-09-22 04:05:15 -07:00
0d3b0f1062 fix(bs:msg) remove swarm.Message
no longer exists. instead, use net message
2014-09-22 04:05:15 -07:00
68216245c6 fix(net) use NetMessage interface 2014-09-22 04:05:15 -07:00
556da76b2c fix(cmd:ipfs) import err identify -> spipe 2014-09-22 04:05:15 -07:00
5b5e17ed79 style(bs:tx) rename receiver -> forwarder 2014-09-22 04:05:15 -07:00
2edc03aca1 style(bs:tx) rename network -> transmission 2014-09-22 04:05:15 -07:00
806b3c2977 refac(bs:msg) msg.Wantlist() returns []u.Key 2014-09-22 04:05:15 -07:00
96ab834325 feat(util) add u.Key().ToDatastore() method 2014-09-22 04:05:15 -07:00
78f0f5b0b9 refac(bs:msg) let msg.Blocks() return []blocks
discard erroneous values

wherever blocks cannot be nil, use value rather than pointer. only use
pointers when absolutely necessary.
2014-09-22 04:05:14 -07:00
a3487eb491 fix(bs:net) add peer to receiver interface 2014-09-22 04:05:14 -07:00
baafc6fdf2 style(bs:notific) let struct field be value
rather than pointer
2014-09-22 04:05:14 -07:00
7fcb5d3a4b feat(bs:net) impl service wrapper 2014-09-22 04:05:14 -07:00
b8bd2bc455 refactor(bitswap:msg) move to package 2014-09-22 04:05:14 -07:00
282acb8f26 refactor(bitswap:msg) add, use getters 2014-09-22 04:05:14 -07:00
21639564e7 feat(bitswap:msg) impl FromSwarm method 2014-09-22 04:05:14 -07:00
70999886c5 feat(bitswap:msg) define interfaces 2014-09-22 04:05:14 -07:00
24224979bb feat(bitswap:msg) add ToNet() method 2014-09-22 04:05:14 -07:00
2f4175a00d test(bitswap:notifications) check if chan is open 2014-09-22 04:05:14 -07:00
a7ef09554f refactor(bitswap:notifications) move, rename
add interface
2014-09-22 04:05:14 -07:00
cc163a955d docs(bitswap:notifications) Subscribe 2014-09-22 04:05:13 -07:00
b1155a0bb6 fix(bitswap:notifications) close chan on Publish 2014-09-22 04:05:13 -07:00
7c378126f5 style(bitswap:notifications) rm explicit returns 2014-09-22 04:05:13 -07:00
d294f7dcb2 fix(bitswap:notifications) shutdown on bs.Halt() 2014-09-22 04:05:13 -07:00
b28343cffe refactor(bitswap) meslistener -> notifications 2014-09-22 04:05:13 -07:00
455c6582f5 refactor(bitswap) leverage third-party pubsub lib
use a third-party pubsub library for internal communications

Insights:
* Within bitswap, the actors don't need anything more than simple pubsub
behavior. Wrapping and unwrapping messages proves unneccessary.

Changes:
* Simplifies the interface for both actors calling GetBlock and actors
receiving blocks on the network
* Leverages a well-tested third-party pubsub library

Design Goals:
* reduce complexity
* extract implementation details (wrapping and unwrapping data, etc)
from bitswap and let bitswap focus on composition of core algorithms
operations
2014-09-22 04:05:13 -07:00
add0f3f935 feat(net:message) get net package from e2430ae4279
fix(net:msg) use vendored imports
2014-09-22 04:05:13 -07:00