Commit Graph

1651 Commits

Author SHA1 Message Date
Brian Tiger Chow
c99e9e6000 feat(details) add funcs to negate negations
not immediately useful, but nice to have

tagging you to make sure i didn't make a mistake here @jbenet

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
5c4fa5a783 feat(tour) show list of topics when user tries to view topic that doesn't exist
eg.

```
ipfs2 (cmd-ref-part2) λ. go build ./...; ./ipfs2 tour 0

Tour 0 - Hello Mars

Hello Mars

ipfs2 (cmd-ref-part2) λ. go build ./...; ./ipfs2 tour 10

ERROR
    no topic with id: 10

TOPICS

    0 - Hello Mars
    0.1 - Hello Mars 2

```
2014-11-14 03:20:07 -08:00
Juan Batiz-Benet
afa5eedb44 cmds2: commandShouldRunOnDaemon
This commit adds the pretty-complicated decision function
to check whether a command should run on the daemon.

@maybebtc @mappum double check the logic?
2014-11-14 03:20:07 -08:00
Juan Batiz-Benet
bb8d4ebd6b cmds2: cmdDetailsMap 2014-11-14 03:20:07 -08:00
Brian Tiger Chow
ef0826acd6 fix(commands/err)
I didn't know there were dragons here.

When casting errors we've gotta be careful. Apparently both values and
pointers satisfy the error interface. Type checking for one doesn't
catch the other.

cc @whyrusleeping @mappum @jbenet

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
ca2828f33c feat(commands) add ClientError(msg) helper and use it to return a fancy error to the client in the tour
@jbenet this exists now

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
c5e75f91a6 tests(2/main) errClient
Discovered this quirk about interfaces.

@whyrusleeping
@mappum
@jbenet

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
0a93f9d764 style(tour) newline at the end
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:06 -08:00
Matt Bell
db361d9403 commands/cli: Made Parse return an error if request has unrecognized options 2014-11-14 03:20:06 -08:00
Matt Bell
120ead26f4 resolve: Added a TODO 2014-11-14 03:20:06 -08:00
Matt Bell
e35453c50d mount: Cleaned up option descriptions 2014-11-14 03:20:06 -08:00
Matt Bell
815efdb125 daemon: Added a ShortDescription 2014-11-14 03:20:06 -08:00
Brian Tiger Chow
ff6c4ce6a4 test(tour) ensure template renders without failure
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:06 -08:00
Brian Tiger Chow
a00da7b728 add debug log statement
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:06 -08:00
Juan Batiz-Benet
89ec480ef1 cmds2: bootstrap command fix add 2014-11-14 03:20:06 -08:00
Juan Batiz-Benet
047d2e2d62 cmd2: Marshaller -> Marshaler (see golang/encoding)
Also:
- map[cmds.EncodingType]cmds.Marshaller -> MarshalMap

cc @mappum @maybebtc
2014-11-14 03:20:05 -08:00
Juan Batiz-Benet
0f7757c6fa subcmd2: added synopsis to bootstrap 2014-11-14 03:20:05 -08:00
Matt Bell
3b407c705d commands: Ensure command output is correct type (if cmd.Type is set), resolves #321 2014-11-14 03:20:05 -08:00
Matt Bell
c973776049 main: Fixed logical error in remote/local check 2014-11-14 03:20:05 -08:00
Juan Batiz-Benet
81b3680908 cmds2: aligned subcmd text 2014-11-14 03:20:05 -08:00
Matt Bell
2a2ec747d5 core/commands2: Removed unused options from 'config', and fixed synopsis syntax 2014-11-14 03:20:05 -08:00
Matt Bell
646920b0dd commands: Got rid of old helptext fields, use HelpText struct fields in helptext generator 2014-11-14 03:20:05 -08:00
Matt Bell
e700b16576 Ported remaining command helptext to HelpText struct 2014-11-14 03:20:05 -08:00
Brian Tiger Chow
6597a5f7fe fix(2/ls) require arg
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Brian Tiger Chow
e6c5fc250c docs(commands) todo
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Brian Tiger Chow
562500491f test(commands/parse) take args instead of cmd for easier testing
@mappum

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Matt Bell
28306a49c4 commands/cli,http: Properly preserve argument value count when checking argument validity 2014-11-14 03:20:04 -08:00
Matt Bell
b4735eb10b main: Test if commands are local-only when choosing daemon vs. local 2014-11-14 03:20:04 -08:00
Brian Tiger Chow
27b9aec370 style(commands/cli/helptext) use helper function to cut down on
boilerplate

