Collaborative Repository of Meta-Informations

Summary

The aim of CRMI is to provide a collaboratively maintained repository of meta informations attached to (source) packages. Meta-informations include for example: various upstream URL (website, VCS, bugtracker, devel mailing list, support mailing list), watch files, URL of VCS for Debian maintenance, statistics about bugs, etc.

Rationale

We could extend the debian/control file to include more information but the experience of debian/watch files shows that you can't rely on maintainers to fill them and to keep them up-to-date. Furthermore it's an unnecessary burden for them. Providing those meta-informations is usually a very simple job that could be done by all the Debian contributors which are not interested in packaging.

Those meta-informations will be useful in many different context, see the use cases.

Use Cases

Package Tracking System

packages.debian.org

A user goes to packages.debian.org and check the details of a package.

Adept_installer

DEHS / New upstream version scanner

Design

List of meta-information to handle

Features

Output formats

Web interface

TODO: complete

Mail interface

TODO: complete.

Implementation

Description of meta-info

The list of meta-information that CRMI can handle is described in a global configuration file. For each "field" the configuration file indicates :

Structure of the storage

The directory is structured following the usual pool structure. All files concerning a given source packages are stored in pool/<first-char>/<src-pkg>/. The content of the directory depends on the various backends used to store the meta-informations.

API

TODO: complete.

Outstanding Issues


CategorySpec