Need to find alternatives for the SRU process, which has failed Webapps.

Registered by Robert Bruce Park on 2013-11-08

The SRU process has failed for webapps; we need to discuss alternative solutions. In particular, we need to create a non-deb delivery mechanism for webapps in Desktop Trusty, so that we avoid getting stuck with Webapps SRUs for the next 5 years.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Robert Bruce Park
Definition:
Drafting
Series goal:
Accepted for trusty
Implementation:
Unknown
Milestone target:
milestone icon ubuntu-14.04

Related branches

Sprints

Whiteboard

Facts:

* Webapps are just GreaseMonkey scripts.
* They are very tightly coupled with the DOM of the website they integrate with.
* They are very loosely coupled with the distro that they've shipped with.
* Webapps break when websites change design/DOM.
* Website changes rollout to all Ubuntu users simultaneously, regardless of whether they are using a stable or development release.

This creates a very difficult situation in which users of stable releases of Ubuntu experience a *significant* lag in receiving updates for broken webapps. So much so that it is only possible to have an acceptable webapps experience in the development release of Ubuntu.

This is the result of a very simple power imbalance: Website owners have unlimited power to change their websites without notice or review, but we have saddled ourselves with this time-consuming review process (SRU) before we can release updates to users. We simply *do not* have the manpower to pursue these SRUs in a timely fashion.

Solutions:

* click packages: Since these are delivered through the click store, it is trivial to ship updated webapps to all ubuntu users without going through the SRU process. It was my hope that click packages might become a viable method of installing desktop webapps, however it seems unlikely that desktop trusty will support click packages.

* Something else: We need to develop a very simple mechanism whereby ubuntu users install webapps not from the ubuntu archive, but from some other central server

Challenges:

* we need a central server that can handle the load of millions of ubuntu users installing webapps.
* We need some kind of update mechanism. perhaps low-frequency polling? i doubt we'll be able to push updates to clients because a) push service will be mobile-only and b) push-service won't be ready in time for trusty

Alternatives:

* in the event that we cannot come up with a webapp delivery mechanism for trusty, we need to simply admit that we do not have the resources to offer SRU support for any webapps.

(?)

Work Items

Work items for ubuntu-13.12:
[dbarth] publish the list of supported webapps for the LTS: TODO

Work items for ubuntu-14.01:
[robru] propose SRU submission template for webapps: TODO
[vrruiz] provide hooks to automated test results system (URLs, scripts, etc.): TODO
[robru] integrate test results in the SRU template: TODO

Work items for ubuntu-14.02:
[robru] test the new template with an SRU: TODO

Work items for ubuntu-14.03:
[robru] adjust as required: TODO

Dependency tree

* Blueprints in grey have been implemented.