Commit Graph

239 Commits

Author SHA1 Message Date
Matt Bell
3a9a62eb0e commands/cli: Open file paths when parsing and use in request.Files() 2014-11-18 02:13:53 -08:00
Matt Bell
132e740257 commands/http: Send req.Files() as multipart 2014-11-18 02:13:53 -08:00
Matt Bell
53735263c2 commands/http: Parse multipart files into req.Files() 2014-11-18 02:13:53 -08:00
Matt Bell
4b9fa9c97c commands/http: Use constants for header names 2014-11-18 02:13:53 -08:00
Matt Bell
1c8d73f9ea commands: Added Request#Files() 2014-11-18 02:13:53 -08:00
Matt Bell
fdb71eb5dc commands: Added MultiFileReader (read a File as multipart data) 2014-11-18 02:13:53 -08:00
Matt Bell
02c7c329aa commands: Added File interface and implementations 2014-11-18 02:13:53 -08:00
Juan Batiz-Benet
45cc33b1ff Merge pull request #354 from chriscool/improve_help_messages
Improve help messages
2014-11-17 14:25:39 -08:00
Christian Couder
288ee753c0 Remove 'SYNOPSIS' from short help text
It takes some space and it looks like it
applies to the description too.

License: MIT
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
2014-11-17 21:08:56 +01:00
Matt Bell
abb8374d43 commands: NewRequest: Documented error case 2014-11-17 00:00:16 -08:00
Matt Bell
3c5bfcec31 commands: Fixed tests 2014-11-16 18:07:56 -08:00
Matt Bell
5e16dfb111 commands: Improved option conversin error message 2014-11-16 18:05:13 -08:00
Matt Bell
d1c50972f5 commands: Check for option errors when constructing Requests 2014-11-16 18:01:06 -08:00
Juan Batiz-Benet
589851fb4e cmds: root: fix '--help' notice for subcmds 2014-11-15 09:04:49 -08:00
Matt Bell
2b6b6fac00 commands: Added a flag to enable stdin arguments 2014-11-14 03:20:11 -08:00
Matt Bell
9370740db0 commands/cli: Fixed bug when parsing args for a command that doesn't have any argument definitions 2014-11-14 03:20:11 -08:00
Matt Bell
00b19f8876 commands/cli: Take an optional Stdin value in Parse (read as a reader argument or string argument) 2014-11-14 03:20:11 -08:00
Matt Bell
231960e726 commands/http: Fixed client erroring on nil command output 2014-11-14 03:20:11 -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
Matt Bell
db361d9403 commands/cli: Made Parse return an error if request has unrecognized options 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
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
Juan Batiz-Benet
81b3680908 cmds2: aligned subcmd text 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
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
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
Matt Bell
9afb85714a commands/cli: Don't return root in Parse 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
Juan Batiz-Benet
3352aeee15 cmds2: fixed show help on root + noncallable 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
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
Juan Batiz-Benet
b836e72aea cmd2 align arguments properly 2014-11-14 03:20:00 -08:00
Juan Batiz-Benet
c0b3b43773 cmds2/helptext moved indent + tagline in subcmd 2014-11-14 03:20:00 -08:00
Matt Bell
80d743541e commands/cli: Fixed spacing error 2014-11-14 03:20:00 -08:00
Juan Batiz-Benet
ef4480fe6d cmds/config: better help text 2014-11-14 03:20:00 -08:00
Juan Batiz-Benet
fc7c199d6a cmds/helptext: indent + newlines + synopsis 2014-11-14 03:20:00 -08:00
Matt Bell
8aa532fbc9 commands/cli: Less line breaks in autogenerated formatting 2014-11-14 03:20:00 -08:00
Juan Batiz-Benet
c25bf522d6 newline in short helptext 2014-11-14 03:19:59 -08:00
Matt Bell
47987f5df5 commands/cli: Transitionary commit - Generate helptext from HelpText fields if they aren't empty 2014-11-14 03:19:59 -08:00
Matt Bell
475f3f485b commands: Added HelpText struct to organize different help text fields in Commands 2014-11-14 03:19:59 -08:00
Brian Tiger Chow
7116591351 docs(commands/request) 2014-11-14 03:19:59 -08:00
Brian Tiger Chow
192377a852 fix(commands/optionvalue) use the util.ErrCast() 2014-11-14 03:19:59 -08:00
Brian Tiger Chow
c46102cec5 fix(commands/http/handler) check if found
@mappum, could you CR this and let me know if I've interpreted the
desired behavior correctly?
2014-11-14 03:19:57 -08:00
Brian Tiger Chow
bff646fb26 fix(commands/optionvalue) don't shadow the return variable
NB: return variables are provided for clarity. Otherwise, it's not
entirely clear that the bool is for _found_.
2014-11-14 03:19:57 -08:00