Brian Tiger Chow
1ed0850ce2
style(core) peer -> self
2014-11-16 07:00:28 -08:00
Jeromy
f45d575a96
address comments from PR
2014-11-16 02:45:20 -08:00
Jeromy
f21ec1923a
verify ipns records
2014-11-16 02:45:19 -08:00
Juan Batiz-Benet
99f2378bac
mount: fixed mount init + teardown
...
This commit adds a Mount abstraction (which is really just
a wrapped context closer). It makes sure to bind the mount
to the fate of the Node (i.e. close it if the node ends).
This fixes #350
2014-11-16 01:42:42 -08:00
Brian Tiger Chow
0b42d77e13
refactor(core, bitswap) split bitswap init into two steps
...
@jbenet
2014-11-15 02:10:53 -08:00
Brian Tiger Chow
6d89094d41
rename -> OnlineMode()
...
because this method doesn't check actual network status
2014-11-14 03:17:29 -08:00
Brian Tiger Chow
772f657fcd
add online method to node
2014-11-14 03:17:29 -08:00
Juan Batiz-Benet
0135e3ebbe
swarm + net: add explicit listen addresses
2014-11-05 04:00:49 -08:00
Juan Batiz-Benet
f0d823c2db
fix tests (circular import)
2014-10-30 01:17:26 -07:00
Brian Tiger Chow
79866d3378
hotfix(core) assign node.Resolver = path.Resolver
...
discovered by @mappum and applied at 414e20b71e
fixing here to address #233
https://github.com/jbenet/go-ipfs/issues/233
2014-10-29 06:58:35 -07:00
Juan Batiz-Benet
d79ebe68d2
dht ctxcloserify
2014-10-25 21:33:59 -07:00
Juan Batiz-Benet
4584bc8d18
clean up core initialization
...
- less floating variables
2014-10-25 21:33:59 -07:00
Juan Batiz-Benet
8cf22c062f
core is now ctxcloser
2014-10-25 21:33:10 -07:00
Juan Batiz-Benet
f2b8803a57
net/service now uses ctxcloser
2014-10-25 21:33:10 -07:00
Emery Hemingway
056699cebe
convert DAGService to an interface
2014-10-25 22:15:19 -04:00
Juan Batiz-Benet
184c25430b
go-vet friendly codebase
...
- distinguish log.Error and log.Errorf functions
- Initialize structs with field names
- A bit of unreachable code (defers)
2014-10-25 03:46:39 -07:00
Jeromy
31b0ff0307
add testing for pins
2014-10-22 00:28:41 -07:00
Juan Batiz-Benet
f7c1ed39e0
renamed datastore.go -> go-datastore
2014-10-21 15:10:58 -07:00
Juan Batiz-Benet
ac62d13e42
peerstore Put -> Add
...
Changed lots of peer use, and changed the peerstore to ensure
there is only ever one peer in use.
Fixed #174
2014-10-20 06:37:12 -07:00
Juan Batiz-Benet
9ca87fbb93
peer.Peer is now an interface
...

