This is a cosmetic change to 'ipfs --help' that
reorders operations to prioritize 'dag' and 'files' over legacy 'object'.
Context: https://github.com/ipfs/go-ipfs/issues/7936
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.
Namesys is a very useful submodule. Given a ValueStore and a Datastore it can
resolve and publish /ipns/ paths.
This functionality does not need to be sequestered inside go-ipfs as it can
and should be used without IPFS, for example, for implementing lightweight
IPNS publishing services or for resolving /ipns/ paths.
"keystore" extraction was necessary, as there is a dependency to it in
namesys. Keystore is also a useful module by itself within the stack.
Fixes#6537
This "simplify" flag mainly removes redundant types in expressions.
Not particularly important, but a nice change that also makes gopls not
show warnings.
* Improve error message when running key commands that must be run when the daemon is not already running
Fixes Issue #7814
`ipfs key export` now does a PreRun check like `ipfs key rotate` was to give a better error to the user then "someone else has the lock" in the event that the daemon is running while trying to execute these offline-only commands.
While unlikely the "someone else has the lock" error can still be shown if two processes try and grab the repo lock at the same time.
This PreRun function is also exported so it can be used by `ipfs init` where it was originally copied from.
* Added more `ipfs key` command tests
When daemon is running:
- Test that import works
- Test that export fails
- Test that rotate fails
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.
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.
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>