Commit Graph

1126 Commits

Author SHA1 Message Date
Jorropo
30f5e54e19 chore: update dependencies ahead of 0.21 release 2023-06-08 14:02:26 +02:00
Jorropo
e7294cbdff feat: warn users who are falling behind reprovides
Fixes: #9704
Fixes: #9702
Fixes: #9703
Fixes: #9419
2023-06-08 10:05:30 +02:00
Adin Schmahmann
50feb752b9 chore: update boxo to version with fewer globals 2023-06-08 09:38:31 +02:00
Marco Munizaga
8390f8596f
docs: update QUIC as the most widely used transport by Kubo nodes (#9921)
* Update QUIC as the most widely used transport by Kubo nodes

* Update docs
2023-06-08 01:04:20 +02:00
Jorropo
50daf64be4 changelog/v0.21: add dag stat additions 2023-06-06 16:22:08 +02:00
Jorropo
9b63ab6da6 client/rpc: bring up to speed with streaming pins 2023-06-02 16:55:51 +02:00
Henrique Dias
eb265f7cd8
fix(gateway)!: no duplicate payload during subdomain redirects (#9913)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-06-02 08:14:19 +02:00
Henrique Dias
dfd244816a
feat(gateway): human error pages, dag-cbor/dag-json preview (#9904)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-05-31 23:43:11 +00:00
dependabot[bot]
5a993cf20d chore(deps): bump go.uber.org/dig from 1.16.1 to 1.17.0
Bumps [go.uber.org/dig](https://github.com/uber-go/dig) from 1.16.1 to 1.17.0.
- [Release notes](https://github.com/uber-go/dig/releases)
- [Changelog](https://github.com/uber-go/dig/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uber-go/dig/compare/v1.16.1...v1.17.0)

---
updated-dependencies:
- dependency-name: go.uber.org/dig
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-31 15:57:33 +02:00
Jorropo
12f343d837 client/rpc: rename package name to match rpc and edit migration story 2023-05-31 15:40:00 +02:00
Jorropo
86d8e75b7f client/rpc: migrate go-ipfs-http-client 2023-05-30 21:28:07 +02:00
Henrique Dias
c10b804449
feat: Gateway.DeserializedResponses config flag (#9789)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-05-30 00:59:34 +02:00
Marcin Rataj
38556b8d21
docs: Reprovider config (#9900)
This updates docs to match new values from https://github.com/ipfs/kubo/pull/9326
2023-05-29 16:17:11 +02:00
Henrique Dias
e3126eb3e0
chore: upgrade boxo and fix test function signature (#9896) 2023-05-25 15:36:33 +02:00
Lucas Molas
63561f3baf
feat(bootstrap): save connected peers as backup bootstrap peers (#8856)
* feat(bootstrap): save connected peers as backup temporary bootstrap ones
* fix: do not add duplicated oldSavedPeers, not using tags, reuse
randomizeList
* test: add regression test
* chore: add changelog

---------

Co-authored-by: Henrique Dias <hacdias@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-05-25 14:39:49 +02:00
Henrique Dias
13c379604f
fix(gateway): redirect /ipns/b58mh to /ipns/cidb36 (#9785) 2023-05-16 13:09:39 +02:00
Gus Eggert
4acadd49eb
docs: add Thunderdome docs for releases (#9872) 2023-05-14 20:22:35 -07:00
Laurent Senta
61f8c7301a
refactor: use reusable IPNS ValidateWithPeerID (#9867)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-05-10 11:49:31 +00:00
Henrique Dias
0e7331c952
feat: update boxo with routing streaming 2023-05-10 08:14:48 +00:00
Gus Eggert
eab0baad3b
docs: add "Customizing Kubo" doc (#9854)
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-05-10 08:59:13 +02:00
dependabot[bot]
7ec67fdc04 chore(deps): bump golang.org/x/crypto from 0.7.0 to 0.9.0
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.7.0 to 0.9.0.
- [Commits](https://github.com/golang/crypto/compare/v0.7.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-10 05:31:01 +02:00
Henrique Dias
851248aedc chore: create next changelog 2023-05-09 13:05:13 +00:00
Henrique Dias
d1e2067e03
Merge branch 'master' into merge-release-v0.20.0 2023-05-09 14:56:11 +02:00
Henrique Dias
3a6fa1e229 chore: update changelog for v0.20 2023-05-09 09:31:11 +00:00
Marten Seemann
34653542f6
chore: update go-libp2p to v0.27.3 (#9862) 2023-05-09 11:24:42 +02:00
Henrique Dias
8684f05ef3
fix: deadlock on retrieving WebTransport addresses (#9857)
Co-authored-by: Marco Polo <git@marcopolo.io>
2023-05-09 11:24:41 +02:00
Marcin Rataj
548d082db4
docs(config): remove mentions of relay v1 (#9860)
Context: https://github.com/ipfs/interop/pull/592
2023-05-09 11:24:39 +02:00
Henrique Dias
d2c578878f
docs: add changelog for v0.19.2 2023-05-09 11:18:59 +02:00
Marten Seemann
c39b8052ea
chore: update go-libp2p to v0.27.3 (#9862) 2023-05-09 10:59:05 +02:00
Henrique Dias
c178c51835
fix: deadlock on retrieving WebTransport addresses (#9857)
Co-authored-by: Marco Polo <git@marcopolo.io>
2023-05-08 16:11:03 +02:00
Marcin Rataj
196b5c16c0
docs(config): remove mentions of relay v1 (#9860)
Context: https://github.com/ipfs/interop/pull/592
2023-05-08 14:20:51 +02:00
Laurent Senta
a6f446a4ba
test: deterministic ipns fixtures during sharness gateway tests (#9667) 2023-05-03 15:01:13 +02:00
Henrique Dias
6fa79e3d3a
Merge branch 'master' into merge-release-v0.19.2 2023-05-03 12:57:21 +02:00
Henrique Dias
347ad061f4
docs: add changelog for v0.19.2 2023-05-03 09:00:41 +02:00
Henrique Dias
8418b083d8 chore: bump to boxo 0.8.1 (#9836) 2023-04-25 13:49:27 +02:00
Henrique Dias
7ea0b07038 docs: add ipfs pubsub deprecation reminder to changelog (#9827) 2023-04-25 13:49:27 +02:00
Marco Munizaga
4f438e6d4e deps: bump go-libp2p to v0.27.1 (#9816)
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
2023-04-25 13:49:27 +02:00
Steve Loeppky
b706d64487 docs: preparing 0.20 changelog for release (#9799)
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-04-25 13:49:27 +02:00
Henrique Dias
e4fa9cb7ac feat: boxo tracing and traceparent support (#9811)
https://www.w3.org/TR/trace-context/
https://github.com/ipfs/bifrost-gateway/issues/68
2023-04-25 13:49:27 +02:00
Henrique Dias
e4908a0163
chore: bump to boxo 0.8.1 (#9836) 2023-04-25 10:47:28 +02:00
Henrique Dias
366546aae2
docs: add ipfs pubsub deprecation reminder to changelog (#9827) 2023-04-25 09:55:40 +02:00
Marco Munizaga
78895a1184
deps: bump go-libp2p to v0.27.1 (#9816)
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
2023-04-14 09:09:51 +00:00
Steve Loeppky
0d38c369fd
docs: preparing 0.20 changelog for release (#9799)
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-04-13 13:59:08 +00:00
Henrique Dias
f7cab554f9
feat: boxo tracing and traceparent support (#9811)
https://www.w3.org/TR/trace-context/
https://github.com/ipfs/bifrost-gateway/issues/68
2023-04-11 23:51:02 +00:00
Marten Seemann
3c363eb658 update go-libp2p to v0.27.0 2023-04-06 23:15:33 +02:00
Dennis Trautwein
cb2e109e4d docs: add optimistic provide feature description 2023-04-06 16:49:46 -04:00
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
Steve Loeppky
0aa23b3ed8 fix: clarity: no user supplied rcmgr limits of 0 (#9563)
Co-authored-by: Antonio Navarro Perez <antnavper@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-23 12:05:24 +01:00
Henrique Dias
14703e19e3 fix(gateway): undesired conversions to dag-json and friends (#9566)
* fix(gateway): do not convert unixfs/raw into dag-* unless explicit
* fix(gateway): keep only dag-json|dag-cbor handling
* fix: allow requesting dag-json as application/json
- adds bunch of additional tests including JSON file on UnixFS
- fix: dag-json codec (0x0129) can be returned as plain json
- fix: json codec (0x0200) cna be retrurned as plain json
* fix: using ?format|Accept with CID w/ codec works
* docs(changelog): cbor and json on gateway

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-23 12:05:18 +01:00
Jorropo
486c4b5256 fix: ensure connmgr is smaller then autoscalled ressource limits
Fixes #9545
2023-01-23 12:05:02 +01:00
Jorropo
0ae3285a76 docs: clarify browser descriptions for webtransport 2023-01-23 12:04:50 +01:00
Marcin Rataj
7bcca5fcd4 fix: User-Agent sent to HTTP routers
See https://github.com/ipfs/go-libipfs/issues/17
and https://github.com/ipfs/go-libipfs/pull/31
2023-01-23 12:04:25 +01:00
Antonio Navarro Perez
89cdd8264f docs: improve docs/README (#9539)
Avoid confusion about what kind of documentation we have on this folder.
2023-01-23 12:02:37 +01:00
Henrique Dias
4ddeda55c0 chore: migrate from go-ipfs-files to go-libipfs/files (#9535) 2023-01-23 12:01:20 +01:00
Antonio Navarro Perez
2759a229c7 fix: stats dht command when Routing.Type=auto (#9538)
Fixes default auto mode, but Routing.Type=custom needs more work.
Continued in https://github.com/ipfs/kubo/issues/9482
2023-01-23 12:01:02 +01:00
Jorropo
5138e7ba07 fix: hint people to changing from RSA peer ids 2023-01-23 12:00:42 +01:00
Antonio Navarro Perez
04931b042d docs(config): ProviderSearchDelay (#9526)
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-01-23 11:58:38 +01:00
Vladimir Ivanov
26edc75eaa docs: clarify debug environment variables 2023-01-23 11:58:03 +01:00
galargh
faaac6e4cd chore: combined improvements from v0.18.0-rc2 2023-01-04 18:59:21 +01:00
Marten Seemann
15ed4c1c02 fix: update go-libp2p to v0.24.2 (#9522)
https://github.com/libp2p/go-libp2p/releases/tag/v0.24.2
2023-01-04 09:45:53 +01:00
Piotr Galar
e44a4d9228 Merge pull request #9503 from ipfs/docs/early-testers-remove-qri
Removing QRI from early tester
2023-01-04 09:43:00 +01:00
Antonio Navarro Perez
d6069b93ee
fix: disable provide over HTTP with Routing.Type=auto (#9511)
Closes https://github.com/ipfs/kubo/issues/9504
2023-01-03 21:10:33 +01:00
Piotr Galar
7db059b493
Update RELEASE_ISSUE_TEMPLATE.md 2022-12-13 22:09:55 +01:00
Piotr Galar
fe542db061
docs: add more automation commands to the release template 2022-12-13 16:55:20 +01:00
Piotr Galar
1ca3ea4a53
docs: enrich release issue template with initial set of mage commands 2022-12-13 10:58:37 +01:00
Piotr Galar
5dcd9ad14b
Update docs/changelogs/v0.18.md 2022-12-13 09:29:57 +01:00
Steve Loeppky
861c3f803a Cleaned up content 2022-12-12 21:55:55 -08:00
Steve Loeppky
e1f5cf53b6 Reodered sections and updated titles 2022-12-12 21:12:50 -08:00
Steve Loeppky
477c97ccf1 Added autogenerated TOC 2022-12-12 18:00:46 -08:00
Steve Loeppky
9ddfbcf7fe Add resource manager to changelog 2022-12-12 17:58:15 -08:00
Jorropo
ffb635d797
Merge pull request #9492 from ipfs/default-webtransport
feat: turn on WebTransport by default
2022-12-12 22:57:09 +01:00
Jorropo
16d189b8b8 feat: turn on WebTransport by default
Fixes #9292
2022-12-12 21:56:55 +01:00
Henrique Dias
7bdb341132
feat: fast directory listings with DAG Size column (#9481)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-12-12 21:45:13 +01:00
Marcin Rataj
3a3a97100c feat: go-libp2p-kad-dht with expiration 48h
https://github.com/libp2p/go-libp2p-kad-dht/releases/tag/v0.20.0
(cherry picked from commit f31d524d14)
2022-12-12 03:47:17 +01:00
Jorropo
deacafd178 chore: update go-libp2p to v0.24.1 2022-12-12 03:47:17 +01:00
Jorropo
f08b439d48 update go-libp2p to v0.24.0 2022-12-12 03:47:17 +01:00
Marcin Rataj
70e604ff99
feat: Routing.Type=auto (DHT+IPNI) (#9475)
This changes the default routing to use both DHT and IPNI
at the same time. Closes #9454 Closes #9422

Full context:
https://github.com/ipfs/kubo/issues/9454
https://github.com/ipfs/kubo/issues/9422

Co-authored-by: Steve Loeppky <biglep@protocol.ai>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
2022-12-08 23:20:24 +01:00
Marcin Rataj
1f636400aa
feat: adjust ConnMgr target to 32-96 (#9483)
https://github.com/ipfs/kubo/pull/9483#issuecomment-1343067553
2022-12-08 21:45:32 +01:00
Mikel Cortes
72bad5c060
feat: increase default Reprovider.Interval (#9326)
* increase republish interval based on RFM17
* refactor(config): switch to implicit default

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-12-08 21:28:40 +01:00
Kubo Mage
71b098e25f 'docs: update RELEASE_ISSUE_TEMPLATE.md' 2022-12-08 15:25:33 +00:00
Steve Loeppky
01e0bfa359
docs: libp2p resource management (#9468)
Co-authored-by: Antonio Navarro Perez <antnavper@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-12-08 16:18:04 +01:00
Gus Eggert
5e5d15ae1e
chore: upgrade libipfs for routing HTTP API schema changes (#9477) 2022-12-07 17:34:00 -05:00
Marcin Rataj
e0e4741fe0 feat: lower connection pool 2022-12-07 23:00:00 +01:00
Antonio Navarro Perez
7a8639ee33 Apply suggestions from code review
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
2022-12-07 16:47:37 +01:00
Antonio Navarro Perez
22a03bda6d Increase MaxMemory param to use half of total memory.
Previously it was using 1/8 of the total memory.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-12-07 16:47:37 +01:00
Antonio Navarro Perez
3185dee22a Update libipfs dependency. 2022-12-07 16:34:59 +01:00
Antonio Navarro Perez
f0d720cd55 Update go-libipfs dep
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-12-07 16:34:59 +01:00
Antonio Navarro Perez
7f5adb5e07 Add sharness tests and documentation 2022-12-07 16:34:59 +01:00
Antonio Navarro Perez
df828c0a47 feature: delegated-routing: Add HTTP delegated routing.
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-12-07 16:34:59 +01:00
Gus Eggert
b9a4d4592d chore: migrate ipfs/tar-utils to libipfs 2022-12-05 21:28:30 -05:00
Henrique Dias
fdd19656c4
feat(gateway): JSON and CBOR response formats (IPIP-328) (#9335)
https://github.com/ipfs/kubo/pull/9335
https://github.com/ipfs/specs/pull/328

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-12-05 20:22:26 +01:00
Jorropo
4d4841f41c
Merge pull request #9318 from ipfs/rvagg/go-merkledag-0.8 2022-12-05 15:15:12 +01:00
Piotr Galar
b84e296b6f
Merge branch 'master' into docs-release-v0.17.0 2022-12-05 10:03:47 +01:00
Piotr Galar
928105865c
Apply suggestions from code review 2022-12-05 10:02:15 +01:00
galargh
5ff08e4e18 docs: update top comment in release issue template 2022-12-05 09:58:15 +01:00
galargh
4d1d0b7eed docs: remove raw release issue template automation notes 2022-12-05 09:58:15 +01:00
galargh
345c58ff7a docs: ensure the changelogs are correctly linked 2022-12-05 09:52:43 +01:00
galargh
a1a7c987b0 docs: update examples in release issue teamplate 2022-12-05 09:50:10 +01:00
galargh
2c2926b7ab docs: parameterise release issue template 2022-12-05 09:47:25 +01:00
Antonio Navarro Perez
5283c6f8b5 chore: Update go-routing-helpers dependency
It will avoid a deadlock when using parallel router to compose routers.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-12-02 13:42:28 -05:00
Rod Vagg
7d0ea08289
deps: go-merkledag@v0.8.1 2022-12-02 10:16:15 +11:00
Mohsin Zaidi
51f60ea05a
feat(config): Pubsub.SeenMessagesTTL (#9372)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-11-29 00:05:44 +01:00
Marcin Rataj
3b00c81c8d docs: remove snap and chocolatey packages
See
https://github.com/ipfs/kubo/issues/8688
https://github.com/ipfs/kubo/issues/9341
2022-11-28 15:55:57 +01:00
galargh
227641a309 Merge remote-tracking branch 'origin/master' into merge-release-v0.17.0 2022-11-23 10:56:34 +01:00
Russell Dempsey
a32128d1d3
docs: ipfs-http-client -> kubo-rpc-client (#9331)
Fixes https://github.com/ipfs/js-kubo-rpc-client/issues/35

Co-authored-by: Steve Loeppky <stvn@loeppky.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-11-22 23:19:27 +01:00
galargh
d007b2ae38 docs: udpate changelog 2022-11-22 13:20:20 +01:00
Steve Loeppky
039badf3b2
Update config.md for resource management limits (#9421) 2022-11-18 18:51:12 +01:00
Steve Loeppky
83034d840c Doc improvements and changelog for resource manager (#9413)
Co-authored-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-16 13:09:12 +01:00
Steve Loeppky
6f730dc268
Doc improvements and changelog for resource manager (#9413)
Co-authored-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-16 11:26:59 +01:00
Steve Loeppky
9eeca82269 Revert "Doc improvements for rcmgr"
This reverts commit b1a89c93e4.
2022-11-16 08:32:24 +00:00
Steve Loeppky
b1a89c93e4 Doc improvements for rcmgr
This was done taking a fresh look for someone learning about
the resource manager being enabled by default.

Moved and expanded documentation to the right places for more visibility.

Added an initial changelog entry.
2022-11-16 08:06:23 +00:00
Antonio Navarro Perez
6f5e226de6 fix: update go-unixfs lib to v0.4.1
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-15 21:51:43 +01:00
Antonio Navarro Perez
1127a15aeb fix: update go-unixfs lib to v0.4.1
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-15 21:51:11 +01:00
Marcin Rataj
db3d1cd8e1 fix(docs): typo 2022-11-15 21:36:10 +01:00
Marcin Rataj
13b9a62ae5 docs: document /wss fixes in 0.17 2022-11-15 21:34:45 +01:00
Lucas Molas
65365192f7 refactor(config): remove Swarm.ConnMgr defaults
This moves defaults to Kubo code, cleaning up config.
If value is in config, we assume it is an explicit choice made by user.
Makes migrations easier.
2022-11-15 21:34:38 +01:00
Marcin Rataj
a4e47b0db4 docs: document /wss fixes in 0.17 2022-11-15 20:36:11 +01:00
Lucas Molas
e34c0da2b5 refactor(config): remove Swarm.ConnMgr defaults
This moves defaults to Kubo code, cleaning up config.
If value is in config, we assume it is an explicit choice made by user.
Makes migrations easier.
2022-11-15 20:26:59 +01:00
galargh
7b79f69c78 docs: internal testing as code 2022-11-15 18:18:25 +01:00
Antonio Navarro Perez
e58cde1789
docs: Deprecate Reframe on docs. (#9401) 2022-11-15 17:01:08 +01:00
galargh
341c2ab460 docs: create a final issue for bifrost (TODO) 2022-11-15 14:09:15 +01:00
galargh
350f58e581 docs: add instructions on how to complete RC via CLI 2022-11-15 14:07:21 +01:00
tabcat
2479cc163a
docs: replace tabcat with aphelionz in EARLY_TESTERS.md (#9404)
I no longer maintain OrbitDB.
2022-11-14 18:11:55 +01:00
Jorropo
8cca21ad27 docs: fix spoiler for 0.13.1 changelog 2022-11-11 00:51:28 +00:00
Steve Loeppky
9fafe50fae
Update RELEASE_ISSUE_TEMPLATE.md
Making some changes that am seeing so far.  Some of these changes are so I can leave PR comments.
2022-11-10 15:28:45 -08:00
Marcin Rataj
fd1a8f2cec
fix(docs): typo 2022-11-11 00:05:02 +01:00
Antonio Navarro Perez
9da7f3a02d
Update to v0.23.4
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-10 10:49:08 -05:00
Antonio Navarro Perez
3550758035
chore: Update go-libp2p to v0.23.3
Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>
2022-11-10 10:48:07 -05:00
galargh
3e104db9af docs: update header in release issue template 2022-11-10 14:03:10 +01:00
Antonio Navarro Perez
254d81a9d5
feat: Improve ResourceManager UX (#9338)
This PR adds several new functionalities to make easier the usage of ResourceManager:

- Now resource manager logs when resources are exceeded are on ERROR instead of warning.
- The resources exceeded error now shows what kind of limit was reached and the scope.
- When there was no limit exceeded, we print a message for the user saying that limits are not exceeded anymore.
- Added `swarm limit all` command to show all set limits with the same format as `swarm stats all`
- Added `min-used-limit-perc` option to `swarm stats all` to only show stats that are above a specific percentage
- Simplify a lot default values.
- **Enable ResourceManager by default.**

Output example:
```
2022-11-09T10:51:40.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:51:50.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 483095 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:51:50.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:00.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 455294 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:00.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:10.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 471384 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:10.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 8 times with error "peer:12D3KooWKqcaBtcmZKLKCCoDPBuA6AXGJMNrLQUPPMsA5Q6D1eG6: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 192 times with error "peer:12D3KooWPjetWPGQUih9LZTGHdyAM9fKaXtUxDyBhA93E3JAWCXj: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 469746 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 484137 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 29 times with error "peer:12D3KooWPjetWPGQUih9LZTGHdyAM9fKaXtUxDyBhA93E3JAWCXj: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:40.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 468843 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:40.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:52:50.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 366638 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:52:50.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 405526 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 107 times with error "peer:12D3KooWQZQCwevTDGhkE9iGYk5sBzWRDUSX68oyrcfM9tXyrs2Q: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:00.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:10.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 336923 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:10.566+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:55      Resource limits were exceeded 71 times with error "transient: cannot reserve inbound stream: resource limit exceeded".
2022-11-09T10:53:20.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:59      Consider inspecting logs and raising the resource manager limits. Documentation: https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmresourcemgr
2022-11-09T10:53:30.565+0100    ERROR   resourcemanager libp2p/rcmgr_logging.go:64      Resrouce limits are no longer being exceeded.

```
## Validation tests

- Accelerated DHT client runs with no errors when ResourceManager is active. No problems were observed.
- Running an attack with 200 connections and 1M streams using yamux protocol. Node was usable during the attack. With ResourceManager deactivated, the node was killed by the OS because of the amount of memory consumed.
	- Actions done when the attack was active:
		- Add files 
		- Force a reprovide
		- Use the gateway to resolve an IPNS address.

It closes #9001 
It closes #9351
It closes #9322
2022-11-10 12:25:57 +01:00
Henrique Dias
a210abd743
feat(gateway): TAR response format (#9029)
Implementation of IPIP-288 (https://github.com/ipfs/specs/pull/288)

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-11-09 19:20:33 +01:00
Marcin Rataj
d69f7a5ac9 chore: go-multicodec v0.7.0
https://github.com/multiformats/go-multicodec/releases/tag/v0.7.0
2022-11-08 18:33:36 +01:00
Andreas Källberg
2fd4e197a0 feat: Add command line completion for fish 2022-10-30 21:13:53 +00:00
Piotr Galar
0f44f2974a
Merge pull request #9283 from ipfs/docs-release-0.16.0
docs: init release issue template improvement process v0.16.0
2022-10-20 08:25:34 +02:00
Gus Eggert
8c72ea909a
feat: add delegated routing metrics (#9354) 2022-10-19 09:50:30 -04:00
galargh
c656952d78 Apply suggestions from the code review 2022-10-19 14:38:18 +02:00
Piotr Galar
cba1bdf4ea
Apply suggestions from code review
Co-authored-by: Steve Loeppky <biglep@protocol.ai>
2022-10-19 14:37:49 +02:00
Piotr Galar
f54018c39a
chore: create v0.17.md changelog 2022-10-18 18:55:20 +02:00
Rod Vagg
9e3745ebeb deps: upgrade go-ipld-prime to v0.19.0
Ref: https://github.com/ipld/go-ipld-prime/releases/tag/v0.19.0
2022-10-14 05:23:43 +02:00
Piotr Galar
cf4bf8a1c8
Merge branch 'master' into docs-release-0.16.0 2022-10-12 13:41:48 +02:00
galargh
2321be0457 docs: self-review the release issue template updates 2022-10-12 13:29:39 +02:00
galargh
4f76b9f326 docs: apply updates discovered during the final release 2022-10-12 12:13:37 +02:00
Henrique Dias
4291d6b236
fix: add InlineDNSLink flag to PublicGateways config (#9328)
https://github.com/ipfs/kubo/issues/9243
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-10-11 15:45:43 +02:00
galargh
9364243414 docs: update changelog-v0.16 with full changelog data 2022-10-04 11:15:00 +02:00
galargh
5d2f3373da docs: update application testing examples 2022-10-01 17:51:51 +02:00
galargh
940e3974b1 docs: copy final release instructions 2022-10-01 13:38:04 +02:00
Marcin Rataj
c4a0656920 docs: document remaining 0.16.0 features 2022-09-28 20:13:03 +02:00
galargh
6c6708af32 docs: guess what's going to be required for the final release 2022-09-27 18:17:54 +02:00
galargh
4b50e59762 docs: move publishing npm package 2022-09-27 17:18:21 +02:00
galargh
c86b75debd docs: move changelog creation instructions earlier 2022-09-27 17:08:37 +02:00
galargh
335d961d15 docs: update release issue template with learnings from v0.16.0-rc1 release 2022-09-27 16:26:38 +02:00
Jorropo
b539cd4e47 docs: add WebTransport docs 2022-09-27 16:14:34 +02:00
Jorropo
baccaef1b5
Merge pull request #9293 from Jorropo/webtransport
feat: add webtransport as an optin transport
2022-09-23 20:09:33 +02:00
Jorropo
8baec10146 feat: add webtransport as an optin transport 2022-09-23 19:50:55 +02:00
Justin Johnson
bcaacdd6c3
feat(gateway): _redirects file support (#8890)
https://github.com/ipfs/kubo/pull/8890
https://github.com/ipfs/specs/pull/290
2022-09-23 18:44:19 +02:00
Jorropo
2549475d84 docs: fix typo in changelog-v0.16.0.md 2022-09-23 11:45:16 +02:00
Antonio Navarro Perez
d1b9e41fc2
feat: Delegated routing with custom configuration. (#9274)
New multi-router configuration system based on https://hackmd.io/G1KRDEX5T3qyfoBMkIrBew#Methods

- Added a new routing type: "custom"
- Added specific struct types for different Routers (instead of map[string]interface{})
- Added `Duration` config type, to make easier time string parsing
- Added config documentation.
- Use the latest go-delegated-routing library version with GET support.
- Added changelog notes for this feature.

It:
- closes #9157
- closes #9079
- closes #9186
2022-09-22 15:47:45 +02:00
galargh
b11efaf765 docs: add docs-release-vX.Y.Z info to the checklist 2022-09-22 10:43:15 +02:00
galargh
e103254e6f docs: incorporate the RC into the main checklist 2022-09-22 10:41:10 +02:00
galargh
f50fc3211c docs: add information about release prerequisites 2022-09-22 10:10:41 +02:00
Jorropo
74aaf37cec chore: bump go-libp2p v0.23.1
This does not include any WebTransport config code in Kubo, this will be done later in an other PR.
2022-09-21 23:16:03 +02:00
Marcin Rataj
b6b97d90ac fix: require IPNS V2 signatures 2022-09-21 01:09:00 +02:00
eth-limo
8e2bf82f97
docs: fix broken ENS DoH example (#9281) 2022-09-21 00:37:47 +02:00
galargh
cb706d73c1 docs: document currently used Go image version 2022-09-19 11:58:58 +02:00
galargh
f7df8d7318 docs: init release issue template improvement process v0.16.0 2022-09-19 11:48:09 +02:00
Steve Loeppky
289b4e1d60 Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Steve Loeppky
a6eb9f1238 Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Steve Loeppky
5abfd14e9b Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Steve Loeppky
203c2f5e78 Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Steve Loeppky
07c9b7d815 Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
952a376433 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
e7d9ce2915 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
3fe18278af Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
4cb7508c3a Update docs/RELEASE_ISSUE_TEMPLATE.md
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
917d2bbf4f Update docs/RELEASE_ISSUE_TEMPLATE.md
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
7c0dde45e9 Add how to test IPFS companion. 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
29810705f7 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
c9fa800ac9 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
4ade119953 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
7efa911b2a Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
951cb328cd Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Steve Loeppky
343e265d01 Minor list formatting update 2022-09-16 10:57:37 -07:00
Antonio Navarro Perez
3fed8b2a66 Update RELEASE_ISSUE_TEMPLATE.md 2022-09-16 10:57:37 -07:00
Jorropo
aeaf57734a chore: bump go-bitswap v0.10.2 2022-09-13 19:21:18 +02:00
Jorropo
196887cbe5 chore: bump go-libp2p v0.22.0 & go1.18&go1.19
Fixes: #9225
2022-09-09 17:09:38 +02:00
Jorropo
849e0478b5 chore: bump go-pinning-service-http-client v0.1.2 to include up to nano precision 2022-09-01 15:36:25 +02:00
Marcin Rataj
c9693edbc5 chore: remove Gateway.PathPrefixes
Closes #7702
2022-08-30 15:38:04 +02:00
Jorropo
0d9478d3c8
docs: fix markdown syntax typo in v0.15's changelog 2022-08-30 14:41:46 +02:00
Antonio Navarro Perez
de7d74f486 Merge branch 'release-v0.15.0' of github.com:ipfs/go-ipfs into release-v0.15.0 2022-08-30 11:27:30 +02:00
Jorropo
8c6aaa8393 docs: changelog: add mention of gateway file to v0.15 2022-08-29 18:19:23 +02:00
Oleg
6516883b6b
correct data type for Reprovider.Interval (#9224)
* correct data type for Reprovider.Interval

Signed-off-by: Oleg Silkin <16809287+osilkin98@users.noreply.github.com>
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
2022-08-25 12:27:42 -07:00
Antonio Navarro Perez
bd7e41ce83
chore: First v0.15.0 CHANGELOG draft. 2022-08-25 14:12:49 +02:00
Marcin Rataj
9c6094e651 docs(config): mention routing.delegate.ipfs.io 2022-08-18 16:52:44 +02:00
Steve Loeppky
2d98b4f229 Update RELEASE_ISSUE_TEMPLATE.md for 0.15 2022-08-17 09:42:39 +00:00
Jorropo
1236eb0f58 chore: update github.com/gabriel-vasile/mimetype
See the release notes: https://github.com/gabriel-vasile/mimetype/releases/tag/v1.4.1

This is a valuable release with already public security fixes (which don't affect us AFAIT but better safe than sorry).
More mimetypes and bug fixes.
2022-08-17 02:19:18 +02:00
Marcin Rataj
00f2a64673
Merge pull request #9074 from ipfs/rcgmr-auto-scale
feat: go-libp2p v0.21 (rcmgr auto scaling)
2022-08-17 01:37:44 +02:00
Marcin Rataj
77251b60c4
test(rcmgr): regression test prometherus metrics 2022-08-17 01:27:50 +02:00
Marcin Rataj
5ca74c7f7a docs(config): Swarm.ResourceMgr.Allowlist 2022-08-17 00:38:51 +02:00
Antonio Navarro Perez
f5e7905f91
Merge branch 'master' into guseggert-patch-1 2022-08-16 12:35:25 +02:00
Antonio Navarro Perez
654745aaa2
Merge branch 'master' into chore/update-release-template-0.14.0 2022-08-16 10:16:05 +02:00
Marco Munizaga
5c858d5063 Go mod tidy kubo-as-a-library 2022-08-15 14:47:22 -07:00
Marco Munizaga
831135cc9b Update go-libp2p-kad-dht to v0.17.0 2022-08-15 14:14:00 -07:00
Marco Munizaga
194eb2f298 Go mod tidy 2022-08-15 14:12:21 -07:00
Marco Munizaga
4cd437dfe2 Use replace in kubo example as a library 2022-08-15 14:12:21 -07:00
Marco Munizaga
b0adea314a Update go.mod/sum in examples/kubo-as-a-library 2022-08-15 14:12:21 -07:00
Marcin Rataj
44581e9077
Merge branch 'master' into chore/update-patch-release-template-0.13.1 2022-08-15 20:29:27 +02:00
Marcin Rataj
532ba09283
Merge branch 'master' into chore/update-release-template-0.14.0 2022-08-15 20:22:14 +02:00
Gus Eggert
795c2cf819
docs: add fx plugin documentation to plugins.md (#9191) 2022-08-13 08:08:52 -04:00
Marcin Rataj
837f6ee92b chore: switch to dist.ipfs.tech
Part of https://github.com/protocol/bifrost-infra/issues/2018
ensures the domain used for fetching migrations is not
impacted by ipfs.io being blocked at DNS level by some ISPs.
2022-08-12 23:42:17 +02:00
Brendan O'Brien
8fd49badc2
Add reference to Experimental config doc (#9181)
* Add reference to Experimental config doc

this clarifies that `Experimental` is in fact a top level configuration key, and links to the most current documentation

Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2022-08-11 10:15:08 -07:00
Steve Loeppky
c09ead2363
More blog entry updates. 2022-08-08 11:58:30 -07:00
Steve Loeppky
dbe4e6cf24
Updating blog entry request section 2022-08-08 11:53:03 -07:00
Seungbae Yu
cb280cbf16
docs: replace docs.ipfs.io with docs.ipfs.tech (#9158)
* docs: fix redirecting URL in README.md
* all: replace `docs.ipfs.io` with `docs.ipfs.tech`
* apply suggestions from code review

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-08-05 19:01:10 +03:00
Steve Loeppky
312e574f94
Merge branch 'master' into chore/update-patch-release-template-0.13.1 2022-08-04 08:45:20 -07:00
lostystyg
f9db823138
chore: fix markdown link syntax typo for AutoNAT.ServiceMode 2022-08-03 15:17:28 +02:00
Marcin Rataj
2f08eb45e7 chore: update kubo-as-a-library example 2022-07-25 16:48:52 +02:00
Marcin Rataj
e4da0b8663
Update RELEASE_ISSUE_TEMPLATE.md
See https://github.com/ipfs/distributions/pull/745
2022-07-21 23:29:03 +02:00
Marcin Rataj
09fa9beb52
Update docs/RELEASE_ISSUE_TEMPLATE.md 2022-07-21 23:13:31 +02:00
Marcin Rataj
ee3603c674
Merge branch 'master' into chore/update-release-template-0.14.0 2022-07-21 23:13:23 +02:00
Marcin Rataj
fdb9f8f680
Update RELEASE_ISSUE_TEMPLATE.md
Copied npm/choco/snap context from https://github.com/ipfs/kubo/pull/9095
2022-07-21 23:08:56 +02:00
Marcin Rataj
bcab64d42d docs(config): add link to someguy router 2022-07-21 21:00:39 +02:00
Jorropo
9412867f5e docs(changelog): finish v0.14.0 changelog
Co-Authored-By: Marcin Rataj <lidel@lidel.org>
2022-07-21 04:52:18 +02:00
Jorropo
af4211a2fa backport: merge commit '839b0848a' into release-v0.14.0 2022-07-21 04:04:46 +02:00
Steve Loeppky
54a30a857c
Add step for creating PR to improve process 2022-07-14 09:27:17 -07:00
Steve Loeppky
4b4e256a52
Spacing fix 2022-07-14 09:22:23 -07:00
Steve Loeppky
8e2ef239c4
Added link to patch release template 2022-07-14 09:21:37 -07:00
Steve Loeppky
baa7018246
Updating based on release process
Accounting for items in https://pl-strflt.notion.site/Kubo-Release-Process-5a5d066264704009a28a79cff93062c4
2022-07-14 09:19:30 -07:00
Marcin Rataj
fbb496b623 docs(changelog): v0.14 rename and breaking changes 2022-07-08 22:11:10 +02:00
Jorropo
44ec4cd444 docs: fix v0.14's changelog format 2022-07-07 23:47:41 +02:00
Antonio Navarro Perez
92c4dc61a8
feat(routing): Delegated Routing (#8997)
* Delegated Routing.

Implementation of Reframe specs (https://github.com/ipfs/specs/blob/master/REFRAME.md) using go-delegated-routing library.

* Requested changes.

* Init using op string

* Separate possible ContentRouters for TopicDiscovery.

If we don't do this, we have a ciclic dependency creating TieredRouter.
Now we can create first all possible content routers, and after that,
create Routers.

* Set dht default routing type

* Add tests and remove uneeded code

* Add documentation.

* docs: Routing.Routers

* Requested changes.

Signed-off-by: Antonio Navarro Perez <antnavper@gmail.com>

* Add some documentation on new fx functions.

* Add changelog entry and integration tests

* test: sharness for 'dht' in 'routing' commands

Since 'routing' is currently the same as 'dht' (minus query command)
we need to test both, that way we won't have unnoticed divergence
in the default behavior.

* test(sharness): delegated routing via reframe URL

* Add more tests for delegated routing.

* If any put operation fails, the tiered router will fail.

* refactor: Routing.Routers: Parameters.Endpoint

As agreed  in https://github.com/ipfs/kubo/pull/8997#issuecomment-1175684716

* Try to improve CHANGELOG entry.

* chore: update reframe spec link

* Update go-delegated-routing dependency

* Fix config error test

* use new changelog format

* Remove port conflict

* go mod tidy

* ProviderManyWrapper to ProviderMany

* Update docs/changelogs/v0.14.md

Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2022-07-07 17:10:25 -04:00
Jorropo
24b8dd5ab0 chore: changelogs split
Closes #8976
2022-07-07 19:44:01 +02:00
Marcin Rataj
c5792a0dbe
Merge branch 'master' into chore/update-patch-release-template-0.13.1 2022-07-07 15:32:49 +02:00
Marcin Rataj
8565bbb75c
refactor: kubo in ./docs 2022-07-06 23:45:25 +02:00
Marcin Rataj
91e6451419 refactor: kubo in snap docs 2022-07-06 23:44:38 +02:00
Daniel N
e5f63393ff docs: refine wording 2022-07-06 22:47:07 +02:00
Daniel N
d323189598 docs: refine the wording of provider strategies 2022-07-06 22:47:07 +02:00
Steve Loeppky
bb980eed8a
Update RELEASE_ISSUE_TEMPLATE.md based on 0.14.0 release
Changes based on the 0.14.0 release: https://github.com/ipfs/kubo/issues/9032

Items from 0.13.1 should also be incorporated: https://github.com/ipfs/kubo/pull/9095
2022-07-06 12:51:02 -07:00
Marcin Rataj
2f0ea0f7ff
chore: add links to npm/choco jobs 2022-07-06 18:20:08 +02:00
Marcin Rataj
74c34e2d48
fix: npm link 2022-07-06 18:17:32 +02:00
Marcin Rataj
80cc506c79
docs: add note about automations: npm, choco, snap 2022-07-06 18:16:46 +02:00
Steve Loeppky
5f67f8cb54
Update PATCH_RELEASE_TEMPLATE.md based on 0.13.1
These updates are based on items from https://github.com/ipfs/go-ipfs/pull/9092
2022-07-06 09:10:32 -07:00
Marcin Rataj
61f0710100
fix: remove mdns_legacy & Discovery.MDNS.Interval
* fix: remove mdns_legacy

We've been running both implementations for a long, long time.
It is time to remove legacy version and lower the number of LAN packets
IPFS node produces.

See https://github.com/ipfs/go-ipfs/pull/9048#discussion_r906814717
for the Interval removal rational.
2022-06-27 04:17:40 +02:00
Marcin Rataj
88d88158c6 docs: mark Swarm.ResourceMgr as experimental 2022-06-16 14:34:13 -04:00
Jorropo
a433064d72
chore: replace ioutil with io and os (#8969)
Co-authored-by: Håvard Anda Estensen <haavard.ae@gmail.com>
2022-06-14 12:37:02 -04:00
Gus Eggert
81112c3d6e
docs: elaborate on some git cmds for releasing 2022-06-09 15:52:15 -04:00
Gus Eggert
b1c051d250
feat: disable resource manager by default (#9003)
* feat: disable resource manager by default

We are disabling this by default for v0.13 as we work to improve the
UX around Resource Manager. It is still usable and can be enabled in
the IPFS config with "ipfs config --bool Swarm.ResourceMgr.Enabled true".

We intend to enable Resource Manager by default in a subsequent
release.

* docs(config): Swarm.ResourceMgr disabled by default

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-06-02 10:31:06 -04:00
Antonio Navarro Perez
e8f1ce07b3
fix(ci): make go-ipfs-as-a-library work without external peers (#8978)
* Do not connect to external nodes on ipfs as a lib example.

It was causing some build timeouts error because CircleCI
was throttling WAN connections.

It closes #8956

* style: rename node vars

since this is example, this should make things easier to follow

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-05-25 02:36:01 +02:00
siiky
a72753bade docs: fix abstractions typo 2022-05-14 02:54:00 +02:00
Marcin Rataj
53299e84e0
chore: mark fuse experimental (#8962)
It works only on some platforms, and does not work reliably.
This corrects our error of not setting expectations right.
2022-05-12 10:32:54 -07:00
Adin Schmahmann
6d2f790f76 chore: update example deps 2022-05-04 14:56:19 -04:00
Gus Eggert
0ab4367160 docs(tracing): update env var docs for new tracing env vars
This should have been updated as part of 967bd6932
2022-05-04 14:38:05 -04:00
Gus Eggert
3d527753ff feat: enable Resource Manager by default 2022-05-04 14:08:37 -04:00
Marcin Rataj
cab69276e9 docs: Swarm.ResourceMgr.Limits 2022-05-03 16:21:03 -04:00
Adin Schmahmann
7ad6447453 feat: enable hole-punching by default 2022-05-03 14:26:09 -04:00
Lucas Molas
25cc85fa93
feat(gateway): Gateway.FastDirIndexThreshold (#8853)
* fix(core/gateway): option to limit directory size listing

* feat(gw): HTMLDirListingLimit

This is alternative take on the way we limit the HTML listing output.
Instead of a hard cut-off, we list up to HTMLDirListingLimit.
When a directory has more items than HTMLDirListingLimit we show
additional header and footer informing user that only $HTMLDirListingLimit
items are listed. This is a better UX.

* fix: 0 disables Gateway.HTMLDirListingLimit

* refactor: Gateway.FastDirIndexThreshold

see explainer in docs/config.md

* refactor: prealoc slices

* docs: Gateway.FastDirIndexThreshold

* refactor: core/corehttp/gateway_handler.go

https://github.com/ipfs/go-ipfs/pull/8853#discussion_r851437088

* docs: apply suggestions from code review

Co-authored-by: Alan Shaw <alan.shaw@protocol.ai>

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Alan Shaw <alan.shaw@protocol.ai>
2022-04-28 19:36:57 +02:00
SukkaW
4f7d4bcc05 docs: replace all git.io links with their actual URLs 2022-04-28 18:06:08 +02:00
Marten Seemann
232ccb4e55
feat: relay v2 discovery (go-libp2p v0.19.0) (#8868)
* update go-libp2p to v0.19.0
* chore: go-namesys v0.5.0
* refactor(config): cleanup relay handling
* docs(config): document updated defaults
* fix(tests): panic during sharness

* fix: t0160-resolve.sh
See https://github.com/ipfs/go-namesys/pull/32

* fix: t0182-circuit-relay.sh
* test: transport encryption

Old tests were no longer working because go-libp2p 0.19 removed
the undocumented 'ls' pseudoprotocol.

This replaces these tests with handshake attempt (name is echoed back on
OK or 'na' is returned when protocol is not available) for tls and noise
variants + adds explicit test that safeguards us against enabling
plaintext by default by a mistake.

* fix: ./t0182-circuit-relay.sh

test is flaky, for now we just restart the testbed when we get
NO_RESERVATION error

* refactor: AutoRelayFeeder with exp. backoff

It starts at feeding peers ever 15s, then backs off each time
until it is done once an hour

Should be acceptable until we have smarter mechanism in go-lib2p 0.20

* feat(AutoRelay): prioritize Peering.Peers

This ensures we feed trusted Peering.Peers in addition to any peers
discovered over DHT.

* docs(CHANGELOG): document breaking changes

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Gus Eggert <gus@gus.dev>
2022-04-28 17:13:15 +02:00
Adin Schmahmann
d59730f51e
Update Go version to 1.17 (#8815)
* remove building the pre-bundled plugins as shared objects in makefile

* chore: update go version to minimum of 1.17
2022-04-15 14:32:00 -04:00
Marten Seemann
514411bedb
feat: opt-in Swarm.ResourceMgr (go-libp2p v0.18) (#8680)
* update go-libp2p to v0.18.0

* initialize the resource manager

* add resource manager stats/limit commands

* load limit file when building resource manager

* log absent limit file

* write rcmgr to file when IPFS_DEBUG_RCMGR is set

* fix: mark swarm limit|stats as experimental

* feat(cfg): opt-in Swarm.ResourceMgr

This ensures we can safely test the resource manager without impacting
default behavior.

- Resource manager is disabled by default
    - Default for Swarm.ResourceMgr.Enabled is false for now
- Swarm.ResourceMgr.Limits allows user to tweak limits per specific
  scope in a way that is persisted across restarts
- 'ipfs swarm limit system' outputs human-readable json
- 'ipfs swarm limit system new-limits.json' sets new runtime limits
  (but does not change Swarm.ResourceMgr.Limits in the config)

Conventions to make libp2p devs life easier:
- 'IPFS_RCMGR=1 ipfs daemon' overrides the config and enables resource manager
- 'limit.json' overrides implicit defaults from libp2p (if present)

* docs(config): small tweaks

* fix: skip libp2p.ResourceManager if disabled

This ensures 'ipfs swarm limit|stats' work only when enabled.

* fix: use NullResourceManager when disabled

This reverts commit b19f7c9eca.
after clarification feedback from
https://github.com/ipfs/go-ipfs/pull/8680#discussion_r841680182

* style: rename IPFS_RCMGR to LIBP2P_RCMGR

preexisting libp2p toggles use LIBP2P_ prefix

* test: Swarm.ResourceMgr

* fix: location of opt-in limit.json and rcmgr.json.gz

Places these files inside of IPFS_PATH

* Update docs/config.md

* feat: expose rcmgr metrics when enabled (#8785)

* add metrics for the resource manager
* export protocol and service name in Prometheus metrics
* fix: expose rcmgr metrics only when enabled

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

* refactor: rcmgr_metrics.go

* refactor: rcmgr_defaults.go

This file defines implicit limit defaults used when Swarm.ResourceMgr.Enabled

We keep vendored copy to ensure go-ipfs is not impacted when go-libp2p
decides to change defaults in any of the future releases.

* refactor: adjustedDefaultLimits

Cleans up the way we initialize defaults and adds a fix for case
when connection manager runs with high limits.

It also hides `Swarm.ResourceMgr.Limits` until we have a better
understanding what syntax makes sense.

* chore: cleanup after a review

* fix: restore go-ipld-prime v0.14.2

* fix: restore go-ds-flatfs v0.5.1

Co-authored-by: Lucas Molas <schomatis@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-04-07 21:06:35 -04:00
Justin Johnson
7b2c7c7f16
docs(logging): environment variables (#8833)
- Document IPFS_LOGGING deprecation
  as alias to GOLOG_LOG_LEVEL and expand doc
  to include per-subsystem log levels.

- Document IPFS_LOGGING_FMT deprecation
  as alias to GOLOG_LOG_FMT.
2022-04-06 17:24:23 +02:00
Gus Eggert
f855bfe6ef
feat: add basic gateway tracing (#8595)
* add deprecation warning when tracer plugins are loaded
* add response format attribute to span in gateway handler
* add note about tracing's experimental status in godoc
* add nil check for TTL when adding name span attrs
* add basic sharness test for integration with otel collector
* add nil check in UnixFSAPI.processLink
* test: sharness check all json objs for swarm span
* add env var docs to docs/environment-variables.md
* chore: pin the otel collector version
* add tracing spans per response type (#8841)
* docs: tracing with jaeger-ui

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-04-04 19:24:05 +02:00
Marcin Rataj
d6de97b417
docs: gateway.md (#8825)
Adds link to relevant pages at docs.ipfs.io
2022-03-28 16:31:36 +02:00
Marcin Rataj
4cabdfefbf
feat(gateway): Block and CAR response formats (#8758)
* feat: serveRawBlock implements ?format=block
* feat: serveCar implements ?format=car
* feat(gw): ?format= or Accept HTTP header

- extracted file-like content type responses to separate .go files
- Accept HTTP header with support for application/vnd.ipld.* types

* fix: use .bin for raw block content-disposition

.raw may be handled by something, depending on OS, and .bin
seems to be universally "binary file" across all systems:
https://en.wikipedia.org/wiki/List_of_filename_extensions_(A%E2%80%93E)

* refactor: gateway_handler_unixfs.go

- Moved UnixFS response handling to gateway_handler_unixfs*.go files.
- Removed support for X-Ipfs-Gateway-Prefix (Closes #7702)

* refactor: prefix cleanup and readable paths

- removed dead code after X-Ipfs-Gateway-Prefix is gone
  (https://github.com/ipfs/go-ipfs/issues/7702)
- escaped special characters in content paths returned with http.Error
  making them both safer and easier to reason about (e.g. when invisible
  whitespace Unicode is used)
2022-03-17 17:15:24 +01:00
Gus Eggert
bc33ed4c35
Update PATCH_RELEASE_TEMPLATE.md 2022-03-16 17:50:46 -04:00
Adin Schmahmann
eafa1c7345
docs: note the default reprovider strategy as all (#8603) 2022-03-10 01:42:33 -08:00
Gus Eggert
10ff11b4ca
chore: add instructions for Chocolatey release 2022-03-01 10:35:19 -05:00
Adin Schmahmann
686993f6f2
docs: add Internal.UnixFSShardingSizeThreshold (#8723)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-02-18 23:37:55 +01:00
Manuel Alonso
edb32ac3d7
chore(gateway): debug logging for the http requests (#8518)
* chore(gateway): better logging for the http requests

* chore(gateway): removed defer and add more data to the final log

* chore(gateway): debug logging refactor

* chore(gateway): use debug w/o context when only msg

* doc: add cmd for log level

* chore: add more logs and address fedback

* chore(gateway): log subdomains and from=requestURI, refactor

* chore(gateway): fix debug redirect
2022-02-15 17:13:09 -05:00
Marcin Rataj
f9643a61d7
docs: optionalInteger|String|Duration (#8729) 2022-02-10 23:52:18 +01:00
Thibault Meunier
a93907a40f
feat: DNS.MaxCacheTTL for DNS-over-HTTPS resolvers (#8615)
* feat: Add MaxCacheTTL option for DNS-over-HTTPS resolvers
* Update libp2p/go-doh-resolver dependencies to support Options
* feat: Add `DNS.MaxCacheTTL` config documentation
* docs: DNS.MaxCacheTTL
* chore: go-ipfs-config@v0.19.0
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-02-10 22:26:14 +01:00
Shu Shen
012be8ae08 chore: bump to go-ipfs@0.11 in go-ipfs-as-a-library 2022-02-02 21:15:51 -08:00
Marcin Rataj
4ad316803e
docs: update badger section in config.md (#8662)
This should fix the issue of users thinking badger
is "no-brainer faster choice" and then running into problems.

Co-authored-by: Johnny <9611008+johnnymatthews@users.noreply.github.com>
2022-01-28 23:22:26 +01:00
chblodg
562365f4fc Adding PowerShell to Minimal Go Installation
Separated CMD and PowerShell to add additional support.
2022-01-14 11:35:11 -05:00
Somajit
7e4fcbb324 Fixed typos in docs/config.md 2022-01-14 11:32:00 -05:00
Gus Eggert
deb79a2587
chore: add release template snippet for fetching artifact tarball 2021-12-09 15:47:44 -05:00
Gus Eggert
007921b900 chore: add release steps for upgrading Go 2021-12-09 11:24:02 -05:00
Marten Seemann
48a6cac00b
feat: Swarm.EnableHolePunching flag (#8562)
* feat: use Swarm.EnableHolePunching flag within libp2p
* docs: Swarm.EnableHolePunching

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-11-30 11:18:51 -08:00
jwh
029d82c4ea
feat: enabling pubsub and ipns-pubsub via config flags (#8510)
* Allow pubsub and namesys-pubsub to be enabled via config

Signed-off-by: Joe Holden <jwh@zorins.us>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2021-11-30 11:00:11 -08:00
Jorropo
c2953ab8f1
feat: Addresses.AppendAnnounce (#8177)
* feat: Addresses.AppendAnnounce

Closes #7791

* fix: deduplicate Swarm.Announce and AppendAnnounce

https://github.com/ipfs/go-ipfs/pull/8177#discussion_r759317772
https://github.com/ipfs/go-ipfs/pull/8177#discussion_r759320332

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-11-30 17:58:19 +01:00
Marcin Rataj
82c1bfa0e6 feat: hard deprecation of IPFS_REUSEPORT
Years passed and we still see it. Time to force users to switch to
LIBP2P_TCP_REUSEPORT.
2021-11-29 14:42:30 -05:00
Adin Schmahmann
52c177ced9
feat: go-libp2p 0.16, UnixFS autosharding and go-datastore with contexts (#8563)
* plumb through go-datastore context changes

* update go-libp2p to v0.16.0
* use LIBP2P_TCP_REUSEPORT instead of IPFS_REUSEPORT
* use relay config
* making deprecation notice match the go-ipfs-config key
* docs(config): circuit relay v2
* docs(config): fix links and headers
* feat(config): Internal.Libp2pForceReachability

This switches to config that supports setting and reading
Internal.Libp2pForceReachability OptionalString flag

* use configuration option for static relays

* chore: go-ipfs-config v0.18.0

https://github.com/ipfs/go-ipfs-config/releases/tag/v0.18.0

* feat: circuit v1 migration prompt when Swarm.EnableRelayHop is set (#8559)
* exit when Swarm.EnableRelayHop is set
* docs: Experimental.ShardingEnabled migration

This ensures existing users of global sharding experiment get notified
that the flag no longer works + that autosharding happens automatically.

For people who NEED to keep the old behavior (eg. have no time to
migrate today) there is a note about restoring it with
`UnixFSShardingSizeThreshold`.

* chore: add dag-jose code to the cid command output

* add support for setting automatic unixfs sharding threshold from the config
* test: have tests use low cutoff for sharding to mimic old behavior
* test: change error message to match the current error
* test: Add automatic sharding/unsharding tests (#8547)
* test: refactored naming in the sharding sharness tests to make more sense

* ci: set interop test executor to convenience image for Go1.16 + Node
* ci: use interop master

Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Gus Eggert <gus@gus.dev>
Co-authored-by: Lucas Molas <schomatis@gmail.com>
2021-11-29 19:58:05 +01:00
Steve Loeppky
ba2445ae72
Updating release template based off some 0.10 learnings (#8491)
* Updating release template based off some 0.10 learnings

This addresses the easy items in https://github.com/ipfs/go-ipfs/issues/8248

* Further updates based on 2021-10-07 discussion.

* Added OrbitDB to early testers.

* Fixing early tester username references.

* Being clear about how to contact early testers.
2021-11-23 14:32:22 -05:00
Dimitris Apostolou
0c2f9d5950
Fix typos (#8548) 2021-11-17 21:16:06 +01:00
Adin Schmahmann
acede6f73c
Examples no longer need go mod replace (#8516)
* chore: bump examples to use v0.10.0
* feat: build examples against released packages instead of using replace directives to refer to the parent repo
* ci: run examples against the latest (unreleased) version of go-ipfs
2021-10-26 11:31:50 -04:00
Marcin Rataj
8b7432d6e8
chore: go-ipfs-files v0.0.9 (#8488)
Closes #8445
Closes #8406
2021-10-05 23:53:52 +02:00
Gus Eggert
0a4e484b4f
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-04 15:47:01 -04:00
Gus Eggert
eaf464c41b
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-04 15:28:17 -04:00
Gus Eggert
e4a5513045
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-01 17:04:10 -04:00
Gus Eggert
86dc88c126
Update RELEASE_ISSUE_TEMPLATE.md 2021-10-01 17:02:25 -04:00
Steve Loeppky
727df2ceaf
Updating chocolatey to reference go-ipfs 2021-10-01 08:12:47 -07:00
Adin Schmahmann
85e30b9b36 fuse: load unixfs adls as their dagpb substrates 2021-09-27 17:50:44 -04:00
Marten Seemann
2589e1f65e enable the legacy mDNS implementation 2021-09-27 17:50:00 -04:00
Adin Schmahmann
5471092d85 chore: update go-path 2021-09-27 15:50:23 -04:00
Marten Seemann
4969ed2b17 chore: update go-libp2p to v0.15.0 2021-09-27 11:12:42 -04:00
Daniel Martí
d6127b062c make json, cbor, and git codecs error on empty input 2021-09-23 13:01:50 -04:00
Gus Eggert
65d570c6cb
chore: update IPFS Desktop testing steps (#8393)
* chore: update IPFS Desktop testing steps

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-09-03 17:49:46 +02:00
Jesse Bouwman
cb189c7b78 go mod tidy ipfs library example
The code example for using IPFS as a library doesn't run unless indirect dependencies are updated:

```
$ go version
go version go1.17 linux/amd64
$ uname -a
Linux home 4.19.0-17-amd64 #1 SMP Debian 4.19.194-3 (2021-07-18) x86_64 GNU/Linux
$ go run main.go
go: github.com/ipfs/go-ipfs@v0.9.1 requires
	github.com/ipfs/go-bitswap@v0.4.0: missing go.sum entry; to add it:
	go mod download github.com/ipfs/go-bitswap
go: github.com/ipfs/go-ipfs@v0.9.1 requires
	github.com/ipfs/go-bitswap@v0.4.0: missing go.sum entry; to add it:
	go mod download github.com/ipfs/go-bitswap
```

Remedied by:

```
$ go mod tidy
$ go run main.go
-- Getting an IPFS node running --
Spawning node on a temporary repo
    ...
```

Also, require go version 1.16, otherwise, example can fail under go
1.15 with errors like:

```
go build github.com/lucas-clemente/quic-go/internal/qtls:
    build constraints exclude all Go files in
    /home/jbouwman/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.23.0/internal/qtls
```
2021-08-30 09:00:39 -07:00
Petar Maymounkov
c9cc09f6f7
Cosmetic fixups in examples (#8325)
* test the examples in CI
* combine the two examples into a single one
2021-08-27 11:55:26 -04:00
Adin Schmahmann
7448340d20
support bitswap configurability (#8268)
* feat: extract Bitswap fx initialization to its own file
* chore: bump go-bitswap dependency
* feat: bump go-ipfs-config dependency and utilize the new Internal.Bitswap configuration options. Add documentation around the new OptionalInteger config type as well as the Internal.Bitswap options.
* docs(docs/config.md): move the table of contents towards the top of the document and update it

Co-authored-by: Petar Maymounkov <petarm@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Gus Eggert <877588+guseggert@users.noreply.github.com>
2021-08-18 14:15:16 -04:00
Gus Eggert
679c004a46 Merge branch 'master' into update-go-on-ci-guseggert 2021-08-16 15:24:34 -04:00
Marcin Rataj
6e610066f6
fix: macos notarized fs-repo-migrations (#8333)
Uses: https://github.com/ipfs/distributions/pull/381
Closes #8240
2021-08-12 18:52:23 +02:00