I know you'll love this one @mappum

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Brian Tiger Chow
5a9de188d7 fix(commands/request) return err when unable to load config/node due to
nil function

cc @jbenet @mappum

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Brian Tiger Chow
131c15e924 fix(2/log) use 'all' as the specifier to set all log levels
fixes #322

cc @mappum

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Brian Tiger Chow
fb187e49e3 test(2/diag) test print diagnostics
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:04 -08:00
Matt Bell
188bf779db Removed cmdInvocation.root 2014-11-14 03:20:03 -08:00
Matt Bell
7f24a9965f core/commands: Ported commands to use HelpText struct for helptext fields 2014-11-14 03:20:03 -08:00
Matt Bell
9afb85714a commands/cli: Don't return root in Parse 2014-11-14 03:20:03 -08:00
Matt Bell
b7b15b8b30 cmd/ipfs2: Added isLocal function for testing if a command is local only 2014-11-14 03:20:03 -08:00
Matt Bell
2dd6f24157 core/commands2: Refactored some commands to HelpText struct for helptext fields 2014-11-14 03:20:03 -08:00
Matt Bell
2fd8f39c65 cmd/ipfs2: Added comments to explain purpose of CLI root 2014-11-14 03:20:03 -08:00
Juan Batiz-Benet
1342575d24 cmds2/commands: better sorting 2014-11-14 03:20:03 -08:00
Juan Batiz-Benet
7daf888902 cmds2: handle error return codes 2014-11-14 03:20:03 -08:00
Juan Batiz-Benet
d18902df27 cmds2: changed how the ctx.Node works 2014-11-14 03:20:02 -08:00
Brian Tiger Chow
9eccce1f93 fix(2/diag) match ipfs output
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
3352aeee15 cmds2: fixed show help on root + noncallable 2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
c46d4c8953 cmd2 fixed config panic
The way the current marshallers marshal out output requires
a ton of error checking. I wish there was a way to have the
library call our marshaller with the right type (rather
than an interface). Maybe can do this with Reflect someday.
2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
f738e899c2 cmd2: simplified main
Attention @maybebtc @mappum

I cleaned up + simplified the main flow. Now, all printing
is contained inside main itself! (:cheer:). I do this with
the help of a cmdInvocation struct that has both
a Parse and Run. The only major clunkiness left is that the
"CallCommand" is still its own function. But *shrug*.

Please test it works as we would expect. i changed much of
the flow, so likely that i missed a complicated edge case.

main roadmap:
- parse the commandline to get a cmdInvocation
- if user requests, help, print it and exit.
- run the command invocation
- output the response
- if anything fails, print error, maybe with help
2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
973a8f5cb1 cmds2: commands 2014-11-14 03:20:02 -08:00
Matt Bell
3e7592f2cc commands/cli: Sort options by length when generating options helptext 2014-11-14 03:20:02 -08:00
Matt Bell
e41f861f8a commands/cli: Added some TODOs to Parse 2014-11-14 03:20:02 -08:00
Matt Bell
092524fcbb cmd/ipfs2: Added a 'commands' command for CLI root 2014-11-14 03:20:01 -08:00
Matt Bell
f797d13579 core/commands2: Added function to generate a 'commands' command for a root 2014-11-14 03:20:01 -08:00