Commit Graph

583 Commits

Author SHA1 Message Date
Hector Sanjuan
3b2ce4a85d Apply suggestions from code review
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>

Co-Authored-By: ianopolous <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Steven Allen
b720d1f0b5 uses the global PeerHost and don't expose the P2P one
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
47d45c7af8 fix tests
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
fd43f473b4 switch to new path format in p2p http proxy
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
13b0483df0 Don't url decode protocol name. It won't work.
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Chris Boddy
3f6b866edc [http_proxy_over_p2p] url-decode the proxy name and fix test
License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
654105a210 fix test
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Hector Sanjuan
42a843d66b Fix request path. Wasn't using proxy correctly
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-11-28 23:17:27 -08:00
Hector Sanjuan
91c919a47e Fix test
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-11-28 23:17:27 -08:00
Hector Sanjuan
2cc1a99566 Let URL's host take precedence
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-11-28 23:17:27 -08:00
Hector Sanjuan
f03efbd200 Use go-libp2p-http
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
d30c41a5e0 Improve p2p stream closing in http proxy
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
6e24fc609a Use request context in p2p stream http proxy
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
c67d2b4186 Remove unnecessary pointer usage.
Make sure the p2p stream is closed eventually

License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:27 -08:00
Dr Ian Preston
f052d18471 fix non empty paths in p2p http proxy
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:26 -08:00
Chris Boddy
90f5bad718 [http_proxy_over_p2p] proxy async.
Simultaneously send request-body while reading response-body when
proxying requests.

License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:26 -08:00
Chris Boddy
5f246e3211 [http_proxy_over_p2p] httputil.ReverseProxy
Reimplement http-request proxying ala httputil.ReverseProxy.

NB: this is proxies the request synchronously (sends all request-body
before reading any response).

License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:26 -08:00
Chris Boddy
335bca2bb7 [http_proxy_over_p2p] remove now superfluous test
License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:26 -08:00
Dr Ian Preston
22f3b11621 change handler mount point to /proxy/http/
License: MIT
Signed-off-by: Ian Preston <ianopolous@protonmail.com>
2018-11-28 23:17:26 -08:00
Chris Boddy
1945e44f7f [http_proxy_over_p2p] Add sharness tests for http-proxy-over-p2p
License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:26 -08:00
Chris Boddy
c862ac1fb4 [http_proxy_over_p2p] more tests, fix build
License: MIT
Signed-off-by: Chris Boddy <chris@boddy.im>
2018-11-28 23:17:26 -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
Steven Allen
cef645936d gx: update go-ipfs-config
* AutoRelay options for #5785.
* Badger truncate-by-default option for #5275, #5625.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-11-26 17:42:13 -08:00
Jeromy
da4674f0b9 Switch to using request.Context()
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-11-18 16:11:43 -08: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
hannahhoward
943a5de974 Update go-mfs and go-unixfs
So we can get go-unixfs v1.2.0

