Commit Graph

145 Commits

Author SHA1 Message Date
Adin Schmahmann
287444bc6e chore: update changelog 2023-12-19 19:52:50 -05:00
Jorropo
133feb6efb
Merge branch 'master' into merge-release-v0.25.0 2023-12-14 18:49:34 +01:00
Jorropo
87069b5355 chore: update changelog for v0.25 2023-12-14 14:11:25 +00:00
Henrique Dias
5c31db3a3d
commands: remove several deprecated commands
Removes the following commands: ipfs tar, ipfs urlstore, ipfs repo fsck, ipfs file ls, ipfs dns.
2023-12-12 18:21:52 +01:00
Henrique Dias
8ab2de5ff0
feat: ipfs key sign|verify (#10235) 2023-12-04 09:51:26 +01:00
Russell Dempsey
d882642168
feat: webui v4.2.0 (#10241)
https://github.com/ipfs/ipfs-webui/releases/tag/v4.2.0

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-12-03 22:48:28 +01:00
Jorropo
6a51849c29 libp2p: remove mplex
Fixes: #10069
2023-11-22 08:06:39 +03:00
Jorropo
2b347a914d graphsync: remove support for the server
Updates: #9396
Closes: #6831
Closes: #6208

Currently the Graphsync server is not widely used due to lack of compatible software.
There have been many years yet we are unable to find any production software making use of the graphsync server in Kubo.

There exists some in the filecoin ecosystem but we are not aware of uses with Kubo.
Even in filecoin graphsync is not the only datatransfer solution available like it could have been in the past.

`go-graphsync` is also developped on many concurrent branches.
The specification for graphsync are less clear than the trustless gateway one and lack a complete conformance test suite any implementation can run.
It is not easily extansible either because selectors are too limited for interesting queries without sideloading ADLs, which for now are hardcoded solutions.
Finaly Kubo is consistently one of the fastest software to update to a new go-libp2p release.
This means the burden to track go-libp2p changes in go-graphsync falls on us, else Kubo cannot compile even if almost all users do not use this feature.
We are then removing the graphsync server experiment.

For people who want alternatives we would like you to try the Trustless-Gateway-over-Libp2p experiment instead, the protocol is simpler (request-response-based) and let us reuse both clients and servers with minimal injection in the network layer.
If you think this is a mistake and we should put it back you should try to answer theses points:
- Find a piece of opensource code which uses a graphsync client to download data from Kubo.
- Why is Trustless-Gateway-over-Libp2p not suitable instead ?
- Why is bitswap not suitable instead ?

Implementation details such as go-graphsync performance vs boxo/gateway is not very interesting to us in this discussion unless they are really huge (in the range of 10x~100x+ more) because the gateway code is under high development and we would be interested in fixing theses.
2023-11-22 06:57:45 +03: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
Henrique Dias
9655d92908 chore: create next changelog 2023-11-08 14:03:18 +01:00
Henrique Dias
2d4a20e9cc
chore: update changelog for v0.24 2023-11-08 10:29:26 +01:00
Henrique Dias
a87e305793 docs: make it clear Web RTC Direct is experimental 2023-11-03 14:57:17 +01:00
Henrique Dias
10eb459f84 feat: add WebRTC Direct support 2023-11-03 14:57:17 +01:00
Hector Sanjuan
a0f34b16dd
feat: built-in content blocking based on IPIP-383 (#10161)
Fixes #8492

This introduces "nopfs" as a preloaded plugin into Kubo
with support for denylists from https://github.com/ipfs/specs/pull/383

It automatically makes Kubo watch *.deny files found in:

- /etc/ipfs/denylists
- $XDG_CONFIG_HOME/ipfs/denylists
- $IPFS_PATH/denylists

* test: Gateway.NoFetch and GatewayOverLibp2p

adds missing tests for "no fetch" gateways one can expose,
in both cases the offline mode is done by passing custom
blockservice/exchange into path resolver, which means
global path resolver that has nopfs intercept is not used,
and the content blocking does not happen on these gateways.

* fix: use offline path resolvers where appropriate

this fixes the problem described in
https://github.com/ipfs/kubo/pull/10161#issuecomment-1782175955
by adding explicit offline path resolvers that are backed
by offline exchange, and using them in NoFetch gateways
instead of the default online ones

---------

Co-authored-by: Henrique Dias <hacdias@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2023-10-28 05:34:14 +02:00
Henrique Dias
4695fd9fed
refactor: namesys cleanup, gateway /ipns/ ttl (#10115) 2023-10-18 10:23:50 +02:00
Jorropo
12303012c0
Merge pull request #10166 from ipfs/merge-release-v0.23.0
Merge Release: v0.23.0
2023-10-05 20:47:31 +02:00
Jorropo
c9d1c3bfea chore: update changelog for v0.23 2023-10-05 15:40:42 +00:00
Henrique Dias
bd36a9d06b docs: capitalize headers for consistency
(cherry picked from commit c80a5a867b)
2023-10-05 17:20:17 +02:00
Henrique Dias
c80a5a867b docs: capitalize headers for consistency 2023-10-04 11:55:33 +02:00
Henrique Dias
97527472fe
feat(gateway): update gateway api, no multi-range support 2023-10-02 16:43:52 +02:00
Jorropo
7cca58ea27 changelog: generalize fuse 9044's entry 2023-09-26 11:23:51 +02:00
Jorropo
0f1ec5949e changelog: update fuse 9044's entry 2023-09-25 15:39:55 +02:00
Bernhard M. Wiedemann
7173178799 Update go-unixfsnode to 1.8.0 to fix FUSE
Fixes #9044 regression in 0.13.0 FUSE access to some files
2023-09-25 15:39:55 +02:00
Jorropo
c079a099c0 changelog: mention probelab RFM17.1 dht improvement 2023-09-21 20:14:21 +02:00
Henrique Dias
0bac56c3aa
feat: add Gateway.DisableHTMLErrors option (#10137) 2023-09-21 15:03:17 +00:00
Henrique Dias
4e3008fdf3
docs: add changelog info for QUIC Draft 29 (#10132)
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2023-09-20 13:27:52 +02:00
Jorropo
3f33e61d3a chore: update to go1.21 for gateway over libp2p 2023-09-20 10:47:03 +02:00
Marcin Rataj
dbf6a05f42 docs(changelog): link to relevant IPIP 2023-09-16 22:24:30 +02:00
Marcin Rataj
8d28507814
docs: gateway-http-over-libp2p 2023-09-06 02:57:14 +02:00
Adin Schmahmann
d86192a9bf changelog(gateway-over-libp2p): add gateway-over-libp2p changelog 2023-09-01 16:52:12 -04:00
Henrique Dias
4606586207
feat(gateway): expose /routing/v1 server (opt-in) (#9877) 2023-08-25 17:30:04 +02:00
Henrique Dias
1e5ce93659 fix: use %-encoded headers in most compatible way 2023-08-22 15:43:01 +02:00
Marcin Rataj
733b01a37b
fix(gw): useful IPIP-402 CARs on not found errors (#10084)
Co-authored-by: Henrique Dias <hacdias@gmail.com>
2023-08-18 06:54:08 +00:00
Jorropo
f805b9fcda feat: allow users to optin again into mplex
This is a partial revert of 7220409394.

Closes #9958
2023-08-15 14:53:44 +02:00
Jorropo
7220409394 feat: remove Mplex
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks.

In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux.

Closes #9958
2023-08-15 11:35:45 +02:00
Jorropo
fe94dade32 docs: add v0.23.md 2023-08-14 15:04:36 +02:00
Jorropo
ea4bf382af docs: get ready for v0.23 2023-08-14 15:01:41 +02:00
Marcin Rataj
54ac8124c3
chore: fix link in v0.22 changelog 2023-08-09 20:58:54 +02:00
Jorropo
efa179fce4 changelog: add mkreleaselog for v0.22 2023-08-08 16:42:12 +02:00
Jorropo
f1ec5298a9 Merge branch 'release-v0.21' back into master 2023-08-08 14:18:32 +02:00
Jorropo
61e0779f66 changelog: make v0.21.1 2023-08-08 14:01:19 +02:00
Jorropo
89b0432387 chore: merge release back into master
Needs to include 9db33d3191
2023-07-31 17:13:48 +02:00
Marcin Rataj
afa891b0ed
docs: changelog v0.21 fixes (#10037)
Co-authored-by: Jorropo <jorropo.pgm@gmail.com>
2023-07-27 20:14:30 +02:00
Jorropo
149190c5a6 chore: update changelog for v0.22 2023-07-27 11:55:23 +00:00
Jorropo
6be6630e4e libp2p: stop reporting ProtocolVersion 2023-07-26 14:48:19 +02:00
Jorropo
9c02eecad7
fix: mark all routers DoNotWaitForSearchValue (#10020)
* fix: mark ipns pubsub router DoNotWaitForSearchValue

That means if the DHT has finished searching and no one responded over pubsub *yet*, we will not spend 1 minute searching for no reason.

This also include other error handling bug fixes inside `go-libp2p-routing-helpers`.

Fixes: #9927

* routing: bring back the old IPNS behaviour

Stop making this configurable let everything race like it used to do.
2023-07-25 19:39:21 +02:00
Henrique Dias
a8c63537f2
feat(gateway): support for ipip-412 parameters 2023-07-24 11:09:09 +02:00
Henrique Dias
0c890de400
Merge branch 'master' into merge-release-v0.21.0 2023-07-03 13:24:34 +02:00
Henrique Dias
4d5f2b89e9 chore: update changelog for v0.21 2023-06-29 15:13:51 +00:00