Merge lp://staging/~brendan-donegan/checkbox/launchpad_transport into lp://staging/checkbox

Proposed by Brendan Donegan
Status: Merged
Approved by: Zygmunt Krynicki
Approved revision: 2883
Merged at revision: 2881
Proposed branch: lp://staging/~brendan-donegan/checkbox/launchpad_transport
Merge into: lp://staging/checkbox
Diff against target: 460 lines (+297/-18)
8 files modified
checkbox-gui/checkbox-gui/qml/SubmissionDialog.qml (+14/-8)
checkbox-gui/gui-engine/gui-engine.cpp (+48/-2)
checkbox-gui/gui-engine/gui-engine.h (+6/-1)
checkbox-ng/checkbox_ng/launchpad.py (+209/-0)
checkbox-ng/checkbox_ng/service.py (+5/-3)
checkbox-ng/setup.py (+2/-0)
plainbox/plainbox/impl/highlevel.py (+10/-4)
support/develop-projects (+3/-0)
To merge this branch: bzr merge lp://staging/~brendan-donegan/checkbox/launchpad_transport
Reviewer Review Type Date Requested Status
Brendan Donegan (community) Needs Resubmitting
Zygmunt Krynicki (community) Approve
Review via email: mp+213990@code.staging.launchpad.net

Description of the change

Submit to Launchpad

    Enable Checkbox to submit to Launchpad. Update the SubmissionDialog to send
    to Launchpad by default and adjust the DBus API to pass the session state
    through, which the LaunchpadTransport class requires to get some details
    needed by the Launchpad submission form. Add the LaunchpadTransport class
    itself, which creates the POST request to send to Launchpad.

To post a comment you must log in.
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

12:20 <@zyga> brendand: hmm
12:21 <@zyga> brendand: I don't like what you are doing in C++ (sorry), I think the QML api should be SendViaTransport(transport_name, where, option_list) (with data and config being filled in
              automatically by other layers)\
12:22 <@zyga> brendand: and that big patch needs splitting and rebasing
12:22 <@zyga> brendand: (though maybe not rebasing, sorry, misread one path)
12:23 <@zyga> brendand: highlevel should not interpret the result of send(), that should be returned, hoping that the caller will undestand it *or* we should define what send() must return but then it
              cannot force the output reply format (it should be some object where part is standardized and the rest is up to the transport)
12:24 <@zyga> brendand: you spell e-mail as "eMail"?
12:28 <@zyga> brendand: hmm, the send-data-via-transport dbus API change is unfortunate, since session is now required then (perhaps) we should just move it to the session wrapper class?
12:28 <@zyga> brendand: checkbox-ng packaging must say breaks checkbox-gui << (the version under development)
12:29 <@zyga> brendand: (well, the service must say that at least)
12:29 <@zyga> brendand: ok, let's do this
12:29 <@zyga> brendand: I'll work on the better-transports branch to add standardized error handling
12:29 <@zyga> brendand: and semi-standardized return value
12:30 <@zyga> brendand: and apply that evertwhere necessary
12:30 <@zyga> brendand: and I'll let you split that patch up and then we can review it again
12:30 <@zyga> brendand: I haven't read everything and I don't understand some of the QML changes
12:31 <@zyga> brendand: build documentation please, fix errors in the new code
12:31 <@zyga> brendand: and maybe work on some tests, look at how roadmr did those for the cert transport

review: Needs Fixing
Revision history for this message
Daniel Manrique (roadmr) wrote :

+1 on the tests, particularly since hwdb from launchpad is very well documented so it's easy to mock its responses and test the rest of our code.

I approved https://code.launchpad.net/~zkrynicki/checkbox/better-transports/+merge/213978, so maybe you can also rebase this on trunk to make your delta smaller.

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Resubmitting, I agree on the tests, but we're a bit pressed for time now. I'll file a bug and assign it to myself to work on some.

review: Needs Resubmitting
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

Thanks, +1

review: Approve
Revision history for this message
Daniel Manrique (roadmr) wrote :
Download full text (3.9 KiB)

The attempt to merge lp:~brendan-donegan/checkbox/launchpad_transport into lp:checkbox failed. Below is the output from the failed tests.