License: MIT
Signed-off-by: hannahhoward <hannah@hannahhoward.net>
2018-11-02 13:16:56 -07:00
Steven Allen
bf69017e25 metrics: we're now recording latency seconds, not microseconds
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-31 05:12:35 -07:00
Steven Allen
4674f19913 fix prometheus concurrent map write bug
fixes #4132

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-30 15:38:49 -07:00
Steven Allen
d98351720a fix expected error message in gateway test
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-30 10:36:16 -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
Dominic Della Valle
38cae95f30 gx: update go-ipfs-cmds to 2.0.5
License: MIT
Signed-off-by: Dominic Della Valle <ddvpublic@gmail.com>
2018-10-26 19:50:32 -04:00
Steven Allen
37f0fd92c7 gx: update go-ipfs-cmds
(no code changes)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-26 09:26:53 -07:00
Steven Allen
2b0bc7e084 configurable pubsub singing
I'd like to sneak this into the release so we can turn on strict verification
ASAP.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-26 04:00:44 -07: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
Steven Allen
caffa59183
Merge pull request #5627 from ipfs/feat/update-webui-2.1.0
update webui to 2.1.0
2018-10-23 00:57:09 +01:00
Łukasz Magiera
519c67a00c coreapi unixfs: gw handler cleanup
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-23 01:14:51 +02:00
Łukasz Magiera
faf5230e69 coreapi unixfs: Return seeker from get
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-22 23:38:47 +02:00
Łukasz Magiera
7915d26090 coreapi unixfs: fix Get seeking in gateway
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-22 23:37:45 +02:00
Łukasz Magiera
34b1313d82 coreapi unixfs: remove Cat, use sessions
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-22 23:37:45 +02:00
Steven Allen
c430e53a17 update webui to 2.1.0
This brings us on-par with js-ipfs.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-22 09:22:21 -07:00
Steven Allen
def2147c48 update the webui
Because the current one is *so* broken it's not worth waiting for an actual
release.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-18 19:05:11 +01:00
Łukasz Magiera
16e6343abe Merge remote-tracking branch 'origin/master' into feat/namestream
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-18 12:26:20 +02:00
Łukasz Magiera
59e5a9c652 gx: update to use extracted go-ipfs-files
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-18 10:16: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
Steven Allen
0fb2020574
Merge pull request #5564 from ipfs/fix/5369
don't use the domain name as a filename in /ipns/a.com
2018-10-05 11:24:51 -07:00
Steven Allen
f498459ad2 gateway_test: comment on platform dependence
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-05 11:24:36 -07:00
Łukasz Magiera
676403be19 Merge remote-tracking branch 'origin/master' into feat/coreapi/unixfs
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-05 11:45:37 +02:00
Steven Allen
afd81fd5dd gateway test: document why .man
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-04 21:42:07 -07:00
Steven Allen
47e7f693eb don't use the domain name as a filename in /ipns/a.com
fixes #5369

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-10-04 17:12:08 -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
fc2575740e gx: update go-ipfs-config, iptb
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2018-10-04 20:02:42 -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
e6bc923425 coreapi unixfs: multi file support in unixfs coreapi
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-03 15:15:28 +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
Jakub Sztandera
50fffa2973 pprof: create HTTP endpoint for setting MutexProfileFraction
Allows to dynamically change the MutexProfileFraction to enable and
disable mutex profiling. It should be very useful for detecting
deadlocks, lock contention and general concurrency problems.

How to use:
To enable run: curl -X POST -v 'localhost:5001/debug/pprof-mutex/?fraction=10
To disable: curl -X POST -v 'localhost:5001/debug/pprof-mutex/?fraction=0'

Fraction defines which fraction of events will be profiled. Higher it is
the lower performance impact but less reliable the result.

To fetch the result use:
go tool pprof $PATH_TO_IPFS_BIN http://localhost:5001/debug/pprof/mutex

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2018-09-26 21:24:49 +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
b7484c1bca gx: update go-ipfs-cmds to the final release
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-19 14:36:08 -07:00
keks
f4b32e36f4 update cmds to 2.0.0-rc1
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
keks
ef21c3bfab update go-ipfs-cmds to 2.0.0-beta2
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
keks
908ffddc1b big squash commit
excerpt of commit messages:
- update postrun functions in core/commands
- sharness: allow setting -i with TEST_IMMEDIATE=1
- cmds Run func returns error now
- gx update cmdkit to 1.1.2 and cmds to 2.0.0-beta1

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-09-19 14:35:54 -07:00
Lars Gierth
9b374c0041 api: fix outdated HTTPHeaders config documentation
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2018-09-13 23:00:01 +02:00
Steven Allen
cf963724a7
Merge pull request #5433 from ipfs/test/gateway-options
improve gateway options test
2018-09-12 22:04:03 +00: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
eabd6a0ad4 improve gateway options test
Unfortunately, this doesn't really test the *actual* gateway config as it uses
the options specified by the test. However, it's a step in the right direction.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-06 11:00:17 -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
Marten Seemann
1c57b1d287 update go-ipfs-config to version 0.2.5
License: MIT
Signed-off-by: Marten Seemann <martenseemann@gmail.com>
2018-08-29 08:58:40 +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
fcc96a3ae7
Merge pull request #4177 from Voker57/feat/gw-filename-option
Set filename in Content-Disposition if filename=x is passed in URI query
2018-08-21 16:49:53 +00:00
vyzo
e002de9571 update go-ipfs-config
License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>
2018-08-15 10:02:32 -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
f0769366f1 update cmdkit to fix the progress bar
The progressbar should now correctly calculate the size of a directory (by
ignoring the directory sizes).

