Subject: Re: bug#5958: Sort-8.4 bug

From: Eric Blake <[email-masked]>
Date: Mon, 19 Apr 2010 15:30:55 -0600

On 04/18/2010 03:00 AM, [email-masked] wrote:
> Jim Meyering writes:
>>
>> [email-masked] wrote:
>>> Eric Blake writes:
>>>> The syntax 'sort +1' is obsolete.  You are better off rewriting your
>>>
> POSIX abdicated its responsibility to fully document the sort command.

No, sort +1 was properly documented in POSIX 1992; unfortunately, that
old version of POSIX is not available online, and I don't have handy
access to a hardcopy or pdf version.  It was POSIX 2001 that withdrew
documentation for sort +1 as part of deprecating the syntax as obsolete,
while still allowing implementations to support it as a non-POSIX extension.

> This
> makes the traditional documentation (i.e. the V7 man page) the most
> authoritative specification for what "sort +1 -2" means.

I agree that the coreutils documentation (info sort) could do a better
job of documenting the translation from the obsolete syntax to the
current syntax.  If it weren't for copyright questions, I would even
agree that blind copy-and-paste from the link you gave:

http://www.freebsd.org/cgi/man.cgi?query=sort&apropos=0&sektion=0&manpath=SunOS+5.10&format=ascii

would make sense.  But to be on the safe side, the best approach would
be to write the rules by scratch, referring to the coreutils
implementation and nothing external.  Would you care to submit the patch?

> If you won't make
> GNU sort behave correctly, it is time to remove it from general distribution
> and let people go find a working sort command elsewhere.

First, you have to prove that sort is not behaving according to a
particular standards document.  And since POSIX 1992 _did_ document
'sort +1', that means quoting a relevant portion of that document along
with a simple test case demonstrating why you think coreutils does not
comply with that document.  If you can prove that, then we will gladly
fix the bug.

-- 
Eric Blake   [email-masked]    +1-801-349-2682
Libvirt virtualization library http://libvirt.org