[Debichem-devel] Moving information from tasks files into Vcs
Andreas Tille
andreas at an3as.eu
Thu Jun 7 12:27:24 UTC 2012
[For the not so scientific Blends teams: the intend to work on
scientific publication data has lead to other improvements also for your
maintenence of tasks files ... even if I'm afraid that some teams do not
really maintain their tasks files and possibly do not even know that
these exist.]
Hi,
I intend to get rid of all Publication-* fields in the Blends tasks
files which had some other interesting side effects. While publication
data can very easily be moved to debian/upstream[2] files for just
uploaded packages sligthly more work is needed for not yet packaged
software. To solve this problem I wrote a gatherer for machine-readable
files in Vcs and an UDD[3] table is feeded with this information. This
has two consequences I'm personally consider quite handy:
1. You can remove all additional information from prospective
packages if it is just in Vcs. In case you might have watched
the changes in med-bio task you mighht have noticed my step
by step removals of additional information after checking SVN
status.
2. If a package is not even in Vcs you can actively move the
information from tasks files to Vcs. This minor effort has the
advantage that a part of the actual packaging work is done (well,
if you do not intend to package this software it could simply be
removed from the tasks file - we are not just another list of
software.) The result is that you have a better structured way
to keep the information.
The good thing in this approach is that the duplication of data between
Vcs and tasks files could be stopped which simplifies the maintenance.
Moreover the gatherer for machine-readable files is doing some checks
for mistakes (I was able to fix some broken Vcs URLs for instance).
If you wonder what machine readable files are parsed you could use
the template files in
svn://svn.debian.org/svn/debian-med/trunk/package_template
The following information is parsed:
debian/changelog:
- source name
- Version
- WNPP bug number (if it is closed in the *latest* changelog entry)
- Uploader
debian/control:
- Homepage
- Vcs-Browser (which is verified against the location were the
packaging stuff was really found in the Vcs tree)
- Description
- Maintainer
debian/copyright
- Short name of license which belongs to the section "Files: *"
debian/upstream:
- citation information (if exists)
This is basically the information in a complete entry for a prospective
package. The code for the Vcs parser is available at
svn://svn.debian.org/svn/blends/blends/trunk/machine_readable
It is a pure sh script and parses the following Vcs URLs:
SVNDIRS="debian-med/trunk/packages
debian-science/packages
pkg-scicomp
debichem/unstable
debichem/wnpp
pkg-games/packages
pkg-grass/packages
pkg-multimedia/unstable
demudi"
GITDIRS="debian-med
debian-science/packages
pkg-scicomp
pkg-exppsy
pkg-games
pkg-grass
pkg-multimedia
demudi"
These are dirs on alioth and the script is running on Alioth once per day.
If you know other Vcs locations which might be relevant for your Blend
just tell me (if it is some non-SVN / non-Git repository I might need
some technical help how to extract the relevant files).
Short summary:
1. Maintain your tasks files[1]
2. Add your packages (binary package names!) in Vcs and
the appropriate sections will automagically show up in
the prospective packages section (so the Blends doc[1]
needs some update about the now depreciated Vcs fields)
3. Clean up your task file from now useless stuff if the
packaging is in Vcs.
4. Turn information from tasks files into packaging code
in Vcs if not yet there
5. Move Publication-* fields from tasks files to Vcs
I hope you like these modifications that are intended to simplify
maintenance.
Kind regards
Andreas.
PS: Reply-To set to debian-blends list.
[1] http://blends.alioth.debian.org/blends/ch-sentinel.en.html#s-packageslist
[2] https://wiki.debian.org/UpstreamMetadata
[3] https://wiki.debian.org/UltimateDebianDatabase
--
http://fam-tille.de
More information about the Debichem-devel
mailing list