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

Bug#90989: [proposal] making all control fields multi-line



Package: debian-policy
Version: 3.5.2
Severity: wishlist

Summary:
All tools reading fields in debian/control should expect them to grow to
multiple line (this topic has been discussed a bit a week ago in -policy).

Technical reasoning:
The current policy specifies (3.1) that "Except where otherwise stated only
a single line of data is allowed (...)" ; it then fails to mention any
multiple line field besides Description.
Dependencies and Build-Dependencies can be quite long, which means either 
using a lot of horizontal scrolling, or violating the policy (since lintian
checks for single-lineness of some fields but not those, and dpkg is happy
with that, and the buildds too, it's easy to forget that it's not allowed).

It would make sense to allow the relationship fields to be multi-line;
however, doing so for some fields but not all fields require the tools to
either maintain a list of fields for which such values are allowed, or allow
all fields to be multi-line anyway (even when that doesn't make sense). 

Requiring tools to accept multi-line values everywhere should help keeping
them simpler (actually, a lot of them already seem to do this, anyway).

Issues: 
allowing multiple lines in control fields breaks the use of grep ; however,
grep-dctrl exists to alleviate this problem.

Proposed changes:
[in section 3.1, Syntax of control fields]

-Some fields' values may span several lines; in this case each continuation
-line must start with a space or tab. Any trailing spaces or tabs at the end
-of individual lines of a field value are ignored.
-
-Except where otherwise stated only a single line of data is allowed and
-whitespace is not significant in a field body. 
+All fields' values may span several lines, even when the usual range of
+values does not require more than one line. If a field value has to span
+several lines, each continuation line must start with a space or tab. Any
+trailing spaces or tabs at the end of individual lines of a field value are
+ignored. Use of individual lines longer than 72 characters is discouraged.
+
+Except where otherwise stated, whitespace is not significant in a field
+body.

Note: lintian currently doesn't catch multi-line relationship fields. I'm
submitting an opposite report against it.

Comments ?

	-- Cyrille
-- 
Grumpf.


-- 
Grumpf.




Reply to: