Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CLI interface #27

Open
isbm opened this issue Jun 7, 2017 · 1 comment
Open

CLI interface #27

isbm opened this issue Jun 7, 2017 · 1 comment

Comments

@isbm
Copy link
Member

isbm commented Jun 7, 2017

Just saying "hi!" here 😉
Heard of that project at openSUSE Conn, so I am wondering why CLI needs to resemble that API thing and why it needs to be so noisy and even worse than current OSC (in my personal subjective ignorable opinion, of course)?

Something like:

osc request create --submit api://src_project/src_package@rev api://tgt_project

OK... I appreciate dropping the old MacOS paths with colons, but... While this kind of command is no much better or cleaner from current OSC. Just look what we already use: osc bco versus osc request create --submit. Really, guys?..

I'd say all that api://thing is absolutely unnecessary and is just annoying. Are we expecting xmlrpc:// here or gopher:// in a future? I doubt that. Therefore I would not really build GUI/CLI for humans just to resemble API that are for machines so let humans inherently learn machine API for daily usage. Why the above cannot do something like Git already got right for years (and we implemented that in mgr_sync for SUSE Manager making everyone superhappy) instead? Something like (to start):

osc request create --submit /srcproject/package@revision /targetproject/package

Cleaner. I like the @ thing, that part is cool. Still...

Yet now why would one need create and --submit here at the same time? Are we expecting an additional something like --but-not-commit-just-yet option alongside existing in a future? Can one --submit that is not yet created? Well, no, one cannot. But one might want to create and not yet submit. Then this can happily do the above (i.e. create and submit at the same time, just like -b on checkout for Git):

osc request submit /srcproject/package@revision /targetproject/package

While this can just create (because it says so) the project:

osc request create /srcproject/package@revision /targetproject/package

Much cleaner. But we are not there yet. However, in this case create is an option. So I'd use -- for everything what you can do with the request, including osc request --help or man osc request:

osc request --submit /srcproject/package@revision /targetproject/package
osc request --create /srcproject/package@revision /targetproject/package

And so on... So I'd suggest to the project to resemble Git CLI behaviour. They're got it right and structured for years. Would be totally awesome if OSC2 would do the same, so we can avoid having OSC3RG (i.e. [r]eally [g]ood this time). 😉

Just suggestin'.

@marcus-h
Copy link
Member

marcus-h commented Jun 7, 2017 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants