Differences between revisions 6 and 7
Revision 6 as of 2008-07-22 20:20:35
Size: 6678
Comment: added some information on the resources provided by DEHS
Revision 7 as of 2008-09-01 02:54:08
Size: 6679
Comment: Add backslash, which is necessary
Deletions are marked like this. Additions are marked like this.
Line 42: Line 42:
In other words: uversionmangle=s//+dfsg/ is not correct, dversionmangle=s/+dfsg// is. In other words: uversionmangle=s//+dfsg/ is not correct, dversionmangle=s/\+dfsg// is.

Debian External Health Status (DEHS)

Introduction

DEHS is a service that periodically checks packages for new upstream version. This service is part of Debian QA (Quality Assurance) project.

Query packages status

The DEHS data of a package is available with other QA metrics on [http://packages.qa.debian.org], but it is also available on [http://dehs.alioth.debian.org].

Maintainer report
DEHS is also integrated on the ["qa.debian.org/DDPO"] page of each maintainer. On this view the latest upstream version is visible in a per package basis on the table.
Notify Maintainer

DEHS can send notifications of new upstream version to the 'summary' tag/keyword of the PTS when it finds a new upstream version. ?BR Anyone interested in receiving this kind of notifications please see the [http://www.debian.org/doc/manuals/developers-reference/ch-resources.en.html#s-pkg-tracking-system PTS' documentation] on how to subscribe.

DEHS statistics

DEHS provides a [http://dehs.alioth.debian.org/stats.html statistics page] which show the overall "external status" of Debian over the time.

How DEHS works

Debian packages optionally provides the location where upstream sources are released (this is known as debian/watch file). Using an appropriate tool (like uscan from devscripts), it's possible to automatically check the latest upstream version of a program.

Basically, DEHS is doing this almost every day on the whole [:DebianUnstable:Debian/Unstable] and [:DebianExperimental:Debian/Experimental] archives. (Actually, DEHS checks upstream about every four days, AND every time a new version of a given package is introduced in Debian).

DEHS, also has an intelligent mechanism to guess the location of a program, this is known as the Watch Wizard. It works by extracting the urls from the copyright file of packages without a watch file. Afterwards it makes several attempts to guess the file name and file extension which would be displayed on that url.

Things that everybody should know

Debian repackaging (a.k.a. trust what uscan says)

As of the time of writing (16/02/2008) DEHS additionally strips any 'dfsg', 'debian', and 'ds' it finds on the Debian upstream version. This is done because many watch files do not strip them by themselves so DEHS strips it for them.

Maintainers should not rely on this feature because it may be disabled at any point in the feature. The right way is to use dversionmangle and strip any repackaging (or similar) parts from the Debian upstream version.

However, using uversionmangle to add the 'dfsg' part to the upstream version should not be considered as correct. This is based on the idea that downloading the upstream sources won't make it DFSG-free, so upstream's version is not DFSG-free but Debian's is. In other words: uversionmangle=s//+dfsg/ is not correct, dversionmangle=s/\+dfsg// is.

Besides the above mentioned situation DEHS and uscan should report the same status for a package, if they don't it's probably a bug on DEHS and should be reported (see below on how to report bugs).

Extraction of watch files

DEHS gathers the watch files by downloading the .diff.gz file of a given package proceding by extracting the debian/watch file from it. This means that native and packages which contain the debian/watch file inside the .orig.tar.gz aren't processed by DEHS.

Note that this is not a bug, if the package provides a watch file it shouldn't be a Debian-native package.

Future features

Watch file injection

At the moment it is not possible to inject a watch file on DEHS database. But by request there might be some kind of implementation in the future.

Checking of Homepage and Vcs-browser
It is planned to make DEHS check the validity of the Homepage and Vcs-browser control fields.
Vcs-awareness
some people have rewritten DEHS' functionality so they are able to check for new upstream versions based on the watch and changelog files from their vcs. This functionality should be provided by DEHS (probably by gathering some data thanks to svnbuildstat.d.net)

Bugs, features, etc

Bugs and feature requests are filled against the qa.debian.org pseudo-package on the BTS.

Other misc information

DEHS-aware services (a.k.a. coordinatio-pourposes listing)

Any service (or alike) which uses the data generated by DEHS should *really* be listed here. Please feel free to add an entry yourself.

  • PTS: no_upstream.txt, no_updated.txt
  • DDPO: dehs_qa_experimental.db, dehs_qa_unstable.db
  • DDPO-by-mail: ddpomail.txt
  • BAPASE: ddpomail.txt
  • Lucas' Munin: stats.txt

Note: when making changes to the output formats (and such) only special care will be take for the above listed services. So add your own service!

Public data

The next files are available for anyone to use. But, as clearly stated above, anyone/anything using the following resources should be listed above.

Important: if a file or resource is not listed here but is somehow available do not rely on its format. Rather contact the DEHS maintainers.

  • semicolon-separated files: no_upstream.txt, no_updated.txt, no_watch.txt, stats.txt
  • BDBs with the source package name being the entry key: dehs_qa_unstable.db, dehs_qa_experimental.db

See Also