fixes #5288

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-10 17:21:28 -07:00
Łukasz Magiera
838a30cd22 gx: Update config
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-09 12:39:55 +02:00
Łukasz Magiera
ffc74391d5 move version.go to top level package
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-09 11:01:10 +02:00
Łukasz Magiera
d52091fa55 Update iptb
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-09 10:57:31 +02:00
Łukasz Magiera
b65cf84a34 repo: move version.go back here
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-09 10:51:15 +02:00
Łukasz Magiera
6fcd205e20 Update imports to point to go-ipfs-config
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-08-09 10:37:07 +02: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
Steven Allen
00158c4b92 wait for all connections to close before exiting on shutdown.
Using httpServer.Shutdown will:

1. Close the listener (preventing new connections).
2. Close each connection as outstanding requests finish.

This prevent us from shutting down before outstanding requests get a chance to
respond.

fixes #4055

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-07-31 13:07:19 -07:00
Jeromy
b96a7a0579 extract go-unixfs (importers and unixfs)
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-07-30 14:54:26 -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
Jeromy
28fdee7fce Extract dagservice, move dagutils to top level
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-07-28 14:22:20 -07:00
Jeromy
e78911ce94 move dagutils package to top level in preparation for merkledag extraction
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-07-28 00:50:17 -07:00
Steven Allen
53235242a1 gx update deps
Updates:

* go-net
* go-text
* dns
* prometheus
* protobuf (golang, not gogo)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-07-23 11:49:43 -07:00
Łukasz Magiera
7adf1cb40d coreapi: move path utils to interface
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-07-17 08:44:54 +02:00
Łukasz Magiera
0adb69a773 coreapi: fix TestGatewayGet after rebase
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-07-17 08:43:48 +02:00
Łukasz Magiera
f5f44ab246 coreapi: remove ctx from ParsePath, split ParseCid
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-07-17 08:43:48 +02:00
Łukasz Magiera
338e90e9c8 coreapi: expand public path api
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-07-17 08:40:48 +02:00
Steven Allen
9a9979b193 update go-cid
alternative to #5243 that updates go-cid and all packages that depend on it

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-07-16 15:16:49 -07:00
Steven Allen
6a81c72cfb correctly handle multi-hop dnslink resolution
Namesys returns `ErrResolveRecursion` when it stops recursing due to a depth
limit. It doesn't return success.

Alternative to #5199.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-07-07 00:18:30 -07:00
Steven Allen
3eba14aa24 gx update
Updates:

* go-kad-dht: Query performance improvements, DHT client fixes, validates
  records on *local* put.
* go-libp2p-swarm/go-libp2p-transport: Timeout improvements.
* go-multiaddr-net: Exposes useful Conn methods (CloseWrite, CloseRead, etc.)
* go-log: fixes possible panic when enabling/disabling events.
* go-multiaddr: fixes possible panic when stringifying malformed multiaddrs,
  adds support for consuming /p2p/ multiaddrs.

