[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#381599: ITP (RFC): python-debian -- python modules to work with Debian-related data formats

Package: wnpp
Severity: wishlist
Owner: "Adeodato Simó" <dato@net.com.org.es>

  Package name    : python-debian
  Description     : python modules to work with Debian-related data formats

So, uhm, hi all. I've had this in mind for about a couple weeks now, and
I kinda like the idea, but I also wanted to run it by some list, so I'm
doing an ITP/RFC. martin f. krafft mentioned yesterday on IRC a similar
idea, which prompted me to write this mail.

I. The trigger

I've recently started two small projects in Python (debcache and
deb2bzr) that deal with quite a bit of Debian-related data . In both,
I've ended up with local copies of two fine python modules (authors CC'ed):

  - debian_support.py by Florian Weimer, available in the secure-testing
    Subversion repository [1].

    The pieces I used were the 'ed-patches support', for updates to
    Packages files with the pdiff method, and the very sweet Version
    class, that implements dpkg --compare-versions in Python (but uses
    python-apt if available).

    [1] svn://svn.debian.org/secure-testing/lib/python/debian_support.py

  - deb822.py by dann frazier and John Wright, which has an IPT of its
    own, #380173. This file provides support for parsing rfc822-like
    files, with extra goodies like support for continuation lines (e.g.
    Description), and whitespace-separated-fields-in-fields (e.g. Files
    section in dsc and changes files).

II. The what, and the possible what

The idea is to have a package where stuff like this can be collected:
python files coming from different sources that are made available for
other packages to depend on. In this scheme, the maintainer does little
more than notice updates and upload updated versions (or lets authors do
that themselves if they so wish).

I'm CC'ing the authors of the two files above to know what they'd think
of their module being incuded in the collection, particularly dann and
John, who were intending to upload it in a separate package.

Another possibility, probably more useful in terms of standardizing a
bit programming Debian stuff in python, would be to have some time spent
in integrating those files that come from different sources into
something consistent, and general enough as to be useful to almost

This, of course, would require that a person with time in their hands,
and preferably Python knowledge and Debian insight, would step up to
"maintain/write parts of" such integrated library. Like always, I guess
all of us would like to use/see such library, but nobody can really
commit time to writing it. There must be lots of code out there, though,
that'd just need to be put together, I'd say.

III. The plan

After writing the above, I have a bit more clear what I'd like to do,
probably with modifications after receiving input on the list:

  * upload soonishly a python-debian package with the two files
    mentioned above, and any others that may get mentioned in the

    These modules would be available in the "debian_bundle" or
    "debian.bundle" namespace: `from debian_bundle import deb822`.

  * if somebody steps up to drive the implementation of that "integrated
    debian python library", let them take it from there, and transfer
    maintenance of the above package if they so wish.

    If not, I'll create a bzr branch somewhere and will wait for code to
    merge, or for inspiration to write something myself. Will probably
    also create a mailing list somewhere, to drop a mail when something
    of interests gets merged in.

    After a while, either the branch will be dead, or there'll be
    something interesting in it. If the latter, uploading that to be
    provided under the "debian" namespace can be discussed, or maybe
    debian_v0 / debian.v0.


Adeodato Simó                                     dato at net.com.org.es
Debian Developer                                  adeodato at debian.org
                              Listening to: Maximilian Hecker - Daylight

Reply to: