Version invariant

At all points in time, unless someone screws ups, the following invariant should hold. Most of the workflow follows directly from keeping this in mind.

For a package,

Maintainer/Uploader field

For all pkg-haskell maintained packages, the Maintainer: field will be set to

Maintainer: Debian Haskell Group <pkg-haskell-maintainers@lists.alioth.debian.org>

The Uploaders: field contains those members, who care for this package. This means that when a member wishes to share maintenance responsibility for a package, he puts himself into the Uploaders-field. This does not include sponsors. Members can also remove themselves from the list, but of course they have to wait for the next upload for the change to take effect.

Rationale: There will be situations where team members upload packages but do not wish to undertake any maintenance burden, so they will not put themselves in Uploaders:. Uploads will be considered an NMU, but this is only informational. The benefit of this is that contributors' DDPO pages reflect the packages they care about. Additionally, the Uploaders: field reflects who can be called upon in the event something needs to be done with a package.

VCS fields

All pkg-haskell maintained packages have the Vcs-*-fields set, for example:

Vcs-Git: git://git.debian.org/git/pkg-haskell/haskell-x11.git
Vcs-Browser: http://git.debian.org/?p=pkg-haskell/haskell-x11.git;a=summary

or, for darcs:

Vcs-Darcs: http://darcs.debian.org/darcs/pkg-haskell/haskell-x11
Vcs-Browser: http://darcs.debian.org/cgi-bin/darcsweb.cgi?r=pkg-haskell/haskell-x11

Changelog handling and upload management

Here, we follow the procedure as used by the Debian Perl Group:

So these three states exist:

The package entropy tracker follows these semantics and gives a good overview about packages to be uploaded.