Re: Shell script cleanups/style changes?
- From
David Kastrup <dak@gnu.org>
- Date
- Aug 2, 2007, 21:42 UTC
- Message-ID
- <857iodzk8n.fsf@lola.goethe.zz>
- In-Reply-To
- <7vsl71tyyq.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <gitster@pobox.com> writes:
Show 8 quoted lines
> David Kastrup <dak@gnu.org> writes:
>
>> Understood. But using ${...#...} and ${...:+...} does not exactly
>> seem to be news in the git code base. Even though we have the
>> claim that Solaris' sh won't deal with the former.
>
> I do not think we have trouble with ${parameter#word}. Much less
> with ${parameter+word}; it has been in /bin/sh forever.Basically this should mean that the proposed cleanups (apart from a forgotten shift I had to add) are tenable.
Given that another poster claimed that Solaris /bin/sh does not support ${parameter#word}, making the suggested changes to git-commit might actually be a good idea: ${parameter#word} is used in half a dozen other (likely less used) utilities in various other places. If this is an overlooked regression, we want to make it non-overlookable while we are still in testing, and git-commit would appear to be the perfect candidate for that...
Depending on the feedback, we can either replace _all_ uses everywhere, or accept it for good.
While I would think it perfectly understandable if you wanted to avoid making an infamous "breaks all of Solaris release", _if_ ${...#...} would indeed be fishy (and I somewhat doubt it), we are already there. I have this cleaned-up version of git-commit.sh on a computer I can't access right now. I'll post the patch tomorrow. Whether you want to apply it to git.git remains at your discretion. I would, however, strongly urge Solaris and potentially other POSIXly impaired users to aplly and test this patch: if it breaks (and it will do so pretty obviously, pretty much being unable to parse any option), then this is _quite_ alarming with regard to existing uses of ${...#...} and would need to get addressed _very_ soon.
Frankly, I doubt that this would have escaped notice so far, however.
-- David Kastrup, Kriemhildstr. 15, 44793 Bochum