[precise] Bringing VM 'up'
[precise] (timing) 8.06user 3.38system 4:09.02elapsed 4%CPU (0avgtext+0avgdata 21440maxresident)k
[precise] (timing) 0inputs+192outputs (0major+183252minor)pagefaults 0swaps
[precise] Starting tests...
[precise] Checkbox GUI build: PASS
[precise] (timing) 0.89user 0.34system 1:02.66elapsed 1%CPU (0avgtext+0avgdata 20604maxresident)k
[precise] (timing) 0inputs+64outputs (0major+61177minor)pagefaults 0swaps
[precise] (timing) 0.83user 0.31system 0:05.84elapsed 19%CPU (0avgtext+0avgdata 19940maxresident)k
[precise] (timing) 0inputs+8outputs (0major+61373minor)pagefaults 0swaps
[precise] PlainBox test suite: FAIL
[precise] stdout: http://paste.ubuntu.com/7202611/
[precise] stderr: http://paste.ubuntu.com/7202612/
[precise] (timing) Command exited with non-zero status 1
[precise] (timing) 1.08user 0.38system 0:19.21elapsed 7%CPU (0avgtext+0avgdata 20312maxresident)k
[precise] (timing) 0inputs+288outputs (0major+61791minor)pagefaults 0swaps
[precise] PlainBox documentation build: PASS
[precise] (timing) 0.92user 0.30system 0:35.33elapsed 3%CPU (0avgtext+0avgdata 20140maxresident)k
[precise] (timing) 0inputs+32outputs (0major+62104minor)pagefaults 0swaps
[precise] CheckBoxNG test suite: PASS
[precise] (timing) 0.85user 0.29system 0:07.24elapsed 15%CPU (0avgtext+0avgdata 20028maxresident)k
[precise] (timing) 0inputs+16outputs (0major+61395minor)pagefaults 0swaps
[precise] Integration tests: PASS
[precise] (timing) 0.84user 0.36system 0:08.00elapsed 15%CPU (0avgtext+0avgdata 20740maxresident)k
[precise] (timing) 0inputs+8outputs (0major+61469minor)pagefaults 0swaps
[precise] Resource provider: PASS
[precise] (timing) 0.80user 0.34system 0:05.82elapsed 19%CPU (0avgtext+0avgdata 20024maxresident)k
[precise] (timing) 0inputs+8outputs (0major+62523minor)pagefaults 0swaps
[precise] Destroying VM
[trusty] Bringing VM 'up'
[trusty] (timing) 9.15user 4.03system 5:07.38elapsed 4%CPU (0avgtext+0avgdata 22056maxresident)k
[trusty] (timing) 0inputs+280outputs (0major+196273minor)pagefaults 0swaps
[trusty] Starting tests...
[trusty] Checkbox GUI build: PASS
[trusty] (timing) 1.20user 0.55system 1:18.27elapsed 2%CPU (0avgtext+0avgdata 20008maxresident)k
[trusty] (timing) 7184inputs+120outputs (86major+61362minor)pagefaults 0swaps
[trusty] (timing) 0.80user 0.32system 0:07.97elapsed 14%CPU (0avgtext+0avgdata 20140maxresident)k
[trusty] (timing) 0inputs+8outputs (0major+60291minor)pagefaults 0swaps
[trusty] PlainBox test suite: FAIL
[trusty] stdout: http://paste.ubuntu.com/7202634/
[trusty] stderr: http://paste.ubuntu.com/7202635/
[trusty] (timing) Command exited with non-zero status 1
[trusty] (timing) 1.03user 0.38system 0:23.54elapsed 6%CPU (0avgtext+0avgdata 20284maxresident)k
[trusty] (timing) 0inputs+344outputs (0major+59859minor)pagefaults 0swaps
[trusty] PlainBox documentation build: PASS
[trusty] (timing) 0.90user 0.30system 0:37.20elapsed 3%CPU (0avgtext+0avgdata 20148ma...

Read more...

2879. By Sylvain Pineau

"automatic merge by tarmac [r=sylvain-pineau][bug=][author=sylvain-pineau]"

2880. By Brendan Donegan

checkbox-gui: Submit to Launchpad

Update SubmissionDialog.qml to make sending to Launchpad the default
behaviour, and add a SendSubmissionViaLaunchpadTransport function to do
this. Update SendDataViaTransport to accept the session object which is
needed by the transport.

Signed-off-by: Brendan Donegan <email address hidden>

2881. By Brendan Donegan

checkbox-ng: Add LaunchpadTransport

Create LaunchpadTransport which takes a session state and a submission
file and uses the resource data in the session state to fill out a form
that Launchpad requires for submission. It returns a dictionary with the
key 'status' containing the response from Launchpad.

Signed-off-by: Brendan Donegan <email address hidden>

2882. By Brendan Donegan

plainbox: LaunchpadTransport support in High Level API

Account for the needs of the LaunchpadTransport in the High Level API.
We need to pass the session state to send and make sure we account for the
possibility that the dictionary returned might also contain the 'state'
key instead of 'url'. Return a bad response message if neither of these
keys are present.

Signed-off-by: Brendan Donegan <email address hidden>

2883. By Brendan Donegan

support: Develop checkbox-support

Fix build error by developing checkbox-support

Signed-off-by: Brendan Donegan <email address hidden>

Revision history for this message
Brendan Donegan (brendan-donegan) wrote :

Ok, added checkbox-support to develop-projects.

review: Needs Resubmitting
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

Please patch setup.py to indicate the dependency of checkbox-ng on checkbox-support

Wysłane z mojego smartfonu BlackBerry 10
  Oryginalna wiadomość
Od: <email address hidden>
Wysłano: piątek, 4 kwietnia 2014 13:46
Do: <email address hidden>; Zygmunt Krynicki
Odpowiedz: <email address hidden>
Temat: [Merge] lp:~brendan-donegan/checkbox/launchpad_transport into lp:checkbox

The proposal to merge lp:~brendan-donegan/checkbox/launchpad_transport into lp:checkbox has been updated.

Status: Approved => Merged

For more details, see:
https://code.launchpad.net/~brendan-donegan/checkbox/launchpad_transport/+merge/213990
--
https://code.launchpad.net/~brendan-donegan/checkbox/launchpad_transport/+merge/213990
You are reviewing the proposed merge of lp:~brendan-donegan/checkbox/launchpad_transport into lp:checkbox.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches