What can or must we do for UDD in the Q cycle?

Registered by Barry Warsaw

Ubuntu Distributed Development (UDD) is a great way to develop packages for Ubuntu using the Bazaar dVCS. While great progress has been made in previous cycles, there are still some warts around quilt packages and the importer. There may also be other issues we'd like to address for the Q cycle. This session will identify the top needs for Ubuntu developers and attempt to round up resources (both inside and outside Canonical) to tackle the biggest blockers.

Blueprint information

Status:
Not started
Approver:
Steve Langasek
Priority:
High
Drafter:
Barry Warsaw
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for quantal
Implementation:
Deferred
Milestone target:
None

Related branches

Sprints

Whiteboard

- What do we have to do
- What can we do
- Who can we find to do it

 What is stopping people use it?

  - quilt patches
  - checkout times
  - out-of-date branches

quilt patches
-------------------

  * Annoying - everyone agrees
  * Can we go fully to managing the changes in Bazaar?
    - looms
      - not ready yet. Particularly merging.
  * Can we switch to debian-only?
  * Can we switch to patches-unapplied?
    - Yes
    - less work than looms
    - will be trading one set of problems for another
  * Can we have patches-applied with no .pc committed
    - Colin does this
    - requires a command run at checkout time
      - could do this automatically
    -

New quilt handling thing interacts badly with pulls.
Also cases where .pc is removed and re-added.
Addition new metadata in newer quilt version.

What about looms?
 - Not ready and robust yet
 - BTW: package is RFA in Debian http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=667574

importer problems
--------------------------

  * can we have a self-service way of fixing problems?
    -

Debian branches can't be written to by anyone except the importer, so even when the debian maintainer uses UDD they can't use the branch with the rich history as lp:debian/*

If ubuntu packaging is based on the upstream branch, there is no sensible way to merge-in lp:debian/package branch.

Desktop branches
------------------------------
 * Desktop team should push its branches that include upstream bzr (things like compiz and unity) to the UDD locations with --overwrite
 * Document how to reset the UDD branch like that

SRU
------
* do generate a debdiff
* do not use udd
because there is no sensible worflow/permissions for -proposed branches

Alternative Solution
------
hg-queues, i.e. version controlling and merging quilt series
bzr-looms, again?

(?)

Work Items

Work items:
[james-w] document and communicate bzr dh-make for first import of a package: TODO
[james-w] make the importer accept changed history as authoratative automatically: TODO
test debian-only branches (with rich history) from e.g. DAPT/DMPT: TODO
[vorlon] document that SRUs should use debdiff instead of UDD: TODO
[james-w] talk to Colin about patches-applied with .pc: TODO