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 [EMAIL PROTECTED] OOO http://www.madism.org
pgpSYmTnUA9BV.pgp
Description: PGP signature