deb822: support for "parsed" dependencies

Adeodato Simó dato at net.com.org.es
Fri Jun 20 17:21:14 UTC 2008


* Stefano Zacchiroli [Thu, 19 Jun 2008 22:14:05 +0200]:

> There is now an example (called "depgraph", which was actually my motif
> to develop this) and a test (which fails, bug yet to be fixed).

Heh:

  http://git.debian.org/?p=tools-release/release.git;a=blob;f=scripts/dep-graph;h=7ad1c0ad164ff38ad890a7860c9d50dbe82479e8;hb=HEAD

Which reminds me to ask: do you know about apt_pkg.ParseDepends? It does
something similar:

  >>> pprint.pprint(apt_pkg.ParseDepends(p.Section['Depends']))
  [[('dcoprss', '4:3.5.9-2', '>=')],
   [('kdenetwork-kfile-plugins', '4:3.5.9-2', '>=')],
   [('kdict', '4:3.5.9-2', '>=')],
   [('kdnssd', '4:3.5.9-2', '>=')],
   [('kget', '4:3.5.9-2', '>=')],
   [('knewsticker', '4:3.5.9-2', '>=')],
   [('kopete', '4:3.5.9-2', '>=')],
   [('kpf', '4:3.5.9-2', '>=')],
   [('kppp', '4:3.5.9-2', '>=')],
   [('krdc', '4:3.5.9-2', '>=')],
   [('krfb', '4:3.5.9-2', '>=')],
   [('ksirc', '4:3.5.9-2', '>=')],
   [('kwifimanager', '4:3.5.9-2', '>=')],
   [('librss1', '4:3.5.9-2', '>=')]]

So it returns a 3-tuple instead of a dict, which may or may not be more
convenient, I'm just curious if you knew about it and designed it
differently on purpose.

As an aside, something seems to be broken on your branch at the moment?:

  >>> x['Depends']
  'dcoprss (>= 4:3.5.9-2), kdenetwork-kfile-plugins (>= 4:3.5.9-2), kdict (>= 4:3.5.9-2), kdnssd (>= 4:3.5.9-2), kget (>= 4:3.5.9-2), knewsticker (>= 4:3.5.9-2), kopete (>= 4:3.5.9-2), kpf (>= 4:3.5.9-2), kppp (>= 4:3.5.9-2), krdc (>= 4:3.5.9-2), krfb (>= 4:3.5.9-2), ksirc (>= 4:3.5.9-2), kwifimanager (>= 4:3.5.9-2), librss1 (>= 4:3.5.9-2)'
  
  >>> pprint.pprint(x.relations['depends'])
  [[{'name': 'dcoprss', 'version': None}],
   [{'name': 'kdenetwork-kfile-plugins', 'version': None}],
   [{'name': 'kdict', 'version': None}],
   [{'name': 'kdnssd', 'version': None}],
   [{'name': 'kget', 'version': None}],
   [{'name': 'knewsticker', 'version': None}],
   [{'name': 'kopete', 'version': None}],
   [{'name': 'kpf', 'version': None}],
   [{'name': 'kppp', 'version': None}],
   [{'name': 'krdc', 'version': None}],
   [{'name': 'krfb', 'version': None}],
   [{'name': 'ksirc', 'version': None}],
   [{'name': 'kwifimanager', 'version': None}],
   [{'name': 'librss1', 'version': None}]]

Cheers,

-- 
Adeodato Simó                                     dato at net.com.org.es
Debian Developer                                  adeodato at debian.org
 
                             Listening to: Alanis Morissette - The couch




More information about the pkg-python-debian-discuss mailing list