1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-05-21 00:47:22 +08:00

40 Commits

Author SHA1 Message Date
3352aeee15 cmds2: fixed show help on root + noncallable 2014-11-14 03:20:02 -08:00
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
e41f861f8a commands/cli: Added some TODOs to Parse 2014-11-14 03:20:02 -08:00
f5973b5565 add urgent todo. fix before merge 2014-11-14 03:17:41 -08:00
e14471f5e8 commands/cli: Use better variable name for parseArgs value index 2014-11-14 03:17:40 -08:00
5481230679 commands/cli: Use better temp variable names in Parse 2014-11-14 03:17:40 -08:00
f48ce10efb commands/cli: Added comment to explain multiple root support in Parse 2014-11-14 03:17:40 -08:00
eebb43753b commands: Added list of option definitions to Request, so Option can lookup values by all aliases 2014-11-14 03:17:37 -08:00
3255bb02d1 commands/cli: Output command path in Parse 2014-11-14 03:17:34 -08:00
cb72868ab4 commands: Fixed parser argument bug (TODO: better test coverage for command parsers) 2014-11-14 03:17:28 -08:00
1ee6c7e5f2 commands/cli: Fixed arg parse bug 2014-11-14 03:17:27 -08:00
48c108d523 commands/cli: Made Parse return the resolved subcommand, even on error 2014-11-14 03:17:27 -08:00
37f05a8bf6 commands: Ensure argument parsing maintains total argument count, so that argument validation will fail if there are too many 2014-11-14 03:17:27 -08:00
116041c5ec commands: Fixed argument value/definition mapping 2014-11-14 03:17:26 -08:00
068e10cc5d commands/cli: Better comment for parsePath 2014-11-04 02:04:50 -08:00
75649f3d49 commands: Moved argument checking into a Command method, fail early when parsing commands 2014-11-04 02:04:49 -08:00
dbeffb6a0b commands: CLI Parse: Don't parse args until after creating request 2014-11-04 02:04:49 -08:00
2c8fc8564c commands/cli: Made parser handle variadic arguments 2014-11-04 02:04:49 -08:00
ee2c76992a commands/cli: Open argument files when creating Requests (Moved out of HTTP client) 2014-11-04 02:04:48 -08:00
3a8d60cc61 commands: Removed inpout stream from Request 2014-11-04 02:04:48 -08:00
827f1dd0b0 commands: Changed Request arguments to a []interface{} 2014-11-04 02:04:48 -08:00
30e968754e commands/cli: Error if no subcommand matched 2014-11-04 02:04:48 -08:00
c0d3edd4f9 commands/cli: Made Parse handle multiple root commands 2014-11-04 02:04:47 -08:00
81f29257a1 commands: Gave Requests a reference to the command they are being called on 2014-11-04 02:04:46 -08:00
12a6a87b2c commands/cli: Made Parse return a Request (again) 2014-10-21 18:27:05 -07:00
71ff571ecf commands/cli: Made Parse return component fields instead of a Request 2014-10-20 17:02:25 -07:00
b10fc2cc50 turned req + res into interfaces 2014-10-20 11:49:07 -07:00
4986600e54 parsePath no err 2014-10-20 08:00:28 -07:00
92528ba764 Sub -> Subcommand 2014-10-20 07:55:23 -07:00
7673ce6f65 fmt, lint, + vet commands/ 2014-10-20 07:53:14 -07:00
117af86ca7 commands/cli: Error if there are duplicate values for an option 2014-10-20 07:04:55 -07:00
f87c418eee commands/cli: Refactored CLI parsing to match go tooling conventions 2014-10-20 07:04:54 -07:00
968ec344e5 commands/cli: Made Parse return a Request object instead of separate values 2014-10-20 07:04:53 -07:00
86bc450b20 commands/cli: Pass option definitions as an argument to parseOptions 2014-10-20 07:04:53 -07:00
97b8719075 commands/cli: Removed parser string handling since the go runtime handles it for us automatically 2014-10-20 07:04:53 -07:00
66e6da3ddd commands/cli: Added value parsing for single-dash options 2014-10-20 07:04:52 -07:00
bb32633136 commands/cli: Refactored parsing to always get the command path at the beginning of the CLI input 2014-10-20 07:04:52 -07:00
66b0727de6 commands/cli: Renamed parse functions to parse* 2014-10-20 07:04:52 -07:00
4bd3a77778 commands/cli: Added path/args parsing 2014-10-20 07:04:52 -07:00
bf328181cd commands/cli: Added CLI option parsing 2014-10-20 07:04:52 -07:00