New QA scripts
After four days or so of hacking (I need sleep! :) I'm proud to
announce a new version of our version-checking script.
This time the difference is that is has been almost written from
scract, modularised, configurable, and much more easily extended.
Also, one of my main goals was to make it generic enough to share it
with all the other packaging groups in Debian: so far I tested it
successfully with the repositories from the kde, games and java teams.
This time, the data gathering is completely separated from the
reporting, the former is almost complete (it still lacks support for
the /dist pseudo directories in CPAN), but the latter needs a lot of
work. I have just wrote a simple reporting tool that shows a text-only
version of the versions.html page. If somebody wants to write the html
frontend I'd be very pleased :)
The command line programs are fetchdata and qareport, both of them
take a --help option.
Speaking of which, I had the idea to make that page dynamic (the
reporting takes 1/4 second on alioth ATM) and add support for
commentaries, which would be very helpful.
About the internals, each data source is in a separate pm file, and
handles it's own cache file. All of them save the minimal info for
reporting in a common cache called "consolidated". Also there are a
Config module for handling a real configuration file (see
DebianQA.conf-sample), a Common module for logging and stuff and the
Cache module which handles a lot of magic :)
A missing piece could be to properly rename the data structures in the
caches that are somewhat inconsistent. Another would be to properly
document this :)