Bug#501930: Bug#501927: debian_bundle fails with empty lines containing a space
On Sat, Oct 11, 2008 at 07:05:31PM +0200, Stefano Zacchiroli wrote: Interestingly enough, the Debian policy is ambiguous about what are the paragraph separators in debian/control. Section 5.1 first states that blank lines are separators (which is usually interpreted as \n alone): A control file consists of one or more paragraphs of fields[1]. The paragraphs are separated by blank lines. Then, later on, it seems to allow for other blank characters, mentioning spaces and tabs: Blank lines, or lines consisting only of spaces and tabs, are not allowed within field values or between fields - that would mean a new paragraph. If generic blanks (space, tabs, ...) are the intended separators I've no objection in fixing the bug as you propose. Cloning/reassigning this bug to policy, as it needs to be discussed there as well. Heya, policy maintainers, can you please give us a bit of feedback on your draft stance on this issue? I _think_ I'm going to apply the proposed patch in python-debian, i.e. allow for liberal blank lines as stanza separators, on the basis that: - it is my feeling than that interpretation is the one the policy intended (according to the second paragraph I quoted) - apparently there are out there Packages using liberal separators Still, I would have preferred to have at least an idea of how you plan to clarify this, even if the clarification will come later on. Many thanks in advance. Cheers. -- Stefano Zacchiroli -o- PhD in Computer Science \ PostDoc @ Univ. Paris 7 z...@{upsilon.cc,pps.jussieu.fr,debian.org} -- http://upsilon.cc/zack/ Dietro un grande uomo c'è ..| . |. Et ne m'en veux pas si je te tutoie sempre uno zaino ...| ..: | Je dis tu à tous ceux que j'aime signature.asc Description: Digital signature
Bug#501930: Bug#501927: debian_bundle fails with empty lines containing a space
On Sun, Oct 12, 2008 at 12:10:54AM +0200, Stefano Zacchiroli wrote: On Sat, Oct 11, 2008 at 07:26:59PM +0200, Siegfried Gevatter (RainCT) wrote: Further, PackageFile fails if there is more than one empty line. Eg., http://revu.ubuntuwire.com/revu1-incoming/ampache-0708220100/ampache-3.3.3.5-dfsg/debian/control IMHO those cases should be handled well even if debian-policy didn't allow it, as I've found *hundreds* of files that can't be parsed, and that only on REVU... And robustness can't hurt :). Nope, I'm against such an argument. Agreed: Robustness means rejecting malformed input with an error. In fact, in this specific case, I've been very surprised of not finding in the policy an explicit reference to RFC822 [1]. A lot of implementation I've seen around of Packages/Sources file do use legacy RFC822 libraries, having that practice written in policy would be helpful (note that at that point, whether spaces are accepted or not will depend entirely on the RFC822 standard). What it is worth: RFC822 only allows a single empty line as delimiter between the header and the body of a message: this allows the body to start with an empty line. RFC822 does not document the mbox format. Cheers, -- Bill. ballo...@debian.org Imagine a large red swirl here. -- To UNSUBSCRIBE, email to debian-policy-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#501930: Bug#501927: debian_bundle fails with empty lines containing a space
On Sat, Oct 11, 2008 at 07:26:59PM +0200, Siegfried Gevatter (RainCT) wrote: Further, PackageFile fails if there is more than one empty line. Eg., http://revu.ubuntuwire.com/revu1-incoming/ampache-0708220100/ampache-3.3.3.5-dfsg/debian/control IMHO those cases should be handled well even if debian-policy didn't allow it, as I've found *hundreds* of files that can't be parsed, and that only on REVU... And robustness can't hurt :). Nope, I'm against such an argument. In addition to the technical requirements, you can see the debian-policy as a specification of how to interpret many bits of Debian (and by extension of its derivatives). I've been there while implementing various parts of python-debian, we do have a lot of robustness in many legacy tools, but this is definitely a *problem* when such robustness is not documented. In the long run, without docs, you will end up with various degrees of robustness in different tools. At that point, if one wants to implement something on top of that technical part, it will ends up needing to mimic the behavior of random tools on the basis of their popularity. That is not good. In fact, in this specific case, I've been very surprised of not finding in the policy an explicit reference to RFC822 [1]. A lot of implementation I've seen around of Packages/Sources file do use legacy RFC822 libraries, having that practice written in policy would be helpful (note that at that point, whether spaces are accepted or not will depend entirely on the RFC822 standard). Cheers. [1] here I'm implicitly assuming that RFC822 also describe mailbox files, rather than only mail messages, but I haven't checked that. If it does not substitute RFC822 with the standard defining mailboxes, if any ... -- Stefano Zacchiroli -*- PhD in Computer Science \ PostDoc @ Univ. Paris 7 [EMAIL PROTECTED],pps.jussieu.fr,debian.org} -- http://upsilon.cc/zack/ I'm still an SGML person,this newfangled /\ All one has to do is hit the XML stuff is so ... simplistic -- Manoj \/ right keys at the right time -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]