Merge lp://staging/~cjwatson/ubuntu-app-launch/libclick-manifest into lp://staging/ubuntu-app-launch/14.04

Proposed by Colin Watson
Status: Merged
Approved by: Ted Gould
Approved revision: 139
Merged at revision: 141
Proposed branch: lp://staging/~cjwatson/ubuntu-app-launch/libclick-manifest
Merge into: lp://staging/ubuntu-app-launch/14.04
Prerequisite: lp://staging/~cjwatson/ubuntu-app-launch/libclick-pkgdir
Diff against target: 417 lines (+83/-117)
9 files modified
CMakeLists.txt (+2/-2)
debian/control (+0/-2)
helpers.c (+33/-35)
libupstart-app-launch/CMakeLists.txt (+1/-0)
libupstart-app-launch/upstart-app-launch.c (+41/-58)
tests/click (+0/-7)
tests/exec-util-test.cc (+0/-4)
tests/helper-test.cc (+3/-4)
tests/libual-test.cc (+3/-5)
To merge this branch: bzr merge lp://staging/~cjwatson/ubuntu-app-launch/libclick-manifest
Reviewer Review Type Date Requested Status
Ted Gould (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Review via email: mp+210520@code.staging.launchpad.net

Commit message

Use libclick to get package manifests, saving about 0.7 seconds from Click application startup (on mako).

Description of the change

This is the other half of the work started in https://code.launchpad.net/~cjwatson/upstart-app-launch/libclick-pkgdir/+merge/209909, now that click 0.4.18 has landed. It converts the remaining parts of upstart-app-launch so that it no longer needs to go through the click binary at all, and does everything click-related using libclick, thereby avoiding the need to start a Python interpreter.

I've tested this manually on mako after building on porter-armhf.c.c, and run some timings. Including previous results, the median of nine runs of "time upstart-app-launch com.ubuntu.calculator_calculator_0.1.3.224" (followed by "upstart-app-stop com.ubuntu.calculator_calculator_0.1.3.224" to clean up) behaves as follows:

  Before any libclick work: 1.772 seconds
  With libclick-pkgdir: 1.037 seconds
  With libclick-pkgdir and libclick-manifest: 0.355 seconds

The combined result of my two branches is therefore a total saving of about 1.4 seconds, or about 80% of upstart-app-launch's run-time.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Ted Gould (ted) wrote :

Looks great! Excited about the slightly faster app startup ;-)

review: Approve
Revision history for this message
Charles Kerr (charlesk) wrote :

This looks great. Thanks Colin!

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