fixes #5113
unblocks #4895

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-26 17:11:33 -07:00
Whyrusleeping
cdc349790c
Merge pull request #5072 from Bren2010/review/core
Fix panic. Don't handle errors with fallthrough.
2018-06-13 15:30:58 +08:00
Steven Allen
85acad9a01 gx update go-log, sys, go-crypto
* go-log
* sys
* go-crypto

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-08 22:36:24 -07:00
Steven Allen
39f927aa04 update gx imports
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-05 23:55:08 -07:00
Steven Allen
b84a71de8c transport refactor update
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-05 23:51:06 -07:00
Steven Allen
c9c9986c9e update multiplexers
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-04 10:05:20 -07:00
Brendan McMillion
8387c394e9 Fix panic. Don't handle errors with fallthrough.
License: MIT
Signed-off-by: Brendan McMillion <brendan@cloudflare.com>
2018-06-03 13:58:58 -07:00
Whyrusleeping
f7a980926b
Merge pull request #4977 from ipfs/fix/4973-1
only resolve dnslinks once in the gateway
2018-06-03 17:20:45 +08:00
Steven Allen
e9928f7691 add test for 4973
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-02 20:43:00 -07:00
Steven Allen
31bb974bb1 only resolve dnslinks once in the gateway
If the domain has a DNS-Link, we want to use it even if it points to, e.g., an
IPNS address that doesn't resolve.

fixes #4973

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-06-02 20:43:00 -07:00
Steven Allen
1e9e2f453c update deps
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-05-31 17:59:17 -07:00
Dominic Della Valle
b675ade0d8 gx: update go-ipfs-cmds
License: MIT
Signed-off-by: Dominic Della Valle <ddvpublic@gmail.com>
2018-04-24 15:01:16 -04:00
Hector Sanjuan
30cf14ef9e Replace the rest of thirdparty/datastore2 with go-datastore
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-03-26 22:12:14 +02:00
Whyrusleeping
41d82eeeb5
Merge pull request #4733 from dirkmc/feat/namesys-value-count
Add options for record count and timeout for resolving DHT paths
2018-03-23 09:59:26 -07:00
Steven Allen
7824c2cf4e check arguments after handling help
otherwise, we block on required arguments from stdin before processing the help
flag.

fixes #4837

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-03-19 15:58:34 -07:00
Steven Allen
45fd7d213f pre-populate required arguments from request body
This way, we can always assume that indexing a required argument works.

Also:

* test that the command tree doesn't have any obvious bugs (duplicate options,
  arguments in the wrong order, etc).
* simplify the usage ParseBodyArgs.
* remove unnecessary check in the get command.

fixes #4823

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-03-18 13:04:25 -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
5096025df2 Fix gateway test
License: MIT
Signed-off-by: Dirk McCormick <dirkmdev@gmail.com>
2018-02-25 20:46:55 -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
Steven Allen
45756b6d64 fix a bunch of go vet errors
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-02-20 17:37:35 -08:00
Steven Allen
2c68c15407 update go-ipfs-cmds
* May fix #4670
* Fixes #4683

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-02-20 16:43:00 -08:00
Hector Sanjuan
93d1a695d4 Feat: Separate "path" from "path/resolver"
Currently the "path" module does two very different things:

* Defines how ipfs paths look like and provides tools to parse/split etc.
* Provides a resolver to resolve paths.

This moves the resolver stuff to `path/resolver` and leaves the
path utilities in `path`.

The result is that now the IPFS `path` package just defines what a path
looks like and becomes a module that can be exported/re-used without problems.
Currently there are circular dependency cycles (resolve_test -> merkledag/utils,
merkledag->path), which the prevent the export of merkledag itself.

License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-02-16 00:20:30 +01:00
Hector Sanjuan
381977476f Extract: chunker: rename "chunk" to "chunker" as it is more consistent
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-02-08 12:49:39 +01:00
Hector Sanjuan
76d228cf75 Extract chunker: Use last gx'ed go-ipfs-chunker
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-02-08 12:43:29 +01:00
Hector Sanjuan
1811425aab go-ipfs-chunker: Use the stable gx'ed release
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-02-08 12:34:51 +01:00
Hector Sanjuan
c613fbec38 WIP: Extract: importers/chunk module as go-ipfs-chunker
License: MIT
Signed-off-by: Hector Sanjuan <hector@protocol.ai>
2018-02-08 12:34:15 +01:00
Steven Allen
b2cbfd299c gx: update go-log
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-31 21:54:22 -08:00
Steven Allen
f9d935b984 rename import of go-ipld-format from node/format to ipld
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-29 11:55:34 -08:00
Steven Allen
5acbecc26b update go-lib2p-loggables
fixes a UUID bug I introduced (UUIDs were always an error value)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-27 18:05:30 -08:00
Steven Allen
d154b4a990 merkledag: switch to new dag interface
Also:

* Update the blockstore/blockservice methods to match.
* Construct a new temporary offline dag instead of having a
  GetOfflineLinkService method.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-25 15:13:19 -08:00
Steven Allen
8899e98670 fix tests that use invalid peer IDs
Our code now better validates peer IDs.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-25 14:32:40 -08:00
Steven Allen
fe8846fcd7 gx: mass update
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-24 15:58:44 -08:00
Steven Allen
a784589d2a don't set origins twice
...

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-23 23:36:51 -08:00
Steven Allen
20a044e383 fix a race and a potential race in http options
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-23 23:36:47 -08:00
Steven Allen
418bb65d9d fix doc comment on CommandsROOption
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-23 20:27:15 -08:00
Steven Allen
31bb782e77 fix code-climate issues
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-23 20:04:45 -08:00
Jeromy
176d15656d update go-ipfs-cmds, fix context closing issue
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-01-21 11:11:47 -08:00
Steven Allen
0bdc2574ce update go-ipfs-cmds
Fix a nil pointer exception when no timeout is set and an HTTP request fails.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-21 11:11:47 -08:00
Steven Allen
652ac620b1 golint: documentation fixes
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-21 11:11:47 -08:00
Steven Allen
9080a588d8 golint: fix variable name
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-01-21 11:11:47 -08:00
Jeromy
bf804cca66 update to final cmds1.0
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-01-21 11:11:47 -08:00
Jeromy
267c19ab9d some fixes for latest from go-ipfs-cmds
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2018-01-21 11:11:47 -08:00
keks
d93c0b6a4b Revert "use *oldcmds.Context consistently instead of non-ptr"
This reverts commit 852adb1c4a42a254286ac26b3bae7ea3a7bb69df.

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
aec44bc430 use *oldcmds.Context consistently instead of non-ptr
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
091eeee243 update go-ipfs-cmds
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
1cc7e2a28e update go-ipfs-cmds
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
7b1963906b update go-ipfs-cmds yet again
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
b23c3295e6 update go-ipfs-cmds
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
94266bf2e4 update go-ipfs-cmds
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
52bc298230 fix ServerNameOption
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
8294f0a345 remove test for deleted fuction
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
fbc36b8962 update dependencies and update TODO
broken sharness test t0110 has been fixed in master

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
7d57def06e remove dead code, update TODO
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
e8ad094448 add TODO
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
84101c8a2a go test passes, sharness fails
pass API path to cmds, fix options in add.

License: MIT
Signed-off-by: keks <keks@cryptoscope.com>
2018-01-21 11:11:47 -08:00
keks
c1d6230bc0 check api version in corehttp
- add comments, trim api path prefix
- corehttp: add option to set HTTP header "Server"
- daemon: use new corehttp options

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
keks
bd9576fa57 start adopting cmds3.0 - lots of errors!
- move go-ipfs-cmds/legacy to go-ipfs/commands/legacy
- update cmds,cmdkit; go test ./... ok

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2018-01-21 11:11:47 -08:00
Iaroslav Gridin
7b34b7f533
Set filename in Content-Disposition if filename=x is passed in URI query
License: MIT
Signed-off-by: Iaroslav Gridin <voker57@gmail.com>
2018-01-19 21:57:26 +02:00
Steven Allen
dfe7ef4fcf gx: update go-multihash
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-12-14 13:09:51 -08:00
Lars Gierth
55692ac9b6 gateway: degrade most logging to debug level
License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
2017-12-07 00:21:57 +01:00
Whyrusleeping
a234c56bec
Merge pull request #3983 from ivan386/patch-3
check strong and weak ETag validator
2017-12-04 20:36:43 +01:00
Henrique Dias
4df6385f55 Add trailing comma
License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
2017-12-02 12:05:55 +00:00
Henrique Dias
351185382d Update WebUI version
License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
2017-12-02 12:03:57 +00:00
Whyrusleeping
66bde41384
Merge pull request #4047 from vyzo/ipns-pubsub
namesys/pubsub: pubsub Publisher and Resolver
2017-11-30 13:41:38 +01:00
keks
8e5fbe9aa1 update go-ipfs-cmds to 0.4.11
to include @frist's uuid logging

