Commit Graph

780 Commits

Author SHA1 Message Date
Gus Eggert
0e55ca9377 feat: add experimental optimistic provide
This adds the ability to enable "optimistic provide" to the default
DHT client, which enables faster provides and reprovides.

For more information about optimistic provide, see:

https://protocollabs.notion.site/Optimistic-Provide-2c79745820fa45649d48de038516b814

Note that this feature only works when using non-custom router
types. This does not include the ability to enable optimistic provide
on custom routers for now, to minimize the footprint of this
experimental feature. We intend on continuing to test this and improve
the UX, which may or may not involve adding configuration for it to
custom routers. We also plan on refactoring/redesigning custom routers
more broadly so I don't want this to add more effort for maintainers
and confusion for users.
2023-04-06 16:49:46 -04:00
Henrique Dias
c6a59c9cc1
feat(tracing): use OTEL_PROPAGATORS as per OTel spec (#9801) 2023-04-06 16:36:15 +02:00
Henrique Dias
1958510b3e
docs: fix jaeger command (#9797) 2023-04-06 11:30:20 +02:00
Piotr Galar
f18a69eced
Merge Release: v0.19.1 (#9794)
* chore: update version

* chore: update go-libp2p to v0.26.4

* fix: remove timeout on default DHT operations (#9783)

* fix: remove timeout on default DHT operations

This removes the timeout by default for DHT operations. In particular
this causes issues with ProvideMany requests which can take an
indeterminate amount of time, but really these should just respect
context timeouts by default. Users can still specify timeouts here if
they want, but by default they will be set to "0" which means "no
timeout".

This is unlikely to break existing users of custom routing, because
there was previously no utility in configuring a router with timeout=0
because that would cause the router to immediately fail, so it is
unlikely (and incorrect) if anybody was using timeout=0.

* fix: remove 5m timeout on ProvideManyRouter

For context see
5fda291b66

---------

Co-authored-by: Marcin Rataj <lidel@lidel.org>

* chore: bump go-blockservice to v0.5.1

* chore: update version

* chore: update changelog for v0.19

---------

Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-04-05 22:42:09 +02:00
Gus Eggert
7cff6b9359
chore: upgrade boxo to v0.8.0 (#9793) 2023-04-05 16:48:39 +00:00
galargh
b34c7a367e chore: update changelog for v0.19 2023-04-05 15:52:04 +00:00
Piotr Galar
0ec22f4add
chore: update deps after v0.19.0 release (#9744)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-04-05 12:02:20 +00:00
Jorropo
486c583293 chore: bump go-blockservice to v0.5.1 2023-04-04 18:57:54 +02:00
Gus Eggert
e80dadd1a4 fix: remove timeout on default DHT operations (#9783)
* fix: remove timeout on default DHT operations

This removes the timeout by default for DHT operations. In particular
this causes issues with ProvideMany requests which can take an
indeterminate amount of time, but really these should just respect
context timeouts by default. Users can still specify timeouts here if
they want, but by default they will be set to "0" which means "no
timeout".

This is unlikely to break existing users of custom routing, because
there was previously no utility in configuring a router with timeout=0
because that would cause the router to immediately fail, so it is
unlikely (and incorrect) if anybody was using timeout=0.

* fix: remove 5m timeout on ProvideManyRouter

For context see
5fda291b66

---------

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-04-04 10:23:55 +02:00
Jorropo
0fad74c619 chore: update go-libp2p to v0.26.4 2023-04-04 10:22:05 +02:00
Gus Eggert
68ee5e61a8
feat: add changelog entry for router timeouts for v0.19.1 (#9784)
* feat: add changelog entry for router timeouts for v0.19.1

* Apply suggestions from code review

Co-authored-by: Steve Loeppky <biglep@protocol.ai>

---------

Co-authored-by: Steve Loeppky <biglep@protocol.ai>
2023-04-03 11:21:53 -04:00
Marcin Rataj
d1713ca28e
feat(gw): new metrics and HTTP range support (#9786)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-04-03 08:17:07 +00:00
Gus Eggert
a09c8df24d
fix: remove timeout on default DHT operations (#9783)
* fix: remove timeout on default DHT operations

This removes the timeout by default for DHT operations. In particular
this causes issues with ProvideMany requests which can take an
indeterminate amount of time, but really these should just respect
context timeouts by default. Users can still specify timeouts here if
they want, but by default they will be set to "0" which means "no
timeout".

This is unlikely to break existing users of custom routing, because
there was previously no utility in configuring a router with timeout=0
because that would cause the router to immediately fail, so it is
unlikely (and incorrect) if anybody was using timeout=0.

* fix: remove 5m timeout on ProvideManyRouter

For context see
5fda291b66

---------

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-03-30 16:08:43 -04:00
Adin Schmahmann
353dd49be2
refactor: switch gateway code to new API from go-libipfs (#9681)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-03-30 13:20:37 +00:00
Jorropo
3ab1086f71 chore: migrate go-libipfs to boxo
Resolves #9677, #9676, #9675, #9736
2023-03-28 22:05:25 -04:00
Jorropo
405b1d2dcd chore: update go-libp2p to v0.26.4 2023-03-28 00:49:39 +02:00
Henrique Dias
88d431c812
feat: remove writable gateway (#9743)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-03-27 15:19:55 +02:00
Piotr Galar
1d7976667e
Merge branch 'master' into process-improvement-v0.18.0 2023-03-21 10:27:25 +01:00
Gus Eggert
e0b08ed783
docs: use fx.Decorate instead of fx.Replace in examples (#9725)
In practice there are cases when fx.Replace doesn't work as expected,
so this updates the documentation to recommend using fx.Decorate
instead which is a bit easier to use.
2023-03-20 17:27:45 -04:00
galargh
1f36e3dbe6 chore: create next changelog 2023-03-20 16:35:00 +00:00
Piotr Galar
eb7d6f98df
Merge branch 'master' into merge-release-v0.19.0 2023-03-20 16:48:58 +01:00
Henrique Dias
b975593920
feat(gateway): invalid CID returns 400 Bad Request (#9726) 2023-03-20 14:14:38 +01:00
galargh
13865920d8 docs: update changelog 2023-03-20 12:33:11 +01:00
Jorropo
c9fc10dafc fix: remove outdated changelog part 2023-03-20 12:23:16 +01:00
Piotr Galar
754264fc08 Merge pull request #9707 from ipfs/changelog-0.19
docs: 0.19 changelog
2023-03-20 11:45:57 +01:00
Piotr Galar
7ea6e321fe chore: update go-libp2p to v0.26.3 (#9737) 2023-03-20 10:06:04 +01:00
Henrique Dias
3c35a0cdea chore: bump go-libipfs@v0.6.2 2023-03-20 10:05:29 +01:00
Jorropo
cc5e1325b4 chore: deprecate the pubsub api
Fixes #9717
2023-03-20 10:04:53 +01:00
Gus Eggert
2510f06364 feat: add "autoclient" routing type
This routing type is the same as "auto" but it creates the DHT in
"client" mode and hence does not start a DHT server.
2023-03-20 10:02:06 +01:00
Jorropo
d339059a7f chore: bump go-libipfs v0.6.1
This does nothing, just move from an untagged commit to a tagged commit but contain the same things.
2023-03-20 10:01:45 +01:00
Piotr Galar
ff019366f5 Merge pull request #9699 from ipfs/early-testers
docs: add bifrost to early testers
2023-03-20 10:01:17 +01:00
Piotr Galar
3382058c5f
Merge branch 'master' into changelog-0.19 2023-03-20 09:51:00 +01:00
Piotr Galar
715019440f
chore: update go-libp2p to v0.26.3 (#9737) 2023-03-20 09:47:59 +01:00
Henrique Dias
51eabd46da chore: bump go-libipfs@v0.6.2 2023-03-16 14:12:36 -04:00
Jorropo
1f5763f787 chore: deprecate the pubsub api
Fixes #9717
2023-03-15 04:42:02 +01:00
Marcin Rataj
a4052c645b
chore: fix toc in changelog for 0.18 2023-03-10 15:30:18 +01:00
Gus Eggert
0d94bac30c feat: add "autoclient" routing type
This routing type is the same as "auto" but it creates the DHT in
"client" mode and hence does not start a DHT server.
2023-03-09 08:18:14 -05:00
Marcin Rataj
fb663c6bb4
docs: add IPIP-351 to 0.19 changelog 2023-03-09 00:24:46 +01:00
Jorropo
f509e24984 docs: add PubSub to changelog 2023-03-08 17:59:42 +01:00
Jorropo
40d7f2fecc chore: bump go-libipfs v0.6.1
This does nothing, just move from an untagged commit to a tagged commit but contain the same things.
2023-03-08 12:00:58 +01:00
galargh
30fdc9c1e8 feat: restrict updating kubo in ipfs-desktop to final releases only 2023-03-06 20:28:53 +01:00
galargh
9b7a31d288 refactor: remove unnecessary tasks in RELEASE_ISSUE_TEMPLATE.md 2023-03-06 20:28:53 +01:00
galargh
a52625f181 chore: update release issue template to use lowercase for rc 2023-03-06 20:28:53 +01:00
Piotr Galar
4400db6ce4
docs: add bifrost to early testers 2023-03-06 19:48:39 +01:00
Piotr Galar
0ee879ec69
docs: sort early testers list alphabetically 2023-03-06 19:45:23 +01:00
omahs
698166bf2a
docs: fix typos 2023-03-06 09:42:54 -05:00
Jorropo
fea25f7ab1 chore: update golang.org/x/net to v0.7.0
Include fix for https://pkg.go.dev/vuln/GO-2023-1571 (this impact us in the DOH handler).
2023-03-03 12:54:20 +01:00
Jorropo
23379d8d60 chore: update go-unixfs v0.4.4
Include missing error handling.
2023-03-03 12:54:20 +01:00
Steve Loeppky
f84ad6d627 Doc updates/additions 2023-03-03 12:39:25 +01:00
Marten Seemann
68f4dd4427 chore: update go-libp2p to v0.26.2 2023-03-02 08:48:23 +01:00
Marten Seemann
56b9962103 chore: update go-libp2p to v0.26.1 2023-02-28 02:48:17 +01:00
Henrique Dias
1794649bf2
feat(gateway): error handling improvements (500, 502, 504) (#9660)
* fix(gateway): return 500 for all /ip[nf]s/id failures
* fix: replace deprecated structs
* chore: bump go-libipfs to version from main
2023-02-28 02:21:50 +01:00
Gabe
e3b17a4fe6
docs: be clear about swarm.addrfilters (#9661) 2023-02-27 15:43:20 +01:00
Piotr Galar
0055f5b9bd
Update docs/RELEASE_ISSUE_TEMPLATE.md 2023-02-27 10:08:51 +01:00
Piotr Galar
12da573e9e
Merge branch 'master' into process-improvement-v0.18.0 2023-02-27 10:07:42 +01:00
Henrique Dias
4283b9d98f
chore: bump go-libp2p-kad-dht to v0.21.1 (#9663) 2023-02-24 11:49:31 +01:00
Marten Seemann
a3366c522a
chore: update go-libp2p to v0.26 (#9656)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-02-24 10:34:10 +01:00
Jorropo
f73cd19220
chore: bump go-unixfs to v0.4.3 (#9643)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-02-23 09:17:01 +01:00
Michael Muré
86da181f7f
feat(pinning): connect some missing go context (#9557)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-02-22 16:56:59 +01:00
Henrique Dias
4db6ae1772
fix(gateway): return HTTP 500 on ErrResolveFailed (#9589) 2023-02-22 03:22:03 +01:00
ElPaisano
714a968faa
docs: bulk spelling edits (#9544)
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-02-20 23:37:10 +01:00
Jorropo
19feb15833 chore: bump go-libipfs v0.6.0 2023-02-17 22:23:47 +01:00
Steve Loeppky
05afb879f3
docs: "remote" errors from resource manager (#9653)
Being more clear that the "remote" string means its from a remote peer.
This came up in:
https://github.com/ipfs/kubo/issues/9432#issuecomment-1402022085
https://github.com/ipfs/kubo/issues/9432#issuecomment-1402276883
https://github.com/ipfs/kubo/issues/9432#issuecomment-1410444354
2023-02-16 22:17:18 +01:00
Jorropo
0ff406170d fix: update rcmgr for go-libp2p v0.25 2023-02-14 22:19:46 +01:00
Marcin Rataj
e59c605f2a
docs(0.18.1): guide users to clean up limits (#9644) 2023-02-13 15:20:59 +01:00
Jorropo
82ede56636 chore: bump go-libp2p-routing-helpers to v0.6.1
This include a fix where FindProvidersAsync with the parallel composer would not close the channel ASAP when the count was reached, this save finality time when count is reached.
2023-02-09 19:37:56 +01:00
Henrique Dias
af0fe194f5 chore: update iface with routing tests 2023-02-09 14:35:54 +01:00
galargh
3ff72a1b95 docs: add a step for verifying infra config 2023-02-08 15:11:31 +01:00
Henrique Dias
799e5ac0a5
chore: update go-libipfs for more gateway metrics (#9626) 2023-02-08 04:21:06 +01:00
Henrique Dias
b58356939e
refactor(gw): move Host (DNSLink and subdomain) handling to go-libipfs (#9624)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-02-07 03:44:24 +01:00
Henrique Dias
14649aa8ba
refactor: new go-libipfs/gateway API, deprecate Gateway.Writable (#9616) 2023-02-02 02:50:46 +01:00
galargh
01eaa11d27 docs: add kuboreleaser to the release issue template 2023-01-31 16:13:17 +01:00
Piotr Galar
96a0eb2899
Merge branch 'master' into process-improvement-v0.18.0 2023-01-31 16:09:47 +01:00
Piotr Galar
cf2f378b9d
Update docs/RELEASE_ISSUE_TEMPLATE.md 2023-01-31 16:08:16 +01:00
galargh
bcf446d1a1 chore: hide manual steps now that commands request them themselves 2023-01-31 14:32:54 +01:00
galargh
c155e40072 chore: create next changelog 2023-01-31 13:12:25 +00:00
Henrique Dias
8d3b3154c9
refactor: use gateway from go-libipfs (#9588) 2023-01-31 11:02:31 +01:00
galargh
c1e1d5e040 chore: update after v0.18.1 2023-01-31 10:30:26 +01:00
Piotr Galar
ac1cdf7ba1
Merge branch 'master' into merge-release-v0.18.1 2023-01-30 18:20:02 +01:00
galargh
505f072d28 docs: add full v0.18.1 changelog 2023-01-30 12:53:20 +01:00
Antonio Navarro Perez
9c1a803f19 Add overview section 2023-01-30 12:50:52 +01:00
Antonio Navarro Perez
bcac3f5677 Adjust inbound connection limits depending on memory. 2023-01-30 12:50:39 +01:00
Mohsin Zaidi
2c623b663e feat: Pubsub.SeenMessagesStrategy (#9543)
* feat: expire messages from the cache based on last seen time
* docs: Pubsub.SeenMessagesStrategy

Ref. https://github.com/libp2p/go-libp2p-pubsub/pull/513

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-30 12:48:25 +01:00
galargh
ed2b7eb488 chore: prepare branch 2023-01-30 12:48:02 +01:00
Antonio Navarro Perez
3fb644a5e6 Add overview section 2023-01-30 11:01:03 +01:00
Antonio Navarro Perez
633c497f63 Adjust inbound connection limits depending on memory. 2023-01-30 11:01:03 +01:00
Jorropo
b3c98bb085 chore: bump go-libipfs remove go-bitswap 2023-01-27 23:07:01 +01:00
Marcin Rataj
f2dab48e66 docs: DefaultResourceMgrMinInboundConns 2023-01-27 19:47:31 +01:00
Henrique Dias
a3c70a11e6
feat(gateway): IPNS record response format (IPIP-351) (#9399)
* feat(gateway): IPNS record response format
* docs(rpc): mark as experimental: routing provide, get, put

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-27 04:46:50 +01:00
Henrique Dias
94e7f79805
fix(ipns): honour --ttl flag in 'ipfs name publish' (#9471)
* fix: honour --ttl flag in 'ipfs name publish'
* docs(cli): ipfs name inspect --help

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-27 02:33:13 +01:00
Mohsin Zaidi
9652f24f6c
feat: Pubsub.SeenMessagesStrategy (#9543)
* feat: expire messages from the cache based on last seen time
* docs: Pubsub.SeenMessagesStrategy

Ref. https://github.com/libp2p/go-libp2p-pubsub/pull/513

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-27 00:24:35 +01:00
galargh
0ad00f62b2 chore: remove obsolete release issue template header 2023-01-26 17:35:42 +01:00
galargh
50bbaf99c1 feat: create dependency update PR during release 2023-01-26 17:30:14 +01:00
galargh
a567ac52ba chore: hide release instructions which can be skipped 2023-01-26 17:17:46 +01:00
Jorropo
f20c980f2d chore: bump go-libipfs to replace go-block-format
Includes changes from:
- https://github.com/ipfs/go-block-format/pull/37
- https://github.com/ipfs/go-libipfs/pull/58
2023-01-26 16:55:48 +01:00
galargh
e1d0e13fe9 chore: remove obsolete PATCH_RELEASE_TEMPLATE.md 2023-01-26 16:30:27 +01:00
galargh
a3f7e84d62 chore: label release checklist items 2023-01-26 16:29:43 +01:00
galargh
feea7d36f6 chore: reword release checklist 2023-01-26 13:15:08 +01:00
galargh
b0296bbea6 feat: structure release checklist around kuboreleaser commands 2023-01-26 11:55:50 +01:00
galargh
7edf86c3b3 docs: update changelog 2023-01-23 14:18:01 +01:00