Commit Graph

36 Commits

Author SHA1 Message Date
Jorropo
8114573933 core/commands/pin: fix incorrect pointer type in encoder 2023-06-05 11:49:13 +02:00
Jorropo
a2c66abc52 pinning: fix pin listings 2023-06-02 18:55:36 +02:00
Jorropo
9b63ab6da6 client/rpc: bring up to speed with streaming pins 2023-06-02 16:55:51 +02:00
Michael Muré
a197125b8f
pin: follow async pinner changes
See https://github.com/ipfs/boxo/pull/290

This PR follow the changes in the Pinner to make listing recursive and direct pins asynchronous, which in turns allow pin/ls to build and emit results without having to wait anything, or accumulate too much in memory.

Note: there is a tradeoff for pin/ls?type=all:
- keep the recursive pins in memory (which I chose)
- ask the pinner twice for the recursive pins, and limit memory usage

Also, follow the changes in the GC with similar benefit of not having to wait the full pin list. Add a test.
Also, follow the changes in pin.Verify.
2023-05-05 17:51:35 +02:00
Jorropo
3ab1086f71 chore: migrate go-libipfs to boxo
Resolves #9677, #9676, #9675, #9736
2023-03-28 22:05:25 -04:00
Marcin Rataj
b7a19d057e docs: pin remote arg
It accepts only one arg.
2022-10-14 21:16:36 +02:00
Gus Eggert
e550d9e476
ci: add stylecheck to golangci-lint (#9334) 2022-10-06 10:18:40 -04:00
Jorropo
196887cbe5 chore: bump go-libp2p v0.22.0 & go1.18&go1.19
Fixes: #9225
2022-09-09 17:09:38 +02:00
Marcin Rataj
82467bc936 refactor: rename to kubo 2022-07-06 18:40:37 +02:00
@RubenKelevra
17bb829235
'pin rm' helptext: rewrite description as object is not removed from local storage (immediately) 2022-05-06 15:56:30 +02:00
Laurent Senta
8d549f03f3 fix: rewrite dependencies over the go-ipfs-config package 2022-03-04 09:45:16 +01:00
Feiran Yang
e93d6fbfb1
feat: warn user when 'pin remote add' while offline (#8621)
* feat: add warning message when the local node is offline for remote pinning

* feat: check is node is online

* feat: add test in t0700-remotepin.sh

* feat: use grep and fix the test

* fix: print to stdout only when --enc=text

This ensures we don't break JSON produced by --enc=json

Co-authored-by: Marcin Rataj <lidel@lidel.org>
2022-02-15 17:19:53 -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
Brian Strauch
5ad04176b1
Improve peer hints for pin remote add (#8143)
* improve peer hints in pin.origins
2021-06-25 08:10:04 -07:00
Steven Allen
c1a0eb567a
Merge pull request #8023 from ipfs/fix/pins-null
fix: omit empty pins slice when reporting pin progress
2021-04-28 11:28:30 -07:00
gammazero
8eefcce4a1 Add info to "pin rm" help about how to tell if a pin is indirectly pinned.
Addresses issue #7440
2021-04-01 18:33:18 -07:00
Steven Allen
efa55e02a5 fix: omit empty pins slice when reporting pin progress
Otherwise, we get messages of the form `{Pins: null, Progress: 100}`.
After this change, we'll get `{Progress: 100}`.
2021-03-24 20:29:11 -07:00
Marcin Rataj
0ff1cf33aa
docs: cosmetic fixes of help text
Unfortunately, API docs are genereted from go-ipfs sources
via https://github.com/ipfs/http-api-docs
so it all gets lost when API docs for new version are re-generated.

This re-applies manual fixes from:
https://docs.ipfs.io/reference/http/api/
so the next time http-api-docs are re-generated, those changes stay.
2021-03-24 17:41:14 +01:00
Adin Schmahmann
83d94d26d9
fix: correctly return pin ls errors 2021-02-25 15:56:18 -05:00
Daniel Martí
17d533909b all: gofmt -s
This "simplify" flag mainly removes redundant types in expressions.

Not particularly important, but a nice change that also makes gopls not
show warnings.
2021-02-05 14:26:08 +00:00
Petar Maymounkov
8794928c31
add remote pinning policy for mfs (#7798)
* remote pinning service MFS policy
* update go-ipfs-config
* hardening secret sanitization in `ipfs config` commands

Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-01-28 18:58:44 -05:00
Adin Schmahmann
3e7a105676
Merge pull request #7887 from ipfs/docs/clarify-repeated-options
docs: comma delimited options in pin remote --help
2021-01-28 13:31:24 -05:00
Marcin Rataj
3bca93787a
docs: comma delimited options in pin remote --help
This adds clarification suggested in
https://github.com/ipfs/go-ipfs/pull/7823#pullrequestreview-577889138
2021-01-28 17:23:46 +01:00
Adin Schmahmann
61f3a2f3a2 fix: restrict remote pinning service endpoint URIs to HTTP/HTTPS 2021-01-27 19:28:58 -05:00
Marcin Rataj
fc4095cfb3 refactor: url → endpoint
https://github.com/ipfs/go-ipfs/pull/7828#discussion_r543520089
2021-01-27 19:28:58 -05:00
Marcin Rataj
7313a45bc7 fix: url.RawFragment does not work in go1.14
I don't think we need to worry about #hash, so just removed it
2021-01-27 19:28:58 -05:00
Marcin Rataj
6851ede8eb refactor: normalization with path.Clean 2021-01-27 19:28:58 -05:00
Marcin Rataj
5f692a76de fix: normalize remote service endpoint
Closes #7826
2021-01-27 19:28:54 -05:00
Marcin Rataj
0b6912e3b3 refactor: cleanup arg params 2021-01-27 23:55:09 +01:00
Marcin Rataj
1cb90d7109 docs: pin remote readability
Co-authored-by: Jessica Schilling <jessica@protocol.ai>
2021-01-27 23:55:07 +01:00
Marcin Rataj
3b82dd8e55 docs: CLI docs for pin remote commands
This adds docs in form of longer description that is displayed
when --help is passes on the CLI.

While at it, unified some language to match fields in the config file
and other places + included some tips and best practices which should
improve onboarding experience.
2021-01-27 23:53:41 +01:00
Adin Schmahmann
a95a86ed54 feat: ipfs pin remote ls commands are comma delimited on the CLI only 2021-01-27 12:07:44 -05:00
Adin Schmahmann
7588a6a52a
Merge pull request #7829 from ipfs/fix/pin-remote-service-ls-json
fix: remote services ls always return a list
2021-01-14 17:37:40 -05:00
gammazero
7193f950d7 Escape non-printable characters in user output
Replaces control characters and non-printable characters with escape sequences, in any fields that are printed by the CLI, which could have been user input.

Output from `ipfs cat` is unchanged.
2020-12-17 18:16:34 -08:00
Marcin Rataj
4d52bbdde8
fix: remote services ls always return a list
Closes #7824
2020-12-15 00:42:18 +01:00
Petar Maymounkov
a8c7980721
add remote pinning to ipfs command (#7661)
Added support for remote pinning services

A pinning service is a service that accepts CIDs from a user in order to host the data associated with them.
The spec for these services is defined at https://github.com/ipfs/pinning-services-api-spec

Support is available via the `ipfs pin remote` CLI and the corresponding HTTP API

Co-authored-by: Petar Maymounkov <petarm@gmail.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
2020-12-08 20:32:33 -05:00