2014-10-20 03:26:46 -07:00
Juan Batiz-Benet
b1d11ccfcb
peerstore constructs peers
...
Now, all peers should be retrieved from the Peerstore, which will
construct the peers accordingly. This ensures there's only one peer
object per peer (opposite would be bad: things get out sync)
cc @whyrusleeping
2014-10-20 00:44:44 -07:00
Jeromy
60cd0f1cf0
some dht cleanup, and make DHTs take a master context
2014-10-18 04:28:26 -07:00
Jeromy
b2bd6848a8
fix core NewNode not setting network field, and added new json serializer for diagnostics
2014-10-18 04:28:25 -07:00
Juan Batiz-Benet
338b037238
clean up and add inet.Network to bitswap
...
new Service interface
2014-10-10 20:43:04 -07:00
Jeromy
3732244837
actually start the diagnostics service
2014-10-10 13:18:20 -07:00
Jeromy
280c7e7e06
implement diagnostics service
2014-10-10 13:18:19 -07:00
Juan Batiz-Benet
972c0f7b4b
u.DOut -> log.Debug
...
and other logging switches. I kept the u.PErr and u.POut in cli
commands, as those do need to write raw output directly.
2014-10-09 04:50:22 -07:00
Juan Batiz-Benet
2944360f5c
New NameSystem interface
...
type NameSystem interface {
Resolver
Publisher
}
should say it all.
cc @whyrusleeping
2014-10-08 04:14:52 -07:00
Juan Batiz-Benet
910a76e220
updated multiaddr use across codebase
2014-10-06 04:13:43 -07:00
Juan Batiz-Benet
0c8ae7674e
loggers: set level
2014-10-04 03:53:21 -07:00
Juan Batiz-Benet
7e1cd59259
initialize loggers at ERROR
2014-10-04 03:36:30 -07:00
Juan Batiz-Benet
2ce9415c69
+ fs ds + thread safe
2014-10-03 14:45:21 -07:00
Juan Batiz-Benet
88d804e32a
added core logging
2014-10-03 14:45:21 -07:00
Juan Batiz-Benet
ba510cbd6d
IpnsPublicher -> Publisher interface
2014-10-01 01:36:21 -07:00
Juan Batiz-Benet
728f17d3c9
cmd/ipfs/pin.go now uses MakeCommand
...
+ added recursive pinning func
2014-10-01 01:17:27 -07:00
Jeromy
7f5e13716d
writes to ipns work if the top object is the written file (no directories yet!)
2014-10-01 00:39:57 -07:00
Jeromy
2aa2b8c6c7
add routing resolver test
2014-10-01 00:26:59 -07:00
Jeromy
4c0f18cbbd
implement ipns publisher code
2014-10-01 00:26:59 -07:00
Jeromy
8ddfb57c59
some bugfixes and added logging
2014-10-01 00:26:59 -07:00
Jeromy
b5fd9492d7
fixes to make interface more usable
2014-10-01 00:25:52 -07:00
Jeromy
235a767492
implement namesys resolvers (thanks to bren2010 for dns and proquint)
2014-10-01 00:16:05 -07:00
Juan Batiz-Benet
c7af4a6fa2
Bugfix: !online -> online
...
Caused panic.
2014-09-30 11:34:28 -07:00
Juan Batiz-Benet
c054619827
do init id offline, only dont parse keys
...
(test was failing)
2014-09-30 03:31:24 -07:00
Brian Tiger Chow
508a5b7a94
amendment to core context + cancels
2014-09-30 03:22:30 -07:00
Juan Batiz-Benet
4b5e0291f8
core context + cancels
...
Erroring out in core setup should cancel the context
to ensure subsystems are shut down. This has to happen
all over the place we use contexts.
@perfmode @whyrusleeping
2014-09-30 03:22:30 -07:00
Juan Batiz-Benet
f2db4b77ac
don't load identity in offline mode (temp)
...
**For now**, we don't need to load/parse the private key
(which causes a signficant delay in commands) when doing
things entirely offline. This may change, and in that case
the private key should be loaded on demand.
2014-09-30 03:22:29 -07:00
Juan Batiz-Benet
53f0b117f5
update net with peerstore
2014-09-26 02:41:46 -07:00
Juan Batiz-Benet
303ebd894d
config: changed language from Peers to Bootstrap
2014-09-24 05:31:25 -07:00
Juan Batiz-Benet
193aebc4c0
config: rename addresses
...
WARNING: change breaks old configs.
@whyrusleeping @perfmode
This commit changes the way addresses are stored in config files.
It lumps Identity.Address and RPCAddress into Addresses. This
commit also fixes several golint issues.
2014-09-24 05:28:35 -07:00
Brian Tiger Chow
9d7ae40003
feat(bitswap) expose ability to toggle "niceness"
...
true -> always send to peer
false -> use ledger-based strategy described in IPFS paper draft 3
2014-09-22 04:06:19 -07:00
Brian Tiger Chow
b5ea124a76
style(bitswap) swap argument order
2014-09-22 04:06:18 -07:00
Juan Batiz-Benet
8d29a3255f
core bugfix -- connect ctx
2014-09-22 04:06:18 -07:00
Juan Batiz-Benet
8c35988b8d
add bootstrap peers to peerstore.
2014-09-22 04:06:17 -07:00
Juan Batiz-Benet
b30dd47aa3
Peerstore fix (ptr to iface)
2014-09-22 04:06:17 -07:00
Juan Batiz-Benet
64ba4cd0df
output + linting
2014-09-22 04:06:17 -07:00
Brian Tiger Chow
0c67019447
style(exch:bitswap) rename adapter, session, etc.
...
style(exch:bitswap) rename NetMessage adapter impl
2014-09-22 04:06:14 -07:00
Brian Tiger Chow
e1fe4f6d60
refac(exchange) rename exchange.Interface to match golang conventions
...
examples:
http://golang.org/pkg/container/heap/#Interface
http://golang.org/pkg/net/#Interface
http://golang.org/pkg/sort/#Interface
2014-09-22 04:06:13 -07:00
Brian Tiger Chow
fd086b9c48
refac(exchange) bitswap -> exchange/bitswap
...
Move go-ipfs/bitswap package to go-ipfs/exchange/bitswap
* Delineates the difference between the generic exchange interface and
implementations (eg. BitSwap protocol)
Thus, the bitswap protocol can be refined without having to overthink
how future exchanges will work. Aspects common to BitSwap and other
exchanges can be extracted out to the exchange package in piecemeal.
Future exchange implementations can be placed in sibling packages next
to exchange/bitswap. (eg. exchange/multilateral)
2014-09-22 04:06:13 -07:00
Juan Batiz-Benet
4284e8e960
config: use PeerID in bootstrap config
2014-09-22 04:06:12 -07:00
Brian Tiger Chow
b77a785cd8
fix(dht) remove deprecated Start() call
2014-09-22 04:05:22 -07:00
Brian Tiger Chow
547f9e1cf6
fix(core) patiently convince the core to compile
...
=)
2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
e4e021085b
add Peerstore to dht
2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
70ea4f540c
added peerstore to core
2014-09-22 04:05:19 -07:00
Brian Tiger Chow
fda94d9f34
refactor(bitswap) rm SetStrategy method
...
remove this setter while the interface is under construction
2014-09-22 04:05:18 -07:00
Juan Batiz-Benet
27d0e692ed
core dht setup
2014-09-22 04:05:16 -07:00
Brian Tiger Chow
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
Brian Tiger Chow
ab460ed882
refactor(bs, core) rename bitswap objects
2014-09-22 04:05:15 -07:00
Brian Tiger Chow
0075a47df0
fix(bs) remove concrete refs to swarm and dht
2014-09-22 04:05:15 -07:00
Brian Tiger Chow
6aecb80395
chore(core) add TODOs to use contexts
2014-09-22 04:05:15 -07:00
Juan Batiz-Benet
c14123397a
starting to integrate new net
2014-09-22 04:05:13 -07:00
Juan Batiz-Benet
67e76c0acc
godeps multiaddr + swarm move.
2014-09-22 04:05:12 -07:00
Juan Batiz-Benet
035d600f28
Godeps: use in net + new multiaddr
2014-09-22 04:05:12 -07:00
Matt Bell
3ae37b29bd
core: Show error when config identity is not set
2014-09-11 17:50:05 -07:00
Matt Bell
b63e10f3b5
core: Don't require address for node initialization
2014-09-11 17:49:10 -07:00
Matt Bell
7b32c11347
core: Refactored node initialization
2014-09-11 17:22:44 -07:00
Brian Tiger Chow
7968b45e58
vendor dependencies with godep
...
dependencies are vendored into Godeps/_workspace and commit versions are
recorded in Godeps.json
update datastore to e89f0511
update go.crypto
2014-09-09 22:39:42 -07:00
Jeromy
e6498b3733
fix issue with blocks not being trimmed properly and being too large to be sent over the network
2014-09-05 02:58:31 +00:00
Jeromy
eeab5f9bd9
fix issue with blocks not actually being stored via dagservice
2014-09-04 03:37:29 +00:00
Jeromy
4b97f1f270
create new crypto package and make rest of repo use it
2014-09-03 20:15:10 +00:00
Jeromy
aa5a34a6d1
add init command to generate crypto keys
2014-09-02 12:58:35 -07:00
Jeromy
a5d54ea29e
fix up tests that started failing after changing identify code
2014-09-01 21:55:59 -07:00
Jeromy
45fc43c9cf
add pub/priv key code to identify, not complete yet
2014-09-01 16:09:03 -07:00
Jeromy
c2cc4b1d70
a little cleanup, ipfs 'works' for basic file adds and cats
2014-08-29 17:22:40 -07:00
Jeromy
691d1b36bb
integrate bitswap and blockservice into the core package
2014-08-29 11:34:50 -07:00
Jeromy
cfdf01d58a
bitswap first working commit!
2014-08-26 14:24:51 -07:00
Jeromy
91e4675cbf
basic implementation of bitswap, needs testing/verification that it works
2014-08-24 18:13:05 -07:00
Juan Batiz-Benet
3f97e7e385
goling: PeerId -> ID
2014-07-22 02:28:25 -07:00
Juan Batiz-Benet
f718bd6a92
go lint
...
link errors left:
- protocol buffers output is not lint-friendly
2014-07-22 02:20:08 -07:00
Juan Batiz-Benet
8a07a62643
added path resolution
2014-07-06 00:07:04 -07:00
Juan Batiz-Benet
7b98bf80f4
cleaned up interface to use DAG
2014-07-05 23:47:26 -07:00
Juan Batiz-Benet
9f542f8797
abstracted merkledag service
2014-07-05 23:45:35 -07:00
Juan Batiz-Benet
5abf3c2ae9
added ls + recusrive directory adding
2014-07-05 18:19:38 -07:00
Juan Batiz-Benet
3b241486a9
ipfs cat
2014-07-05 17:29:44 -07:00
Juan Batiz-Benet
cd1d4d4455
core block service
2014-07-05 15:38:41 -07:00
Juan Batiz-Benet
2d7f2473a5
go fmt
2014-07-05 13:21:30 -07:00
Juan Batiz-Benet
2b9d67df81
core construction
2014-07-05 13:21:15 -07:00
Juan Batiz-Benet
3b570d3f82
skeleton.
2014-06-26 01:14:26 -07:00