Commit Graph

48 Commits

Author SHA1 Message Date
Steven Allen
9dcec2b3e2 gx: update go-libp2p-peer
Reverts the changes that allowed small keys (ed25519 keys) to be inlined.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-12-07 15:37:23 -08:00
Kevin Atkinson
feb4808975 Gx update go-merkledag and related deps.
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-11-28 17:21:36 -05:00
hannahhoward
0963c9cdcb Update go-ipfs-delay and assoc deps
License: MIT
Signed-off-by: hannahhoward <hannah@hannahhoward.net>
2018-11-15 18:53:45 -08:00
Steven Allen
0d80fc54c3 gx: update go-log and sha256
fixes #5709

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-02 21:17:20 -07:00
Steven Allen
ec9fac7379 gx: update go-ipld-cbor
(might as well do this at the same time)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-02 13:17:44 -07:00
Steven Allen
af53380e8c gx: update go-path
fixes the changed path cat error causing the js-ipfs-api tests to fail

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-30 09:27:41 -07:00
Hector Sanjuan
ef7234d269 Bubble deps
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-10-29 18:49:37 +01:00
Steven Allen
e35d4ea58b gx: update yamux
(fixes a panic due to a race)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-24 15:01:31 -07:00
Steven Allen
636bbc7e2b gx update go-libp2p
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-24 13:39:48 -07:00
Steven Allen
c97c3459be gx update
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-24 09:59:43 -07:00
Łukasz Magiera
6207222211 namesys: doc on emitResult
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-18 15:02:05 +02:00
Łukasz Magiera
7fcf56e8e5 namesys: select on output
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-16 18:02:58 +02:00
Łukasz Magiera
734615ac98 namesys: avoid defer in loop
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-16 16:53:45 +02:00
Łukasz Magiera
462c8026be namesys: allow non /ipfs paths
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-16 16:37:15 +02:00
Łukasz Magiera
e335fd32f2 namesys: drop prefix args
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-16 16:35:31 +02:00
Łukasz Magiera
7dbeb27e5b namesys: review fixes
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-16 16:09:55 +02:00
Łukasz Magiera
94bbeffaa9 Merge remote-tracking branch 'origin/master' into feat/namestream
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-15 12:05:03 +02:00
Steven Allen
4f53736430 gx: update yamux and refmt
* yamux: fix memory leak.
* refmt: obey the "empty" tag.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-12 16:15:40 +01:00
Steven Allen
8117a2bcee gx: update go-buffer-pool
Turns out that `pool.Put(buf)` had to *allocate* because we needed to turn
`[]byte` into `interface{}`. Apparently, we've never done this correctly we just
never noticed because we never really used buffer pools extensively.

However, since migrating yamux to a buffer-pool backed buffer, this started
showing up in allocation profiles.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-10 14:11:31 +01:00
Łukasz Magiera
0bef4603e8 Merge branch 'master' into feat/namestream
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-10 12:10:12 +02:00
Steven Allen
098933ade4 gx: update stuff
* go-datastore and friends: GetSize
* badger: new release, fewer allocations
* go-mplex: send fewer packets
* go-bitswap: pack multiple blocks in a single message, fewer allocations
* go-buffer-pool: replace the buffer pool from go-msgio
* yamux: fixed data race and uses go-buffer-pool for stream read-buffers to
  reduce memory and allocations.
* go-libp2p-secio: get rid of a hot-spot allocation
* go-libp2p-peerstore: reduced allocations (at the cost of some memory)

More?

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-05 14:48:44 -07:00
Kevin Atkinson
d127f1be98 gx update libp2p/go-buffer-pool
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-10-04 20:05:26 -04:00
Kevin Atkinson
2e975add22 gx update go-libp2p-peerstore
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-10-04 20:04:22 -04:00
Lars Gierth
2c3ed7efb0 gx: update go-datastore, go-libp2p-swarm
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2018-10-04 19:52:42 -04:00
Łukasz Magiera
804634d59b namesys: switch to async code
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-09-27 21:31:42 +02:00
Łukasz Magiera
6adb15f4fb namesys: async: go vet fixes
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-09-27 21:31:42 +02:00
Łukasz Magiera
7ff9f09b07 namesys: Implement async methods
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-09-27 21:31:42 +02:00
Steven Allen
dac058f8be gx: update go-log go-ipld-cbor
(and friends)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-24 05:36:29 -07:00
Łukasz Magiera
91833e288f gx: update go-libp2p-routing
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-09-24 14:03:57 +02:00
Steven Allen
54e2cc629a gx: fix hashes
(some extra files got committed)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-11 20:53:24 -07:00
Kevin Atkinson
d3174f4bd9 gx update and fix code to use new Cid type
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-09-11 22:21:04 -04:00
Steven Allen
a6e617f55c gx: update peerstore
Also:

* Updates go-floodsub to fix a data race.
* Updates golang-lru

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-07 23:40:08 -07:00
Steven Allen
46a1d9d39b gx update deps
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-31 10:29:26 -07:00
Steven Allen
656d7cc1a6 gx: update go-cid, go-libp2p-peer, go-ipfs-cmds, go-ipfs-cmdkit
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-21 17:39:56 -07:00
Steven Allen
2450ddde81 gx: update go-cid
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-15 08:30:22 -07:00
Steven Allen
79e7d5e542 update go-datastore to use []byte values instead of {}interface values
* Most of our datastores barf on non []byte values.
* We have to have a bunch of "is this a []byte" checks.
* Saves some allocations.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-13 14:42:55 -07:00
Kevin Atkinson
075ecb09d0 Gx updates and fixes to use new cid.Builder interface.
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-08-12 19:15:07 -04:00
Steven Allen
594d95af5d update gogo-protobuf
fixes #3214

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-08 18:56:13 -07:00
Steven Allen
3e13277dd4 gx: update deps
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-07 10:02:59 -07:00
Jeromy
042a9729a2 Update bitswap deps
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-08-05 13:22:51 -07:00
Jeromy
ede2caba46 Extract path and resolver
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-07-28 23:57:42 -07:00
Steven Allen
1089eda84b cleanup namesys a bit
Remove ~50 lines of code, some casting, and a superfluous map (when go starts
looking like python, something's wrong).

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-05-31 18:29:22 -07:00
Dirk McCormick
e8f79c8803 Use variadic options
License: MIT
Signed-off-by: Dirk McCormick <dirkmdev@gmail.com>
2018-02-28 16:57:58 -05:00
Dirk McCormick
1abf8366ee Add options for record count and timeout for resolving DHT paths
License: MIT
Signed-off-by: Dirk McCormick <dirkmdev@gmail.com>
2018-02-23 11:47:30 -05:00
Lars Gierth
5d6b3c5701 namesys: degrade most logging to debug level
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2017-12-07 00:21:57 +01:00
Jeromy
1f9ec4e3ed update to libp2p 4.0.1 and propogate other changes
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
2016-10-05 22:12:43 -07:00
Jeromy
0e312f5caf initial vendoring of libp2p outside of the repo with gx
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-30 09:34:06 -08:00
W. Trevor King
3ead2443e5 namesys: Add recursive resolution
This allows direct access to the earlier protocol-specific Resolve
implementations.  The guts of each protocol-specific resolver are in
the internal resolveOnce method, and we've added a new:

  ResolveN(ctx, name, depth)

method to the public interface.  There's also:

  Resolve(ctx, name)

which wraps ResolveN using DefaultDepthLimit.  The extra API endpoint
is intended to reduce the likelyhood of clients accidentally calling
the more dangerous ResolveN with a nonsensically high or infinite
depth.  On IRC on 2015-05-17, Juan said:

15:34 <jbenet> If 90% of uses is the reduced API with no chance to
  screw it up, that's a huge win.
15:34 <wking> Why would those 90% not just set depth=0 or depth=1,
  depending on which they need?
15:34 <jbenet> Because people will start writing `r.Resolve(ctx, name,
  d)` where d is a variable.
15:35 <wking> And then accidentally set that variable to some huge
  number?
15:35 <jbenet> Grom experience, i've seen this happen _dozens_ of
  times. people screw trivial things up.
15:35 <wking> Why won't those same people be using ResolveN?
15:36 <jbenet> Because almost every example they see will tell them to
  use Resolve(), and they will mostly stay away from ResolveN.

The per-prodocol versions also resolve recursively within their
protocol.  For example:

  DNSResolver.Resolve(ctx, "ipfs.io", 0)

will recursively resolve DNS links until the referenced value is no
longer a DNS link.

I also renamed the multi-protocol ipfs NameSystem (defined in
namesys/namesys.go) to 'mpns' (for Multi-Protocol Name System),
because I wasn't clear on whether IPNS applied to the whole system or
just to to the DHT-based system.  The new name is unambiguously
multi-protocol, which is good.  It would be nice to have a distinct
name for the DHT-based link system.

Now that resolver output is always prefixed with a namespace and
unprefixed mpns resolver input is interpreted as /ipfs/,
core/corehttp/ipns_hostname.go can dispense with it's old manual
/ipfs/ injection.

Now that the Resolver interface handles recursion, we don't need the
resolveRecurse helper in core/pathresolver.go.  The pathresolver
cleanup also called for an adjustment to FromSegments to more easily
get slash-prefixed paths.

Now that recursive resolution with the namesys/namesys.go composite
resolver always gets you to an /ipfs/... path, there's no need for the
/ipns/ special case in fuse/ipns/ipns_unix.go.

Now that DNS links can be things other than /ipfs/ or DHT-link
references (e.g. they could be /ipns/<domain-name> references) I've
also loosened the ParsePath logic to only attempt multihash validation
on IPFS paths.  It checks to ensure that other paths have a
known-protocol prefix, but otherwise leaves them alone.

I also changed some key-stringification from .Pretty() to .String()
following the potential deprecation mentioned in util/key.go.
2015-05-20 08:40:05 -07:00