License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2017-11-22 19:06:00 +01:00
vyzo
e45df729be namesys/pubsub: publisher and resolver
Commits:
namesys: pubsub Publisher and Resolver
namesys/pubsub: pacify code climate.
namesys/pubsub: timeout for rendezvous
namesys/pubsub: filter self in bootstrap connections
namesys/pubsub: Publish to the correct topic

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: unit  test

Commits:
namesys/pubsub: test
namesys/pubsub_test: pacify code climate
namesys/pubsub: update test to use extant mock routing

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: integrate namesys pubsub

namesys: integrate pubsub resolvers
namesys/pubsub_test: tweak delays
- trying to make travis happy.
namesys/pubsub: fix duplicate bootstraps
- subscription key is topic, not ipnskey.
namesys/pubsub: no warning needed on cancellation
namesys/pubsub: warning for receive errors
- and more informative error messages at that.
namesys/pubsub_test: smaller test
- make it work with seemingly low fdlimits in travis/macosx.
  also, more informative test failures.
namesys/pubsub: add delay to let pubsub perform handshake
namesys/pubsub: update gx imports
namesys/pubsub_test: preconnect publisher, reduce delays
- preconnects the publisher to the receivers in order to avoid bootstrap
  flakiness with connectivity problems in travis.
  reduces sleeps to 1s for flood propagation (3s seems excessive with 5 hosts).
namesys/pubsub: drop named return values in resolveOnce
- per review comment.
namesys/pubsub: check errors
namesys/pubsub: store bytes in resolver datastore
namesys/pubsub: resolver Cancel
- for canceling subscriptions, pre whyrusleeping's request.
namesys/pubsub: fix resolution without /ipns prefix
- also improve the logging a bit.
namesys/pubsub: don't resolve own keys through pubsub
namesys/pubsub: signal ErrResolveFailed on resolution failure
namesys/pubsub: use sync datastore, resolver lock only for subs
namesys/pubsub_test: coverage for Cancel

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: parallelize dht and pubsub publishing

Commits:
namesys/pubsub: code cosmetics
namesys: parallelize publishing with dht and pubsub
namesys/pubsub: periodically reprovide topic rendezvous
namesys/pubsub: cancelation for rendezvous goroutine
namesys/pubsub: log ipns record seqno on publish

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: error checking

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: --enable-namesys-pubsub option and management

Commits:
package.json: update go-libp2p-blankhost
namesys: fix stale package imports
update go-testutil
namesys/pubsub: reduce bootstrap provide period to 8hr
namesys/pubsub: try to extract the key from id first
option to enable ipns pubsub: --enable-namesys-pubsub
ipfs name pubsub management subcommands
corehttp/gateway_test: mockNamesys needs to implement GetResolver
pacify code climate

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: pubsub sharness test

test/sharness: test for ipns pubsub
namesys/pubsub: return boolean indicator on Cancel
package.json: remove duplicate entry for go-testutil
update gx deps, testutil to 1.1.12
fix jenkins failure: use tabs in t0183-namesys-pubsub
t0183: use 4 spaces for tabification

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: update for new command interface

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>

namesys/pubsub: fix sharness test for broken MacOS echo

echo -n "" should print -n, but hey it's a mac.

