Am Donnerstag, 4. Juni 2009 16:40:40 schrieb Marcus Rueckert:
On 2009-06-02 16:24:45 +0200, Adrian Schröter wrote:
Juergen, Michael, Klaas and me sit together to discuss how should we design the osc request interface. The problem is that osc only knows "submitreq" command so far. But now we have two more requests, delete and devel_change requests. And more will come.
This new design will not be compatible with the current "osc submitreq" and we will most likely not be able to support the old commands in the same syntax anymore. But we think it is better to do this change anyway to have it more consistent.
Our idea are the following commands for osc. Please tell us your opinion about it. (We will implement this tomorrow if no new problems pop up).
you are breaking the UI for no real reason. which is bad.
as written the reason is that "sr" would not able to handle delete or change devel requests.
And we made also cleanups in other commands for this release, so better do a change at one step to get a consistent logic again.
Create new requests:
osc sr osc sr PROJECT PACKAGE DESTPROJECT [DESTPACKAGE] osc submitrequest osc submitrequest PROJECT PACKAGE DESTPROJECT [DESTPACKAGE]
osc dr PROJECT [PACKAGE] osc deleterequest PROJECT [PACKAGE
osc cr PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE] osc changedevelrequest PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]
inconsistent. see below
Why is this inconsistent ? where is the conflict ?
Note: So far we had "osc submitreq create ...", the create will get dropped.
Modify existing requests:
osc request accept ID osc request decline ID osc request revoke ID (drops the request, but it is still showable) osc request wipe ID (removes the requst forever)
osc request deletion PROJECT [PACKAGE] osc request changedevel PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE] osc request submit PROJECT PACKAGE DESTPROJECT [DESTPACKAGE]
could get implemented, yes. But deletion would be a special writing, while we use "delete" elsewhere. and "osc sr" is much shorter than "osc rq submit", important since it is an often use command.
that way we can leave the old "osc sr" behavior in place as compat layer. we got this documented in many places, (Wiki, blog postings) and should not just break it in a rush (2days for such an intrusive change is a bit too short).
not really, or at least with problems when you want to deal with the new requests submitted by someone else.
(optional "rq" for "request")
you also added osc req als alternative, which was used before to run api requests manually. will it would be confusing to keep both around. again breaking the UI.
yes, but we never promised to keep it forever. We have a stable API instead if you rely on automatism.
(where we did also a change due to problems with request handling as discussed two weeks ago, introducing the actions for requests.)
Show existing requests:
osc list # list requests (maybe we can make this one obsolete)
"osc request list" if at all. osc list is too unspecific and could confused as synonym for "osc ls".
it is "osc rq list" actually.
osc request # list requests
it follows the REST style paradigm, might work. would need to see it in action i think
that one is currently not implemented.
osc request ID
osc request show ID
yes, it is implemented this way.