← Back to team overview

launchpad-dev team mailing list archive

Landing lazr-js upgrade blocked by Windmill, A Proposal

 

Hi, all.

Just to be clear, this has nothing to do with my previous process
experiment proposal about page/windmill tests.  Don't let this request
be colored by your impressions from the last proposal.   This is a
"help, I'm stuck, here's my idea for moving forward" request. :-)  I
crafted this with lots of input from mars and rockstar, and while my
thoughts on windmill tests can't help but inform my thinking, I tried
to find the best way forward regardless of my personal feelings on
those tests.

So....

The problem:

deryck cannot land lazr-js upgrade in lp due to Windmill failures
because launchpad.js has grown too large (1.3Mb) for Windmill to deal with.

Making launchpad.js smaller or splitting into smaller files is
difficult to do.  All the files launchpad needs from YUI alone
combine to 1020k.  This could *perhaps* be trimmed slightly, but
still we are well above the 512k Windmill can handle.

Proposal:

 * Disable all Windmill tests temporarily
 * deryck lands lazr-js upgrade
 * deryck bears responsibility for qa on qastaging
 * if anything goes wrong in qa, deryck reverts branch and re-enables
   Windmill test
 * if qa goes ok, bug 672576 (tracking upgrade) is marked qa-ok, new
   lazr-js deploys
 * deryck then turns immediately to solving the file size issue, by
   getting a combo loader going for lp. rockstar has to do this (with
   a hard due date of the next 3 months), so we'll work together
   (building on work mars, sidnei, and others have already done but
   never finished for lp)
 * once file size is no longer an issue, deryck will re-enable
   windmill tests only for yuitests and lp.js client
 * deryck then turns immediately to solving the testing story, by
   focusing on a test runner for yuitests that will allow for better
   CI testing of js unit tests
 * in the interim, discussions can continue about how to best do
   end-to-end/browser/integration testing as a pre-deploy blocker
 * Once consensus is reached on how to do this pre-deploy testing,
   an lp team can take on building the infrastructure and tests for
   this

I'm willing to help on the last point, but this is too large for one
person to do alone.

To be clear, I'm willing to do all the work, in order to:

 * get work landed now that will unblock the subscriptions story my
   team is working on
 * get us a combo loader so the JavaScript file size issue goes away
   for us or anyone else inside Canonical using YUI
 * provide us better support for unit testing JavaScript and doing
   TDD JavaScript development
 * champion and guide the plan to separate pre-deploy
   end-to-end testing from CI JavaScript testing


Cheers,
deryck


-- 
Deryck Hodge
https://launchpad.net/~deryck
http://www.devurandom.org/



Follow ups