Dependency relations

Gustavo Niemeyer <[email protected]>
Newsgroups gmane.linux.rpm.metadata
Message-ID <[email protected]>
Hello folks!

I've just had a look at the format of the XML file (that's a shame,
skvidal asked me to do that long ago), and found a small issue I'd
like to discuss with you.

Assuming

  Requires: python >= 2.3, python < 2.4

the current way to describe this is, for example:

  <rpm:requires>
    <rpm:entry name="python" flags="GE">
      <version ver="2.3">
    </rpm:entry>
    <rpm:entry name="python" flags="LT">
      <version ver="2.4">
    </rpm:entry>
  </rpm:requires>

I find the usage for version a little bit curious here, given that
we'll never have two <version> tags inside a single <rpm:entry>.

So, I belive a better representation for the same idea might be
expressed as:

  <rpm:requires>
    <rpm:relation name="python" flags="GE" ver="2.3">
    <rpm:relation name="python" flags="LT" ver="2.4">
  </rpm:requires>

Of course, the same <rpm:relation> notion might be used equaly for
any other dependency relation, such as conflicts or obsoletes.

I've researched information about that in the archive, and found
out the exact moment in which the current scheme was suggested. It
was a message on 05-Dec-2003. The only answer recieved for the
propose was from Daniel Veillard, which suggested something close
to what I presented above. So, I'd like to know if there's still
time to adapt the current scheme for the presented syntax.

Another interesting point: since we're using a text file format,
is there any special reason for using "GE" and "LT" instead of
">=" and "<"?

Thanks!!

-- 
Gustavo Niemeyer
http://niemeyer.net
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.