Diff for "VersionThreeDotO/Code/StoryCards"

Not logged in - Log In / Register

Differences between revisions 2 and 9 (spanning 7 versions)
Revision 2 as of 2008-11-20 02:25:49
Size: 2408
Editor: thumper
Comment:
Revision 9 as of 2009-01-29 11:39:00
Size: 5943
Editor: jml
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
Blatently copied from the Registry user story page. Blatantly copied from the Registry user story page.
Line 7: Line 7:
This section contains the [[http://www.agile-software-development.com/2008/04/writing-good-user-stories.html|story cards]] for the Launchpad Code team. Completed stories are moved to the [[VersionThreeDotO/Code/StoryCardsArchive]]. This section contains the [[http://www.agile-software-development.com/2008/04/writing-good-user-stories.html|story cards]] for the Launchpad Code team. Completed stories are moved to the [[VersionThreeDotO/Code/StoryCardsArchive]].  Priorities are found on the [[VersionThreeDotO/Code|main code page]].
Line 10: Line 10:

== Source Package Branches ==

<<Anchor(generic-vfs)>>
== Generic VFS for Codehosting ==

'''Story Points:''' 8

  As a Launchpad developer, I want to be able to do branch lookup in a single location so I can have arbitrary names for branches.

'''Notes:'''
    * The codehosting system currently assumes branch naming semantics are tied to upstreams; this story card covers centralizing this code so it can be generalized to source package branches later.
Line 33: Line 20:
=== Official source package branch for Distro Series === == Official source package branch for Distro Series ==
Line 41: Line 28:
=== Distribution source package branch listings === == Distribution source package branch listings ==
Line 48: Line 35:
<<Anchor(enable-source-package-branches)>>
== Enabling Source Package Branches ==

'''Story Points:''' 5

 * As a web user I want to be able to change an existing branch to have a source package so I can use Bazaar to create and change source packages.
 * e.g. I have a branch associated with the bzr product, and I want to associate it with the bzr source package in ubuntu/intrepid
        e.g. ~jml/bzr/fix-loom => ~jml/ubuntu/hoary/bzr/fix-loom

<<Anchor(diffs-against-trunk)>>
== API for code review diffs against target ==

'''Story Points:''' 5

  We want to be able to provide an API to update the diffs against the the merge proposal target.

'''Notes:'''
    * API needs to expose work in progress and needs review proposals for a project (source package / branch container)
    * API needs to allow the setting of the diff information
    * DB classes for DynamicDiff
    * LP is not validating the diff text in the API
    * Includes conflict count / text

<<Anchor(lp-ui-updates-for-trunk-diffs)>>
== UI for viewing codereview diffs against target ==

'''Story Point:''' 3

  As a launchpad user I'd like to be able to see the diffs that have been saved for my pending merges.

'''Notes:'''
   * LP UI needs to show links to the diff on mp & mp listing pages
   * Diff rendered in plaintext
   * Show conflict count from db


<<Anchor(diffstats-for-mps)>>
== Show diffstats for merge proposals ==

'''Story Points:''' 5

 As a reviewer / branch author, I want to see the diffstat for a moving diff, so that I can get an overall feeling for the changes in that branch.

'''Notes:'''
    * Extend the content class if necessary.
    * Extend the dynamic diff to calculate the diffstat on the diff text
    * Include lines added/removed, files changed
    * Show it in a <pre> blob ala diffstat on the command line


<<Anchor(merge-analysis-daemon)>>
== Merge analysis daemon ==

'''Story Points:''' 8

  As a Launchpad user I want to be able to run a script that updates the diffs against targets for my project.

'''Notes:'''
    * Merge Analysis Deamon (MAD) will be the client script
    * A project on LP with the script available for a user to download and run
    * This story does not include getting it packaged
    * this story does not include getting it working on EC2
    * includes minimal HOWTO docs
    * also includes some form of testing.



<<Anchor(git-imports-1)>>
== git imports - lp db updates ==

'''Story Points:''' 2

  Data model updates to support git imports

'''Notes:'''
    * Adding a git option for import type (i.e. extend the enum)
    * DB patch to add git data to CodeImport (repo url and git branch [default to MASTER?])

<<Anchor(git-imports-2)>>
== git import worker ==

'''Story Points:''' 3

  The import worker script to do the imports from a remote git repository.

'''Notes:'''
    * Jelmer is finishing off bzr-git v.1 ETA 2 weeks for stable import ids -- assume we have that
    * Writing a new worker script + hair to call it



<<Anchor(git-imports-3)>>
== git import web ui ==

'''Story Points:''' 3

  As a web user, I want to be able to request and view an import from a git branch, so I can feel the bzr love.

'''Notes:'''
    * Update new code import to allow entering of git repo/branch
    * Branch UI update to show GIT import (rather than subversion / cvs)
    * Available code import page


Line 51: Line 143:

<<Anchor(enable-source-package-branches)>>
== Enabling Source Package Branches ==

'''Story Points:''' ??

 * As a user I want to be able to associate a branch with a source package so I can use Bazaar to create and change source packages.
Line 73: Line 158:

<<Anchor(site-branches)>>
== Site branches ==

'''Story Points:''' ?? (too hard right now, need to get confirmation on actual feature)

  We'd like Launchpad to be able to have user defined sites for personal pages and projects.

'''Notes:'''
    * Add a table for SiteBranches with links to one of Person, Product, Project
      * We want this instead of fields on respective tables as we may well want to add an emum for any given link to specify pre-processing options (none, rest, some wiki processing et al).
    * Content class
    * Web UI for configuring the behaviour
    * Branch job to checkout/update
    * LP subdomain to host on (site.launchpad.net) ?
    * Machine to host it on (quotas?)

Code User Stories

Blatantly copied from the Registry user story page.

This section contains the story cards for the Launchpad Code team. Completed stories are moved to the VersionThreeDotO/Code/StoryCardsArchive. Priorities are found on the main code page.

Official source package branch for Distribution

Story Points: 5

  • As a distribution vendor, I want to be able to specify a certain branch as being the trunk branch for a package in my distribution in order to allow any developer to easily fetch source for a package.

Official source package branch for Distro Series

Story Points: 5

  • As a distribution vendor, I want to be able to specify a certain branch as being the focus branch for a package in a distro series so that developers working on that series know where to fetch the latest source branch for it from.

Distribution source package branch listings

Story Points: 3

  • As a package maintainer, I want to be able to see what branches have been recorded for my source package in order to collaborate with their developers.

Enabling Source Package Branches

Story Points: 5

  • As a web user I want to be able to change an existing branch to have a source package so I can use Bazaar to create and change source packages.
  • e.g. I have a branch associated with the bzr product, and I want to associate it with the bzr source package in ubuntu/intrepid
    • e.g. ~jml/bzr/fix-loom => ~jml/ubuntu/hoary/bzr/fix-loom

API for code review diffs against target

Story Points: 5

  • We want to be able to provide an API to update the diffs against the the merge proposal target.

Notes:

  • API needs to expose work in progress and needs review proposals for a project (source package / branch container)
  • API needs to allow the setting of the diff information
  • DB classes for DynamicDiff

  • LP is not validating the diff text in the API
  • Includes conflict count / text

UI for viewing codereview diffs against target

Story Point: 3

  • As a launchpad user I'd like to be able to see the diffs that have been saved for my pending merges.

Notes:

  • LP UI needs to show links to the diff on mp & mp listing pages

  • Diff rendered in plaintext
  • Show conflict count from db

Show diffstats for merge proposals

Story Points: 5

  • As a reviewer / branch author, I want to see the diffstat for a moving diff, so that I can get an overall feeling for the changes in that branch.

Notes:

  • Extend the content class if necessary.
  • Extend the dynamic diff to calculate the diffstat on the diff text
  • Include lines added/removed, files changed
  • Show it in a <pre> blob ala diffstat on the command line

Merge analysis daemon

Story Points: 8

  • As a Launchpad user I want to be able to run a script that updates the diffs against targets for my project.

Notes:

  • Merge Analysis Deamon (MAD) will be the client script
  • A project on LP with the script available for a user to download and run
  • This story does not include getting it packaged
  • this story does not include getting it working on EC2
  • includes minimal HOWTO docs
  • also includes some form of testing.

git imports - lp db updates

Story Points: 2

  • Data model updates to support git imports

Notes:

  • Adding a git option for import type (i.e. extend the enum)
  • DB patch to add git data to CodeImport (repo url and git branch [default to MASTER?])

git import worker

Story Points: 3

  • The import worker script to do the imports from a remote git repository.

Notes:

  • Jelmer is finishing off bzr-git v.1 ETA 2 weeks for stable import ids -- assume we have that
  • Writing a new worker script + hair to call it

git import web ui

Story Points: 3

  • As a web user, I want to be able to request and view an import from a git branch, so I can feel the bzr love.

Notes:

  • Update new code import to allow entering of git repo/branch
  • Branch UI update to show GIT import (rather than subversion / cvs)
  • Available code import page

Needs estimating

These stories will be estimated in the weekly planning meeting.

Example Story

Story Points: ??

  • Description of the story

Notes:

  • Any notes.

Needs definition

These stories are incomplete, not understood, and cannot be estimated.

Site branches

Story Points: ?? (too hard right now, need to get confirmation on actual feature)

  • We'd like Launchpad to be able to have user defined sites for personal pages and projects.

Notes:

  • Add a table for SiteBranches with links to one of Person, Product, Project

    • We want this instead of fields on respective tables as we may well want to add an emum for any given link to specify pre-processing options (none, rest, some wiki processing et al).
  • Content class
  • Web UI for configuring the behaviour
  • Branch job to checkout/update
  • LP subdomain to host on (site.launchpad.net) ?
  • Machine to host it on (quotas?)

VersionThreeDotO/Code/StoryCards (last edited 2009-01-29 11:39:00 by jml)