I've just been bitten by this bug. Once I discovered what it was, I
changed /bin/sh to bash, to get the job at hand done. Then I went to the
maintainer of the script to see if they cared. Someone around changed to
using printf(), which resolved the problems and allowed me to go back to
the faster dash (and it makes a significant difference here). If one of
them had not fixed the script, my solution would've been to fix it
myself.

I think we can all agree, including the Ubuntu maintainers, that perhaps
changing it without more explicit warning was not the best plan. But,
the whole point of standards is that when changing while maintaining
compliance you shouldn't have to expect to give warning. The whole point
is that this *shouldn't* have been a problem, but it is one. It's a
problem to those people who didn't test before deploying, and it's
*caused* by the people who made assumptions in their code (that /bin/sh
is bash). You and I both know the rule about assumptions. Ubuntu didn't
make an assumption. There are rules for what /bin/sh is supposed to do,
and they worked within them.

So, Ubuntu highlighted the problem, though not in the most friendly way.
And you're forced to see a conflict between "how people do things" and
"how things are supposed to be done." But the solution isn't to
continually complain at Ubuntu: The change has been made, and to them
it's 'the right thing to do' for multiple reasons.

To those of you who complain about the economics of the situation,
because of time: Dash saves time. For some of us it can save many hours
per week. And for people like me, who've only encountered one script
that dies, fixed that script, and discovered that now it runs in ~10% of
the time (a fact of significance considering that it's run quite often,
and when it is, I have to wait on the results), perhaps I see the change
as not so bad one. Bashims are bad, Dashims are surely bad too. Isms in
general. If they'd announced it six months ago, then made the change
now, you'd still be complaining because many upstream providers wouldn't
have changed. SOMEONE had to take the step, to say 'standards exist, and
we should follow them', because it's a battle cry Linux has been
shouting at some other people for a long time, and it's pointless if it
doesn't live up to it itself. So, you're not going to win them over by
complaining, because honestly, your complaints boil down to a lot of
whining about how you're more important than the people it *does*
benefit, those people who don't know about shell scripts but gain from
the speed improvement. Your half hour cost learning how to change to
bash, vs the many, many more little savings here and there that *do* add
up.

Just accept that the change has been made. They rejected the bug report,
which means the *decision* has been made. Pestering them about it is
just going to make them angry, and angry people get resentful, and are
much less likely to change.

Either come up with rational arguments for doing it (rational beyond
'everybody else does it so you should to' style logic), offer up a
better alternative, or accept that you don't get to make decisions about
where Ubuntu goes, and get about fixing some non-compliant scripts.

-- 
Script that are using bash could be broken with the new symlink
https://bugs.launchpad.net/bugs/61463
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to