License: MIT
Signed-off-by: vyzo <vyzo@hackzen.org>
2017-11-21 14:55:54 -08:00
Steven Allen
76e1da02a8 gx: massive update
Note: This commit is technically broken. However, I need to make a bunch of
cmds changes to make this work and I'd rather not bundle both changes into a
single commit.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-11-20 22:20:27 -08:00
keks
d95a87cf57 update to go-ipfs-cmds 0.4.9
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2017-11-17 15:22:42 +01:00
keks
0d9d21875c compatible to js-ipfs-api
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2017-11-17 15:22:42 +01:00
Jan Winkelmann
f287524949 cmd: use go-ipfs-cmds
License: MIT
Signed-off-by: keks <keks@cryptoscope.co>
2017-11-17 15:22:41 +01:00
Jeromy Johnson
005d243cd3 Merge pull request #4320 from ipfs/fix/gateway-seeker
gateway: fix seeker can't seek on specific files
2017-10-20 13:15:32 +01:00
Łukasz Magiera
cbccd847ab gateway: apply review to serveFile
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-10-20 13:36:44 +02:00
Łukasz Magiera
913f9641e4 merkledag: keep key order in dedupeKeys
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-10-20 01:26:27 +02:00
Steven Allen
2f9e9ec571 gx update go-peerstream, go-libp2p-floodsub
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-10-19 08:20:35 -07:00
Łukasz Magiera
3fbb77153b gateway: custom seeker for files
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-10-18 22:25:36 +02:00
Łukasz Magiera
e71dce5dfb gateway: fix seeker can't seek on specific files
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-10-18 20:10:22 +02:00
Jeromy
94ec788555 update deps for new connmgr code
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2017-10-14 05:38:52 -07:00
Steven Allen
3f6df3a5f4 update yamux
We need to cancel out all readers/writers on stream reset.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-09-15 18:56:44 -07:00
Steven Allen
8deaaa8d8c gx: update go-stream-muxer
Introduces a new Reset method on streams that kills both sides of the
connection. Close now officially just closes the write side (what it did all
along...)

* Also pull through shiny new go-multiplexer fixes.
* Also pull in go-reuseport update.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-09-14 12:06:44 -07:00
Jeromy
0eba4f3138 gx: update go-ws-transport
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-09-05 16:18:19 -07:00
Steven Allen
70d6629940 gx: update go-cid, go-multibase, base32
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-09-01 17:46:49 -07:00
Łukasz Magiera
e34a5e9c0d gx: update go-reuseport
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-08-23 16:32:32 +02:00
Steven Allen
19c3bd82a3 extract update go-testutil
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-08-16 17:23:01 -07:00
Jeromy Johnson
3b60666d25 Merge pull request #4073 from icidasset/master
Expose Content-Range header
2017-08-05 12:24:55 -07:00
Steven Allen
38a9be5a0a gx: update go-libp2p-swarm
fixes #4102 (fixed in go-libp2p-swarm)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-07-31 14:04:40 -07:00
Steven Allen
28be1d4c58 gx: update deps
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-07-27 18:48:16 -07:00
Steven Vandevelde
20ad44af1c core/http/gateway: Expose Content-Range header
The `Content-Range` header is necessary for extracting (only)
the metadata of audio files.

License: MIT
Signed-off-by: Steven Vandevelde <icid.asset@gmail.com>
2017-07-19 13:28:33 +02:00
Jeromy
cccc6a94a3 update go-multihash and bubble up changes
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2017-07-11 19:27:43 -07:00
ivan386
0eafa5e25f Merge branch 'master' of https://github.com/ipfs/go-ipfs into patch-3 2017-07-06 19:16:41 +03:00
Jeromy
bda8c3a687 implement bitswap sessions
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2017-07-05 10:47:22 -07:00
Łukasz Magiera
8ab93aaeb2 Update go-datastore to 1.2.2, go-cid to 0.7.16
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-07-04 20:18:57 +02:00
Steven Allen
520938a9ec gx import/update libp2p/go-libp2p-routing
For some reason, this was referenced but wasn't listed in packages.json.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-06-29 22:12:14 +02:00
Steven Allen
13636bef50 blocks: gx import go-block-format
And updated related dependencies.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2017-06-29 22:12:14 +02:00