Commit Graph

241 Commits

Author SHA1 Message Date
Marcin Rataj
f994d94025 docs(readme): update min. requirements + cleanup (#10750)
* docs(readme): update min. requirements + cleanup

Adding note about extra memory requirement due to
ba22102a64

* docs(config): memory cost of buffered provider

Co-authored-by: Daniel Norman <1992255+2color@users.noreply.github.com>
(cherry picked from commit 96f3007b55)
2025-03-14 18:21:31 +01:00
Marcin Rataj
5a3ec3a728
docs(config): add security considerations for rpc (#10739)
Some checks are pending
CodeQL / codeql (push) Waiting to run
Docker Build / docker-build (push) Waiting to run
Gateway Conformance / gateway-conformance (push) Waiting to run
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Waiting to run
Go Build / go-build (push) Waiting to run
Go Check / go-check (push) Waiting to run
Go Lint / go-lint (push) Waiting to run
Go Test / go-test (push) Waiting to run
Interop / interop-prep (push) Waiting to run
Interop / helia-interop (push) Blocked by required conditions
Interop / ipfs-webui (push) Blocked by required conditions
Sharness / sharness-test (push) Waiting to run
Spell Check / spellcheck (push) Waiting to run
* docs(config): add security considerations for rpc

we already had big red box at
https://docs.ipfs.tech/reference/kubo/rpc/,
however users reading kubo docs could miss it.

this ensures it is not possible to miss these basic notes.
2025-03-04 21:12:15 +01:00
Marcin Rataj
d6a5bc0b68
feat(AutoTLS): enabled by default with 1h RegistrationDelay (#10724)
Enables AutoTLS by default, but delays registration by 1h
if user did not explicitly set `AutoTLS.Enabled` to `true`
2025-02-25 22:25:58 +01:00
Marcin Rataj
b4b5d78f26
docs: 0.33.0 2025-01-29 21:42:45 +01:00
Marcin Rataj
00cb38865f fix(autotls): renewal and AutoTLS.ShortAddrs (#10669)
* fix(autotls): renewal and AutoTLS.ShortAddrs

updates to p2p-forge/client with fix from
https://github.com/ipshipyard/p2p-forge/pull/42

we also add AutoTLS.ShortAddrs flag and enable it by default
to benefit from shorter addrs discusses in
https://github.com/ipshipyard/p2p-forge/pull/40

* test: fix flaky NewRandPort

reducing chance of bind: address already in use

(cherry picked from commit 256a739e3b)
2025-01-22 17:41:03 +01:00
Marcin Rataj
6aa7d99fe4 fix(dns): update default DNSLink resolvers (#10655)
* fix(dns): update default DNSLink resolvers

Depends on
- https://github.com/ipfs/boxo/pull/781
- https://github.com/ipfs/boxo/pull/782

* chore: latest boxo main and go-doh-resolver v0.5.0

makes error message better, informing which URL failled

* chore: p2p-forge v0.2.1+

this removes acmez/v2 and fixes go vet

* chore: latest boxo with DoH fixes

commit from main branch that includes:
https://github.com/ipfs/boxo/pull/645
https://github.com/ipfs/boxo/pull/782
https://github.com/ipfs/boxo/pull/781

(cherry picked from commit b021a00bf6)
2025-01-14 22:24:04 +01:00
Andrew Gillis
53792003bd collection of typo fixes (#10647)
(cherry picked from commit 9425421114)
2025-01-13 18:55:10 +01:00
Adin Schmahmann
397c346ae0
feat(libp2p): shared TCP listeners and AutoTLS.AutoWSS (#10565)
Some checks are pending
CodeQL / codeql (push) Waiting to run
Docker Build / docker-build (push) Waiting to run
Gateway Conformance / gateway-conformance (push) Waiting to run
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Waiting to run
Go Build / go-build (push) Waiting to run
Go Check / go-check (push) Waiting to run
Go Lint / go-lint (push) Waiting to run
Go Test / go-test (push) Waiting to run
Interop / interop-prep (push) Waiting to run
Interop / helia-interop (push) Blocked by required conditions
Interop / ipfs-webui (push) Blocked by required conditions
Sharness / sharness-test (push) Waiting to run
* feat(libp2p): enable shared TCP listeners

* docs: switch mentions of /ws to /tcp/4001

* feat: AutoTLS.AutoWSS

This adds AutoTLS.AutoWSS flag that is set to true by default.

It will check if Addresses.Swarm contain explicit /ws listener,
and if not found, it will append one per every /tcp listener

This way existing TCP ports are reused without any extra configuration,
but we don't break user's who have custom / explicit /ws listener
already.

I also moved logger around, to include Addresses.Swarm inspection
results in `autotls` logger.

* chore: go-libp2p v0.38.1

https://github.com/libp2p/go-libp2p/releases/tag/v0.38.0
https://github.com/libp2p/go-libp2p/releases/tag/v0.38.1

* docs: AutoTLS.AutoWSS and go-libp2p v0.38.x

* chore: p2p-forge/client v0.2.0

https://github.com/ipshipyard/p2p-forge/releases/tag/v0.2.0

* fix: disable libp2p.ShareTCPListener() in PNET

* chore(ci): timeout sharness after 15m

average successful run is  <9 minutes, no need to wait for 20
https://github.com/ipfs/kubo/actions/workflows/sharness.yml?query=is%3Asuccess

---------

Co-authored-by: Andrew Gillis <11790789+gammazero@users.noreply.github.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-12-20 18:41:25 +01:00
Marcin Rataj
295fd96bd0
docs: clarify Swarm.ResourceMgr.MaxMemory (#10622)
related to ux problem described in #10621
2024-12-20 00:48:21 +01:00
Hector Sanjuan
519ae27dce
feat: expose BlockKeyCacheSize and enable WriteThrough datastore options (#10614)
* feat: expose BlockKeyCacheSize and enable WriteThrough when bloom filter disabled
* import/config: add BatchMaxSize and BatchMaxNodes
* config: make BlockKeyCacheSize an OptionalInteger
* config: add and wire datastore.WriteThrough option
* config: omitempty on BlockKeyCacheSize
* changelog: rewrite entry about new options for the datastore
* config: add docs for BatchMaxNodes and BatchMaxSize
* config: make WriteThrough an optional Flag
* changelog: improve description of new datastore/import options
* refactor: DefaultWriteThrough as bool
* chore: boxo v0.26.0
* docs: config and changelog fixes
2024-12-19 23:12:05 +00:00
Hector Sanjuan
466f72f518
docs: typos (#10602) 2024-11-26 19:19:48 +01:00
Marcin Rataj
0bd0edc782
feat(bootstrap): add JS-based va1.bootstrap.libp2p.io (#10575)
Some checks failed
Docker Build / docker-build (push) Waiting to run
Gateway Conformance / gateway-conformance (push) Waiting to run
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Waiting to run
Go Build / go-build (push) Waiting to run
Go Check / go-check (push) Waiting to run
Go Lint / go-lint (push) Waiting to run
Go Test / go-test (push) Waiting to run
Interop / interop-prep (push) Waiting to run
Interop / helia-interop (push) Blocked by required conditions
Interop / ipfs-webui (push) Blocked by required conditions
Sharness / sharness-test (push) Waiting to run
CodeQL / codeql (push) Has been cancelled
* feat(bootstrap): /dnsaddr/va1.bootstrap.libp2p.io

this adds
https://github.com/libp2p/js-libp2p-amino-dht-bootstrapper
instance at /dnsaddr/va1.bootstrap.libp2p.io
to ensure Kubo does not depend on single language stack
for initial bootstrap

* docs: document where defaults live

* test: updated bootstrappers
2024-11-25 09:04:53 -08:00
Bryer
d506003913
Typos Update config.md (#10591)
Some checks failed
CodeQL / codeql (push) Has been cancelled
Docker Build / docker-build (push) Has been cancelled
Gateway Conformance / gateway-conformance (push) Has been cancelled
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Has been cancelled
Go Build / go-build (push) Has been cancelled
Go Check / go-check (push) Has been cancelled
Go Lint / go-lint (push) Has been cancelled
Go Test / go-test (push) Has been cancelled
Interop / interop-prep (push) Has been cancelled
Sharness / sharness-test (push) Has been cancelled
Interop / helia-interop (push) Has been cancelled
Interop / ipfs-webui (push) Has been cancelled
Fix Typos and Improve Clarity in Documentation
2024-11-19 09:40:25 -08:00
Adin Schmahmann
1ca0ae0af6
fix(autotls): store certificates at the location from the repo path (#10566)
Some checks failed
CodeQL / codeql (push) Has been cancelled
Docker Build / docker-build (push) Has been cancelled
Gateway Conformance / gateway-conformance (push) Has been cancelled
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Has been cancelled
Go Build / go-build (push) Has been cancelled
Go Check / go-check (push) Has been cancelled
Go Lint / go-lint (push) Has been cancelled
Go Test / go-test (push) Has been cancelled
Interop / interop-prep (push) Has been cancelled
Sharness / sharness-test (push) Has been cancelled
Interop / helia-interop (push) Has been cancelled
Interop / ipfs-webui (push) Has been cancelled
* fix(autotls): store certificates at the location from the repo path
* docs(autotls): cert storale and other caveats

---------

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-10-30 23:23:33 +01:00
Daniel Norman
caa88440cd
docs(autotls): add note about separate port use (#10562)
Co-authored-by: Daniel N <2color@users.noreply.github.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-10-30 17:36:43 +01:00
Adin Schmahmann
3134fd246e
feat(AutoTLS): opt-in WSS certs from p2p-forge at libp2p.direct (#10521)
Some checks are pending
CodeQL / codeql (push) Waiting to run
Docker Build / docker-build (push) Waiting to run
Gateway Conformance / gateway-conformance (push) Waiting to run
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Waiting to run
Go Build / go-build (push) Waiting to run
Go Check / go-check (push) Waiting to run
Go Lint / go-lint (push) Waiting to run
Go Test / go-test (push) Waiting to run
Interop / interop-prep (push) Waiting to run
Interop / helia-interop (push) Blocked by required conditions
Interop / ipfs-webui (push) Blocked by required conditions
Sharness / sharness-test (push) Waiting to run
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-10-29 22:37:33 +01:00
Marco Munizaga
56c68a1657
refactor: update to go-libp2p v0.37.0 (#10554)
Some checks failed
CodeQL / codeql (push) Has been cancelled
Docker Build / docker-build (push) Has been cancelled
Gateway Conformance / gateway-conformance (push) Has been cancelled
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Has been cancelled
Go Build / go-build (push) Has been cancelled
Go Check / go-check (push) Has been cancelled
Go Lint / go-lint (push) Has been cancelled
Go Test / go-test (push) Has been cancelled
Interop / interop-prep (push) Has been cancelled
Sharness / sharness-test (push) Has been cancelled
Interop / helia-interop (push) Has been cancelled
Interop / ipfs-webui (push) Has been cancelled
https://github.com/libp2p/go-libp2p/releases/tag/v0.37.0

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-10-23 01:31:40 +02:00
Marcin Rataj
8913a1c1e5
docs(config): explain what multiaddr is 2024-10-23 00:08:12 +02:00
Andrew Gillis
4566741b22
chore: update changelog and config doc with more info about pebble (#10533)
* Update config doc with more info about Pebble

Provide additional information about some key behaviors that may be useful for deciding what datastore to use.
2024-10-03 15:42:15 -07:00
Andrew Gillis
52b00624cd
feat: pebbleds profile and plugin (#10530)
* include pebble as built-in plugin

Pebble provides a high-performance alternative to leveldb as the datastore, and will serve as a replacement for badger1.

There are a number of tuning parameters available for tuning pebble's performance to your specific needs. Default values are used for any that are not configured or are set to the parameter's zero-value.

Requires https://github.com/ipfs/go-ds-pebble/pull/39

Closes #10347

* docs: remove mention of ipfs-ds-convert. Rationale: https://github.com/ipfs/ipfs-ds-convert/issues/50
* docs: pebbleds profile
* test: meaningful t0025-datastores.sh
* Update config/init.go
* Update docs/config.md
* Do not hard-code zero values into pebble config
2024-10-03 13:58:14 -07:00
Marcin Rataj
a8ecf014a9
feat: explicit announce-on/off profiles (#10524)
moving reprovide on/off to separate profile to avoid footgun
where node no longer announces to DHT + ipfs daemon check
that prints warning on start if reprovide system is disabled
2024-10-03 21:39:52 +02:00
Marcin Rataj
836d51650d
docs: clarify Gateway.PublicGateways (#10525)
* docs: clarify Gateway.PublicGateways
* docs: caution about reusing domains
2024-09-26 19:31:36 +02:00
Marcin Rataj
58434ecbd1
docs(config): add useful references 2024-09-20 15:54:41 +02:00
Marcin Rataj
60588afc9e
docs(config): improve profile descriptions (#10517)
* docs(config): improve profile descriptions
* chore: move profiles and types to the end
2024-09-20 15:40:45 +02:00
Elias Rad
91144f7bfc
Docs fix spelling issues (#10493)
* fix keystore.md
* fix config.md
* fix datastores.md
* fix libp2p-resource-management.md
2024-08-26 11:32:07 -07:00
gammazero
9cc64ef06f Update comment 2024-08-06 20:21:43 -07:00
Andrew Gillis
5c91fe655c
Merge branch 'master' into tls-by-default 2024-08-06 20:16:57 -07:00
Marcin Rataj
ffab7b271a
feat: run AutoNAT V2 service in addition to V1 (#10468)
* feat: libp2p.EnableAutoNATv2

Part of https://github.com/ipfs/kubo/issues/10091
We include a flag that allows shutting down V2 in case there are issues
with it.

* docs: EnableAutoNATv2
2024-08-06 21:51:45 +02:00
Marcin Rataj
feef0851bd
feat: go-libp2p 0.36 and /webrtc-direct listener (#10463)
Co-authored-by: Marco Munizaga <git@marcopolo.io>
2024-08-06 21:25:27 +02:00
Patryk
225dbe6c03
feat: periodic version check and json config (#10438)
Co-authored-by: Lucas Molas <schomatis@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-07-24 23:42:19 +02:00
Henrique Dias
8022e13a6b
config: introduce Import section (#10421)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-05-14 14:17:04 +00:00
Henrique Dias
6f2a61e1df
core/node: prioritize announcing pin roots, and flat strategy (#10376)
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-04-09 06:37:23 +00:00
Marcin Rataj
413de0f831
docs(config): clarify RPC vs Gateway 2024-04-05 23:53:40 +02:00
Henrique Dias
11183bb2f5
chore: upgrade go-libp2p-kad-dht (#10378)
* chore: upgrade go-libp2p-kad-dht
* config: make LoopbackAddressesOnLanDHT a Flag
* config: add DefaultLoopbackAddressesOnLanDHT
* docs(config): Routing.LoopbackAddressesOnLanDHT

---------

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2024-04-04 12:56:19 +00:00
Henrique Dias
cd78f2eae3
chore(config): make Routing.AcceleratedDHTClient a Flag (#10384) 2024-04-04 13:59:31 +02:00
Daniel Norman
21728eb000 docs: update default ipns lifetime 2024-03-19 13:58:06 +01:00
Marcin Rataj
1514785074
chore: fix link 2024-02-09 17:34:57 +01:00
Marcin Rataj
68f955664a
docs: clarify Gateway.ExposeRoutingAPI (#10337)
* docs: clarify Gateway.ExposeRoutingAPI

Closes #10195

* Apply suggestions from code review

Co-authored-by: Daniel Norman <1992255+2color@users.noreply.github.com>

---------

Co-authored-by: Henrique Dias <mail@hacdias.com>
Co-authored-by: Daniel Norman <1992255+2color@users.noreply.github.com>
2024-02-09 16:07:11 +01:00
Marcin Rataj
f4ff4f76dd docs(config): mention routing v1 spec 2024-02-07 10:57:31 +01:00
Henrique Dias
0ea879b4a1
feat: add Ipns.MaxCacheTTL 2024-01-26 11:20:34 +01:00
Henrique Dias
e166af9756
core/corehttp: wrap gateway with headers, deprecate gateway /api/v0 2024-01-24 09:33:23 +00:00
Henrique Dias
d1db95c447 config: remove all options that are marked as REMOVED
Most of the removed options are many years old. In addition, they've all been removed in past iterations of Kubo. Some options were marked as removed in the config.md, but we still had a warning in the code to let users know they have been removed.

I think it's been long enough for all of this options, and enough Kubo iterations in order to alert the users. It is good to keep it in the config.md for now so that people can actually check. However, I think it's time to remove them from the code itself.
2024-01-22 15:33:27 +01:00
Marcin Rataj
9343a95f4d docs(config): clarify ReproviderStrategy roots 2024-01-12 13:13:29 +01:00
sukun
3ae04c536e docs: clarify WebRTCDirect cannot reuse the same port as QUIC 2023-11-22 10:29:43 +01:00
Jorropo
6a51849c29 libp2p: remove mplex
Fixes: #10069
2023-11-22 08:06:39 +03:00
Jorropo
a617c52f57 libp2p: default to preffering TLS
See https://github.com/libp2p/go-libp2p/pull/2650.
2023-11-22 06:06:15 +01:00
Henrique Dias
01cc5eab57
feat(rpc): Opt-in HTTP RPC API Authorization (#10218)
Context: https://github.com/ipfs/kubo/issues/10187
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-11-17 01:29:29 +01:00
Marcin Rataj
7834a26d03 docs(changelog): clarify webrtc in v0.24
This sets the expectations (not production ready) and
gives users hint how to enable it by adding `/udp/4001/webrtc-direct`
listener.
2023-11-09 09:23:22 +01:00
Jonas Keunecke
f17a064193 docs/config: remove extra commas in PublicGateways example entries 2023-11-06 15:03:57 +01:00
Henrique Dias
884a3f36d4
docs: make it clear Web RTC Direct is experimental 2023-11-03 14:49:35 +01:00