ManifestBranchVisualisation

Manifest Branch Visualisation

Status

Introduction

This specification details the problems and some ideas for visualising the number of branches HCT and Sourcerer can create to accurately represent user changes. The primary difference between this and the other LaunchpadBranchManagement visualisation specifications is its requirement to present Manifest-aware information.

Rationale

A by-product of the HCT is a very large number of branches, effectively a branch for every patch for every version of a source package in every distribution. A user interface, such as the Launchpad web application, will need to present them to the user without scaring them.

With the convergence with BazNG most of these (those where there are no actual changes) will be eliminated, however the potential of these branches remains as each is a place that can be written to without changing the previous version of the source package.

Scope and Use Cases

  • Daniel wants to know what collection of branches makes up a particular version (perhaps the latest) of a source package in Ubuntu.
  • James wants to look at a particular patch in the Ubuntu source package, and see which other versions that has been present in.
  • Martin wants to look at the same patch, but see which other distributions have that same patch.
  • Dafydd is interested in the history of a patch, and wishes to see the changes made on it.

User Interface

The user interface for this should be a zooming user interface. That is, it should be centered on a particular point of reference, and only show the immediate information for that point. Further information can be revealed by changing the point of reference.

For example, we can begin the point of reference at the fictional Ubuntu wibble source package.

  • Ubuntu wibble package Patches in this source package:

    • 01-fix-something.patch

    • 02-break-something.patch

    • 03-steal-something.patch

We can now change our point of reference to the 01-fix-something.patch by clicking on it.

  • 01-fix-something.patch in the Ubuntu wibble package

    View history

    This patch is present in versions 1.3-4 _..._ 1.18-2 This patch is present in the following other distributions:

    • Debian

    • Fedora

We can change the point of reference to a different distribution's patch by clicking on them, examine a particular version of a source package by clicking it or see the complete list by clicking the space-saving ellipsis. The history of the branch is also just a hyperlink away.

By keeping the available information tight around the point of reference, it makes it reasonably obvious how to navigate towards the information you require; while not flooding you with information.

Outstanding Issues

  • How to indiciate team-maintainer or personal version's of packages, perhaps in a similar way to distributions.
  • The "patch in foo" page is virtual, as is the "package in Ubuntu" page ... is there any requirement for a page that does directly represent a database object, or should they all amalgamate information in this way?
  • The word "patch" here to represent a branching development of patches may be confusing to upstream developers. The UI should try to make it clear that the patches themselves can evolve.


CategoryUdu CategorySpec

UbuntuDownUnder/BOFs/ManifestBranchVisualisation (last edited 2008-08-06 16:39:40 by localhost)