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

Re: dash bug which is affecting release goal

On Sun, Feb 10, 2008 at 11:53:35PM +0000, Thomas Bushnell BSG wrote:
> On Sun, 2008-02-10 at 20:34 +0100, Pierre Habouzit wrote:
> > On Sun, Feb 10, 2008 at 07:17:58PM +0000, Thomas Bushnell BSG wrote:
> > > 
> > > Or are you saying that it's ok for dash to override random Debian
> > > commands in incompatible ways?
> > 
> >   Well, let's drop bash right away then !
> > 
> > $ bash -c 'type test'; zsh -c 'type test'; posh -c 'type test'; dash -c 'type test'
> > test is a shell builtin
> > test is a shell builtin
> > posh: type: not found
> > test is a shell builtin
> Right.  The problem is that Debian policy on the question is incoherent.

  Well, policy describes usage, and usage (I think) is to assume that
/bin/sh gives you a decently recent POSIX environment (I said POSIX not
GNU) and that if you rely on GNU extensions of tools (like echo -e) you
should call those commands using their full path wich can be done using
really simple tricks like:

  echo() { /bin/echo "$@" }

  Policy has absolutely no valid reasons to dictate to shells how they
are implemented, and it's a perfectly sane thing for an efficient enough
shell to implement echo, test, [, true, false and probably which as
shell builtins given their pervasive use in shell idioms.

  If the policy mandates anything else, then the policy is definitely
bogus and should be fixed, and there is nothing like "a dash bug
affecting a release goal". There are two "test" related dash bugs, one
is completely cornercase: `test \( ! -e \)` and the other is a bit more
serious though unlikely to generate an issue in the general case (the
problem with "[ '!' != ' ' ]". And after all, there is still some months
before we release to fix them instead of talking endlessly.

·O·  Pierre Habouzit
··O                                                madcoder@debian.org
OOO                                                http://www.madism.org

Attachment: pgpR4ITz4b5AG.pgp
Description: PGP signature

Reply to: