mkideal / cli

CLI - A package for building command line app with go
MIT License
730 stars 43 forks source link

Extra dependency for Time and Duration #8

Closed suntong closed 8 years ago

suntong commented 8 years ago

The example-14-time-and-duration reveals that for a normal Time and Duration operation, an extra package is required, github.com/jinzhu/now.

Since Time and Duration operations are such normal operations, I'm wondering why such extra package is necessary.

Excellent package, BTW.

Thanks

suntong commented 8 years ago

The example-15-file need that package as well. This seems even less obvious as all it's doing is to read content from file or stdin, which doesn't relate to a now package much.

mkideal commented 8 years ago

I did not realize it was a problem before,😭 .I just want to support more formats to parse time. Well, it's a defect!

suntong commented 8 years ago

Oh, thanks for looking that way. By "support more formats to parse time", I presume you mean how to specify the duration. If so, I found the go's default flag's handling of the duration strings is quite superb. In fact, I was quite amaze how good it can handle all those difference cases.

Once again, Excellent package!

I blogged about "Passing options to Go from command line" before. I.e., I had a pretty extensive study of all the choices available (by then), and I'm really glad to have come across your new CLI now. Yours is by far the best.

I'll sure to blog again about it and prompt it.

Keep up the good work, :)

mkideal commented 8 years ago

Thanks a lot! 😄

suntong commented 8 years ago

Hi mkideal,

If it will take a while for you to fix this, could you split the clix.File out from github.com/mkideal/cli/ext please?

I'm switching my code from other implementation to cli, and this clix.File has become a road block for me. Do the splitting will at least give you some time to think more...

Thanks

mkideal commented 8 years ago

I have removed github.com/jinzhu/now

suntong commented 8 years ago

works great. Thx.

suntong commented 8 years ago

I believe this is a better option -- I tried passing with the standard time format (-t '2016-01-02 03:04:05'), and it works great.

If someone really need to parse unusual formats instead, s/he can pass it as string and use whatever fancy/powerful tools to do the conversion.