* reduces help indent from 4 to 2 spaces
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* reduces horz/vert space taken by "ipfs" cmd
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* show subcommands on shorthelp
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Drops colons at the end of cmd headings.
This makes command headings consistent with the output of 'ipfs', which
does not include colons.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* more consistent output between short-/long-help
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Puts DESCRIPTION before SUBCOMMANDS.
Users likely want to understand what a command does before worrying
about its subcommands.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Keeps ipfs cmd from outputting its subcmds twice.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant synopsis from "file"
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes extra whitespace from longhelp
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Consistent spacing whether SUBCMDS or not.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant SUBCMD output from ipfs object.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant synopsis from "name"
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Newline after Description only if it exists.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant synopsis from "bootstrap"
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant synopsis from "swarm"
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes trailing newline in ping help.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Prints shorthelp on parse error.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* tiny comment fixes
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* updates README usage
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Don't include extra whitespace if no .MoreHelp
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* description improvements
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Hides the obscure 'file' subcommand.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Splits 'ipfs daemon' into Short and Long help.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes redundant synopsis from "config"
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Wraps lines to keep from going over 80.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* specify repo separately
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* s/structure/hierarchy
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* missing .
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes trailing colon from 'usage' test.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Updates sharness test error messages.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes trailing colon from 'usage' test.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Updates add-symlink to use /bin/sh.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Removes "hierarchy".
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Updates "ipfs ping" synopsis.
* Updates t0040 with latest wording.
* Removes unnecessary daemon setup.
License: MIT
Signed-off-by: Stephen Whitmore <noffle@ipfs.io>
* Adds repo fsck subcommand
Fixes#2457
License: MIT
Signed-off-by: Mike Pfister <pfista@gmail.com>
* Checks for error on file deletion
License: MIT
Signed-off-by: Mike Pfister <pfista@gmail.com>
* Checks if node is online
License: MIT
Signed-off-by: Mike Pfister <pfista@gmail.com>
* Update error checking
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Prevents command from running while daemon is running
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Add newline to command output message
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* removing superfluous error
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Adds sharness test for repo fsck command
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Ignore warning if file doesn't exist
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Updating message output
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* adding debug statements
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* update and add fsck sharness tests
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* updating comments
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* Use printf in test
Using printf prevents a newline from being printed to the api test file. When
the newline was present, multiaddr threw errors trying to parse the api address
to an integer since the newline character was present.
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* updating tests
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
* removing commented code
License: MIT
Signed-off-by: Michael Pfister <pfista@gmail.com>
For the rest of the packages in util, move them to thirdparty
and update the references. util is gone!
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
misc/completion/ipfs-completion.bash: add `ipfs stats` to BASH completion
core/commands/mount_unix.go: ensure error is not nil before printing it
contribute.md: fix bibliography indexing in example
core/commands/swarm.go: change tabs to spaces in USAGE message
*: 80-column readability improvements
License: MIT
Signed-off-by: Thomas Gardner <tmg@fastmail.com>
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
rewrite path to filepath in fsrepo
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
remove api file on repo close
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
update function to check normal net.OpErrors
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
The first run does not try to connect to API, as an address is not
yet saved in configuration. The second run did not recognize
corrently a refused connection.
Fixes#1661.
License: MIT
Signed-off-by: Marcin Janczyk <marcinjanczyk@gmail.com>
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
use NewNode instead of NewIPFSNode in most of the codebase
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
make mocknet work with node constructor better
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
finish cleanup of old construction method
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
blockservice.New doesnt return an error anymore
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
break up node construction into separate function
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
add error case to default filling on node constructor
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
This commit adds support for the --api option, which allows users
to specify an API endpoint to run the cli command against. It enables
much easier control of remote daemons.
It also
- ensures the API server version matches the API client
- implements support for the $IPFS_PATH/api file
Still TODO:
- tests!
- multiaddr to support /dns/
License: MIT
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
Except when there is an explicit os.Exit(1) after the Critical line,
then replace with Fatal{,f}.
golang's log and logrus already call os.Exit(1) by default with Fatal.
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
Instead of just terminating right there and then, we cancel the
context, and let the daemon exit cleanly. This make take a few
seconds, as the node builder and its child processes do not
care too much about the context state while building nodes,
but this can be improved by injecting checks for ctx.Done()
before time-consuming steps.
Instead of assuming the command is the daemon command and closing
the node, which resulted in bugs like #1053, we cancel the context
and let the context children detect the cancellation and gracefully
clean up after themselves.
The shutdown logging has been moved into the daemon command, where
it makes more sense, so that commands like ping will not print out
the same output on cancellation.
If a command invocation such as 'daemon' is interrupted, the interrupt
handler asks the node to close. The closing of the node will result in
the command invocation finishing, and possibly returning from main()
before the interrupt handler is done. In particular, the info logging
that a graceful shutdown was completed may never reach reach stdout.
As the whole point of logging "Gracefully shut down." is to give
confidence when debugging that the shutdown was clean, this is
slightly unfortunate.
The interrupt handler needs to be set up in main() instead of Run(),
so that we can defer the closing of the interrupt handler until just
before returning from main, not when Run() returns with a streaming
result reader.
This reverts commit f74e71f965.
The 'Online' flag of the command context does not seem to be set in
any code paths, at least not when running commands such as 'ipfs daemon'
or 'ipfs ping'. The result after f74e71f9 is that we never shutdown
cleanly, as we'll always os.Exit(0) from the interrupt handler.
The os.Exit(0) itself is also dubious, as conceptually the interrupt
handler should ask whatever is stalling to stop stalling, so that
main() can return like normal. Exiting with -1 in error cases where
the interrupt handler is unable to stop the stall is fine, but the
normal case of interrupting cleanly should exit through main().
We now consider debugerrors harmful: we've run into cases where
debugerror.Wrap() hid valuable error information (err == io.EOF?).
I've removed them from the main code, but left them in some tests.
Go errors are lacking, but unfortunately, this isn't the solution.
It is possible that debugerros.New or debugerrors.Errorf should
remain still (i.e. only remove debugerrors.Wrap) but we don't use
these errors often enough to keep.